mirror of
https://github.com/BlizD/Tasks.git
synced 2025-03-19 21:07:53 +02:00
Merge pull request #223 from d-hurricane/feature212
Реализация кэширования статистики взаимодействий по задачам
This commit is contained in:
commit
3ff097065b
@ -2085,6 +2085,96 @@
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="418d95cf-fb72-41c3-9887-0cb1471e2fe0">
|
||||
<Properties>
|
||||
<Name>КоличествоЗадачЧекЛиста</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество задач чек-листа</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
<v8:Digits>10</v8:Digits>
|
||||
<v8:FractionDigits>0</v8:FractionDigits>
|
||||
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="332b47ad-4765-4af4-8b02-b6c616b1c185">
|
||||
<Properties>
|
||||
<Name>КоличествоВыполненныхЗадачЧекЛиста</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество выполененных задач чек-листа</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
<v8:Digits>10</v8:Digits>
|
||||
<v8:FractionDigits>0</v8:FractionDigits>
|
||||
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<TabularSection uuid="0d958c66-1f6d-4b4a-a9ce-2a378e7394ad">
|
||||
<InternalInfo>
|
||||
<xr:GeneratedType name="CatalogTabularSection.узЗадачи.История" category="TabularSection">
|
||||
|
@ -1,5 +1,14 @@
|
||||
|
||||
Процедура ПередЗаписью(Отказ)
|
||||
|
||||
//+ УрянскийД 2020-06-22 (начало)
|
||||
Если ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(ЭтотОбъект);
|
||||
//- УрянскийД 2020-06-22 (окончание)
|
||||
|
||||
Если Отказ Тогда
|
||||
Возврат;
|
||||
Конецесли;
|
||||
@ -102,6 +111,11 @@
|
||||
|
||||
ДополнительныеСвойства.Вставить("СобытияВИстории",СобытияВИстории);
|
||||
|
||||
//+ УрянскийД 2020-06-22 (начало)
|
||||
КоличествоЗадачЧекЛиста = ЭтотОбъект.Комментарии.Количество();
|
||||
КоличествоВыполненныхЗадачЧекЛиста = ЭтотОбъект.Комментарии.Итог("Выполнено");
|
||||
//- УрянскийД 2020-06-22 (окончание)
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЗаполнитьСтатусЗадачиЕслиОнНеЗаполнен(Отказ)
|
||||
@ -1141,6 +1155,13 @@
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ПриЗаписи(Отказ)
|
||||
|
||||
//***АиБ*** УрянскийД 2020-06-22 (начало)
|
||||
Если ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
//***АиБ*** УрянскийД 2020-06-22 (окончание)
|
||||
|
||||
Если ДополнительныеСвойства.Свойство("узЭтоОбработка") Тогда
|
||||
Возврат;
|
||||
Конецесли;
|
||||
@ -1157,6 +1178,7 @@
|
||||
//- ##122 Дзеса Ігор (capitoshko) 21.01.2019
|
||||
|
||||
ДополнительныеСвойства.Удалить("СобытияВИстории");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура СформироватьЗаписиВРССвязанныеЗадачи(Отказ) Экспорт
|
||||
|
@ -8,6 +8,11 @@
|
||||
|
||||
&НаСервере
|
||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||
|
||||
//+ УрянскийД 2020-06-22 (начало)
|
||||
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(Объект, ЭтотОбъект);
|
||||
//- УрянскийД 2020-06-22 (окончание)
|
||||
|
||||
// СтандартныеПодсистемы.ВерсионированиеОбъектов
|
||||
ВерсионированиеОбъектов.ПриСозданииНаСервере(ЭтотОбъект);
|
||||
// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов
|
||||
|
@ -1,7 +1,13 @@
|
||||
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
||||
Описание.Имя = "УправлениеЗадачами";
|
||||
Описание.Версия = "1.0.5.002";
|
||||
// Требуется библиотека стандартных подсистем.
|
||||
Описание.Версия = "1.0.5.003";
|
||||
|
||||
//+ УрянскийД 2020-06-22 (начало)
|
||||
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
|
||||
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "1.0.5.003";
|
||||
//- УрянскийД 2020-06-22 (окончание)
|
||||
|
||||
// Требуется библиотека стандартных подсистем.
|
||||
Описание.ТребуемыеПодсистемы.Добавить("СтандартныеПодсистемы");
|
||||
КонецПроцедуры
|
||||
Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт
|
||||
@ -239,7 +245,45 @@
|
||||
Обработчик.НачальноеЗаполнение = Ложь;
|
||||
Обработчик.Процедура = "узОбновлениеИнформационнойБазы.ОбновлениеНаВерсию_1_0_4_034";
|
||||
Обработчик.ОбщиеДанные = Истина;
|
||||
Обработчик.Комментарий = "Обновление на версию 1.0.4.034";
|
||||
Обработчик.Комментарий = "Обновление на версию 1.0.4.034";
|
||||
|
||||
//+ УрянскийД 2020-06-22 (начало)
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "1.0.5.003";
|
||||
Обработчик.Процедура = "узОбновлениеИнформационнойБазы.ОбновлениеИтоговЧекЛистаОперативное";
|
||||
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "1.0.5.003";
|
||||
Обработчик.Процедура = "узОбновлениеИнформационнойБазы.ОбновлениеИтоговЧекЛистаВФоне";
|
||||
Обработчик.Идентификатор = Новый УникальныйИдентификатор("0c980bcc-9483-4a76-b15b-80b6dac3dbf4");
|
||||
Обработчик.Комментарий = НСтр("ru = 'Заполняет общее количество и количество выполненных подзадач чек-листа.'");
|
||||
Обработчик.РежимВыполнения = "Отложенно";
|
||||
Обработчик.ОчередьОтложеннойОбработки = 1;
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "узОбновлениеИнформационнойБазы.ЗарегистрироватьДанныеКОбновлениюИтоговЧекЛиста";
|
||||
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
Обработчик.ЧитаемыеОбъекты = "Справочник.узЗадачи";
|
||||
Обработчик.ИзменяемыеОбъекты = "Справочник.узЗадачи";
|
||||
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "1.0.5.003";
|
||||
Обработчик.Процедура = "узОбновлениеИнформационнойБазы.ОбновлениеСостоянийВзаимодействияПоЗадачамОперативное";
|
||||
|
||||
Обработчик = Обработчики.Добавить();
|
||||
Обработчик.Версия = "1.0.5.003";
|
||||
Обработчик.Процедура = "узОбновлениеИнформационнойБазы.ОбновлениеСостоянийВзаимодействияПоЗадачамВФоне";
|
||||
Обработчик.Идентификатор = Новый УникальныйИдентификатор("454eb93c-3fc1-45bf-99c6-1045a4f18142");
|
||||
Обработчик.Комментарий = НСтр("ru = 'Заполняет сводную информацию о почтовых взаимодействиях по задачам.'");
|
||||
Обработчик.РежимВыполнения = "Отложенно";
|
||||
Обработчик.ОчередьОтложеннойОбработки = 2;
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "узОбновлениеИнформационнойБазы.ЗарегистрироватьДанныеКОбновлениюВзаимодействийПоЗадачам";
|
||||
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
Обработчик.ИзменяемыеОбъекты = "РегистрСведений.узСостояниеВзаимодействийПоЗадачам";
|
||||
Обработчик.ЧитаемыеОбъекты = "Справочник.узЗадачиПрисоединенныеФайлы,"
|
||||
+ "Документ.ЭлектронноеПисьмоВходящее,"
|
||||
+ "Документ.ЭлектронноеПисьмоИсходящее,"
|
||||
+ "Справочник.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы,"
|
||||
+ "Справочник.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы";;
|
||||
//- УрянскийД 2020-06-22 (окончание)
|
||||
|
||||
КонецПроцедуры
|
||||
Процедура ПередОбновлениемИнформационнойБазы() Экспорт
|
||||
@ -1217,6 +1261,377 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// УрянскийД 2020-06-22
|
||||
Процедура ОбновлениеИтоговЧекЛистаОперативное() Экспорт
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 1000
|
||||
| ЧекЛист.Ссылка КАК Ссылка
|
||||
|ИЗ
|
||||
| Справочник.узЗадачи.Комментарии КАК ЧекЛист
|
||||
|
|
||||
|УПОРЯДОЧИТЬ ПО
|
||||
| ЧекЛист.Ссылка.ДатаСоздания УБЫВ";
|
||||
|
||||
ВыборкаЗадач = Запрос.Выполнить().Выбрать();
|
||||
|
||||
Пока ВыборкаЗадач.Следующий() Цикл
|
||||
|
||||
НачатьТранзакцию();
|
||||
|
||||
Попытка
|
||||
|
||||
Блокировка = Новый БлокировкаДанных;
|
||||
ЭлементБлокировки = Блокировка.Добавить("Справочник.узЗадачи");
|
||||
ЭлементБлокировки.УстановитьЗначение("Ссылка", ВыборкаЗадач.Ссылка);
|
||||
Блокировка.Заблокировать();
|
||||
|
||||
ЗадачаОбъект = ВыборкаЗадач.Ссылка.ПолучитьОбъект();
|
||||
|
||||
Если ЗадачаОбъект = Неопределено Тогда
|
||||
ОтменитьТранзакцию();
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
КоличествоПодзадач = ЗадачаОбъект.Комментарии.Количество();
|
||||
КоличествоВыполненных = ЗадачаОбъект.Комментарии.Итог("Выполнено");
|
||||
|
||||
Если ЗадачаОбъект.КоличествоЗадачЧекЛиста <> КоличествоПодзадач Тогда
|
||||
ЗадачаОбъект.КоличествоЗадачЧекЛиста = КоличествоПодзадач;
|
||||
КонецЕсли;
|
||||
Если ЗадачаОбъект.КоличествоВыполненныхЗадачЧекЛиста <> КоличествоВыполненных Тогда
|
||||
ЗадачаОбъект.КоличествоВыполненныхЗадачЧекЛиста = КоличествоВыполненных;
|
||||
КонецЕсли;
|
||||
|
||||
Если ЗадачаОбъект.Модифицированность() Тогда
|
||||
ОбновлениеИнформационнойБазы.ЗаписатьДанные(ЗадачаОбъект);
|
||||
КонецЕсли;
|
||||
|
||||
ЗафиксироватьТранзакцию();
|
||||
|
||||
Исключение
|
||||
|
||||
ОтменитьТранзакцию();
|
||||
|
||||
ТекстСообщения = НСтр("ru = 'Процедуре %ИмяПроцедуры% не удалось обработать %ИмяОбъекта%: %Ссылка% по причине: %Причина%'");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ИмяПроцедуры%", "узОбновлениеИнформационнойБазы.ОбновлениеИтоговЧекЛистаОперативное");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ИмяОбъекта%", ВыборкаЗадач.Ссылка.Метаданные().ПолноеИмя());
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Ссылка%", ВыборкаЗадач.Ссылка);
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||
|
||||
ВызватьИсключение ТекстСообщения;
|
||||
|
||||
КонецПопытки;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// УрянскийД 2020-06-22
|
||||
Процедура ОбновлениеИтоговЧекЛистаВФоне(ПараметрыОбновления) Экспорт
|
||||
|
||||
ПолноеИмяОбъекта = "Справочник.узЗадачи";
|
||||
|
||||
ОбъектовОбработано = 0;
|
||||
ПроблемныхОбъектов = 0;
|
||||
ОбработкаЗавершена = Истина;
|
||||
|
||||
ВыборкаЗадач = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(ПараметрыОбновления.Очередь, ПолноеИмяОбъекта);
|
||||
|
||||
Пока ВыборкаЗадач.Следующий() Цикл
|
||||
|
||||
НачатьТранзакцию();
|
||||
|
||||
Попытка
|
||||
|
||||
Блокировка = Новый БлокировкаДанных;
|
||||
ЭлементБлокировки = Блокировка.Добавить(ПолноеИмяОбъекта);
|
||||
ЭлементБлокировки.УстановитьЗначение("Ссылка", ВыборкаЗадач.Ссылка);
|
||||
Блокировка.Заблокировать();
|
||||
|
||||
ЗадачаОбъект = ВыборкаЗадач.Ссылка.ПолучитьОбъект();
|
||||
|
||||
Если ЗадачаОбъект = Неопределено Тогда
|
||||
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ВыборкаЗадач.Ссылка);
|
||||
ЗафиксироватьТранзакцию();
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
КоличествоПодзадач = ЗадачаОбъект.Комментарии.Количество();
|
||||
КоличествоВыполненных = ЗадачаОбъект.Комментарии.Итог("Выполнено");
|
||||
|
||||
Если ЗадачаОбъект.КоличествоЗадачЧекЛиста <> КоличествоПодзадач Тогда
|
||||
ЗадачаОбъект.КоличествоЗадачЧекЛиста = КоличествоПодзадач;
|
||||
КонецЕсли;
|
||||
Если ЗадачаОбъект.КоличествоВыполненныхЗадачЧекЛиста <> КоличествоВыполненных Тогда
|
||||
ЗадачаОбъект.КоличествоВыполненныхЗадачЧекЛиста = КоличествоВыполненных;
|
||||
КонецЕсли;
|
||||
|
||||
Если ЗадачаОбъект.Модифицированность() Тогда
|
||||
ОбновлениеИнформационнойБазы.ЗаписатьДанные(ЗадачаОбъект);
|
||||
Иначе
|
||||
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ЗадачаОбъект);
|
||||
КонецЕсли;
|
||||
|
||||
ЗафиксироватьТранзакцию();
|
||||
|
||||
ОбъектовОбработано = ОбъектовОбработано + 1;
|
||||
|
||||
Исключение
|
||||
|
||||
ОтменитьТранзакцию();
|
||||
|
||||
ПроблемныхОбъектов = ПроблемныхОбъектов + 1;
|
||||
|
||||
ТекстСообщения = НСтр("ru = 'Не удалось обработать %ИмяОбъекта%: %Ссылка% по причине: %Причина%'");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ИмяОбъекта%", ПолноеИмяОбъекта);
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Ссылка%", ВыборкаЗадач.Ссылка);
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||
|
||||
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(),
|
||||
УровеньЖурналаРегистрации.Предупреждение,
|
||||
ВыборкаЗадач.Ссылка.Метаданные(),
|
||||
ВыборкаЗадач.Ссылка,
|
||||
ТекстСообщения);
|
||||
|
||||
КонецПопытки;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Если Не ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(ПараметрыОбновления.Очередь, ПолноеИмяОбъекта) Тогда
|
||||
ОбработкаЗавершена = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда
|
||||
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Процедуре %1 не удалось обработать задачи (пропущены): %2'"),
|
||||
"узОбновлениеИнформационнойБазы.ОбновлениеИтоговЧекЛистаВФоне",
|
||||
ПроблемныхОбъектов);
|
||||
ВызватьИсключение ТекстСообщения;
|
||||
Иначе
|
||||
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Процедура %1 обработала очередную порцию задач: %2'"),
|
||||
"узОбновлениеИнформационнойБазы.ОбновлениеИтоговЧекЛистаВФоне",
|
||||
ОбъектовОбработано);
|
||||
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(),
|
||||
УровеньЖурналаРегистрации.Информация,
|
||||
, ,
|
||||
ТекстСообщения);
|
||||
КонецЕсли;
|
||||
|
||||
ПараметрыОбновления.ОбработкаЗавершена = ОбработкаЗавершена;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// УрянскийД 2020-06-22
|
||||
Процедура ЗарегистрироватьДанныеКОбновлениюИтоговЧекЛиста(ПараметрыОбновления) Экспорт
|
||||
|
||||
РазмерПорции = 1000;
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| ЧекЛист.Ссылка КАК Ссылка
|
||||
|ИЗ
|
||||
| Справочник.узЗадачи.Комментарии КАК ЧекЛист
|
||||
|ГДЕ
|
||||
| ЧекЛист.Ссылка > &Граница
|
||||
| И ЧекЛист.НомерСтроки = 1
|
||||
|
|
||||
|УПОРЯДОЧИТЬ ПО
|
||||
| ЧекЛист.Ссылка";
|
||||
|
||||
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ВЫБРАТЬ", "ВЫБРАТЬ ПЕРВЫЕ " + Формат(РазмерПорции, "ЧН=; ЧГ="));
|
||||
Запрос.УстановитьПараметр("Граница", Справочники.узЗадачи.ПустаяСсылка());
|
||||
|
||||
ЕстьДанныеДляОбработки = Истина;
|
||||
|
||||
Пока ЕстьДанныеДляОбработки Цикл
|
||||
|
||||
МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку(0);
|
||||
|
||||
Если ЗначениеЗаполнено(МассивСсылок) Тогда
|
||||
|
||||
ОбновлениеИнформационнойБазы.ОтметитьКОбработке(ПараметрыОбновления, МассивСсылок);
|
||||
|
||||
Запрос.УстановитьПараметр("Граница", МассивСсылок[МассивСсылок.ВГраница()]);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
ЕстьДанныеДляОбработки = Не (МассивСсылок.Количество() < РазмерПорции);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// УрянскийД 2020-06-22
|
||||
Процедура ОбновлениеСостоянийВзаимодействияПоЗадачамОперативное() Экспорт
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ ПЕРВЫЕ 1000
|
||||
| узЗадачи.Ссылка КАК Ссылка
|
||||
|ИЗ
|
||||
| Справочник.узЗадачи КАК узЗадачи
|
||||
|
|
||||
|УПОРЯДОЧИТЬ ПО
|
||||
| узЗадачи.ДатаСоздания УБЫВ";
|
||||
|
||||
Результат = Запрос.Выполнить();
|
||||
МассивСсылок = Результат.Выгрузить().ВыгрузитьКолонку(0);
|
||||
|
||||
НачатьТранзакцию();
|
||||
|
||||
Попытка
|
||||
|
||||
Блокировка = Новый БлокировкаДанных;
|
||||
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.узСостояниеВзаимодействийПоЗадачам");
|
||||
ЭлементБлокировки.ИсточникДанных = Результат;
|
||||
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Задача", "Ссылка");
|
||||
Блокировка.Заблокировать();
|
||||
|
||||
РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.ОтразитьСостояниеЗадачи(МассивСсылок, Ложь);
|
||||
|
||||
ЗафиксироватьТранзакцию();
|
||||
|
||||
Исключение
|
||||
|
||||
ОтменитьТранзакцию();
|
||||
|
||||
ТекстСообщения = НСтр("ru = 'Процедуре %ИмяПроцедуры% не удалось обработать задачи по причине: %Причина%'");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ИмяПроцедуры%", "узОбновлениеИнформационнойБазы.ОбновлениеСостоянийВзаимодействияПоЗадачамОперативное");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||
|
||||
ВызватьИсключение ТекстСообщения;
|
||||
|
||||
КонецПопытки;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// УрянскийД 2020-06-22
|
||||
Процедура ОбновлениеСостоянийВзаимодействияПоЗадачамВФоне(ПараметрыОбновления) Экспорт
|
||||
|
||||
ПолноеИмяОбъекта = "Справочник.узЗадачи";
|
||||
|
||||
ОбъектовОбработано = 0;
|
||||
ПроблемныхОбъектов = 0;
|
||||
ОбработкаЗавершена = Истина;
|
||||
|
||||
ДополнительныеПараметры = ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки();
|
||||
ДополнительныеПараметры.МаксимумВыборки = 1000;
|
||||
|
||||
ВыборкаЗадач = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(ПараметрыОбновления.Очередь,
|
||||
ПолноеИмяОбъекта,
|
||||
ДополнительныеПараметры);
|
||||
|
||||
МассивСсылок = Новый Массив;
|
||||
|
||||
НачатьТранзакцию();
|
||||
|
||||
Попытка
|
||||
|
||||
Пока ВыборкаЗадач.Следующий() Цикл
|
||||
МассивСсылок.Добавить(ВыборкаЗадач.Ссылка);
|
||||
КонецЦикла;
|
||||
|
||||
РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.ОтразитьСостояниеЗадачи(
|
||||
МассивСсылок,
|
||||
Ложь,
|
||||
ПараметрыОбновления.Очередь);
|
||||
|
||||
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(МассивСсылок);
|
||||
|
||||
ЗафиксироватьТранзакцию();
|
||||
|
||||
ОбъектовОбработано = ОбъектовОбработано + МассивСсылок.Количество();
|
||||
|
||||
Исключение
|
||||
|
||||
ОтменитьТранзакцию();
|
||||
|
||||
ПроблемныхОбъектов = ПроблемныхОбъектов + МассивСсылок.Количество();
|
||||
|
||||
МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъекта);
|
||||
|
||||
ТекстСообщения = НСтр("ru = 'Не удалось обработать %ИмяОбъекта% по причине: %Причина%'");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ИмяОбъекта%", ПолноеИмяОбъекта);
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||
|
||||
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(),
|
||||
УровеньЖурналаРегистрации.Предупреждение,
|
||||
МетаданныеОбъекта,
|
||||
,
|
||||
ТекстСообщения);
|
||||
|
||||
КонецПопытки;
|
||||
|
||||
|
||||
Если Не ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(ПараметрыОбновления.Очередь, ПолноеИмяОбъекта) Тогда
|
||||
ОбработкаЗавершена = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда
|
||||
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Процедуре %1 не удалось обработать задачи (пропущены): %2'"),
|
||||
"узОбновлениеИнформационнойБазы.ОбновлениеСостоянийВзаимодействияПоЗадачамВФоне",
|
||||
ПроблемныхОбъектов);
|
||||
ВызватьИсключение ТекстСообщения;
|
||||
Иначе
|
||||
ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
НСтр("ru = 'Процедура %1 обработала очередную порцию задач: %2'"),
|
||||
"узОбновлениеИнформационнойБазы.ОбновлениеСостоянийВзаимодействияПоЗадачамВФоне",
|
||||
ОбъектовОбработано);
|
||||
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(),
|
||||
УровеньЖурналаРегистрации.Информация,
|
||||
, ,
|
||||
ТекстСообщения);
|
||||
КонецЕсли;
|
||||
|
||||
ПараметрыОбновления.ОбработкаЗавершена = ОбработкаЗавершена;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// УрянскийД 2020-06-22
|
||||
Процедура ЗарегистрироватьДанныеКОбновлениюВзаимодействийПоЗадачам(ПараметрыОбновления) Экспорт
|
||||
|
||||
РазмерПорции = 1000;
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| Задачи.Ссылка КАК Ссылка
|
||||
|ИЗ
|
||||
| Справочник.узЗадачи КАК Задачи
|
||||
|ГДЕ
|
||||
| Задачи.Ссылка > &Граница
|
||||
|
|
||||
|УПОРЯДОЧИТЬ ПО
|
||||
| Задачи.Ссылка";
|
||||
|
||||
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ВЫБРАТЬ", "ВЫБРАТЬ ПЕРВЫЕ " + Формат(РазмерПорции, "ЧН=; ЧГ="));
|
||||
Запрос.УстановитьПараметр("Граница", Справочники.узЗадачи.ПустаяСсылка());
|
||||
|
||||
ЕстьДанныеДляОбработки = Истина;
|
||||
|
||||
Пока ЕстьДанныеДляОбработки Цикл
|
||||
|
||||
МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку(0);
|
||||
|
||||
Если ЗначениеЗаполнено(МассивСсылок) Тогда
|
||||
|
||||
ОбновлениеИнформационнойБазы.ОтметитьКОбработке(ПараметрыОбновления, МассивСсылок);
|
||||
|
||||
Запрос.УстановитьПараметр("Граница", МассивСсылок[МассивСсылок.ВГраница()]);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
ЕстьДанныеДляОбработки = Не (МассивСсылок.Количество() < РазмерПорции);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
//#Область ПрограммныйИнтерфейс
|
||||
|
||||
|
@ -1136,3 +1136,126 @@
|
||||
ПолеВвода.Вид = ВидПоляФормы.ПолеВвода;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
//+ #212 Урянский Д.В. 2020-03-08
|
||||
Процедура ОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиФайла(Источник, Отказ) Экспорт
|
||||
|
||||
Если Источник.ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
|
||||
Если ТипЗнч(Источник.ВладелецФайла) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||
|
||||
РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.ОтразитьСостояниеЗадачи(Источник.ВладелецФайла, Отказ);
|
||||
|
||||
ИначеЕсли ВзаимодействияКлиентСервер.ЯвляетсяПрисоединеннымФайломВзаимодействий(Источник.Ссылка) Тогда
|
||||
|
||||
ПредметВзаимодействия = Взаимодействия.ПолучитьЗначениеПредмета(Источник.ВладелецФайла);
|
||||
|
||||
Если ТипЗнч(ПредметВзаимодействия) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||
|
||||
РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.ОтразитьСостояниеЗадачи(ПредметВзаимодействия, Отказ);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
//+ #212 Урянский Д.В. 2020-03-08
|
||||
Процедура ОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПисьма(Источник, Отказ) Экспорт
|
||||
|
||||
Если Источник.ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Источник.ЭтоНовый() Тогда
|
||||
Возврат; // предмет письма (задача) еще не записан
|
||||
КонецЕсли;
|
||||
|
||||
Если ТипЗнч(Источник) = Тип("ДокументОбъект.ЭлектронноеПисьмоВходящее") Тогда
|
||||
ДатаВзаимодействия = Источник.ДатаПолучения;
|
||||
ИначеЕсли ТипЗнч(Источник) = Тип("ДокументОбъект.ЭлектронноеПисьмоИсходящее") Тогда
|
||||
ДатаВзаимодействия = Источник.ДатаОтправления;
|
||||
Иначе
|
||||
ДатаВзаимодействия = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Если Не ЗначениеЗаполнено(ДатаВзаимодействия) Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
|
||||
Предмет = Взаимодействия.ПолучитьЗначениеПредмета(Источник.Ссылка);
|
||||
|
||||
Если ТипЗнч(Предмет) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||
РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.ОтразитьСостояниеЗадачи(Предмет, Отказ);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
//+ #212 Урянский Д.В. 2020-03-08
|
||||
Процедура ОбновитьСостояниеВзаимодействияПоЗадачеПередЗаписьюПредмета(Источник, Отказ, Замещение) Экспорт
|
||||
|
||||
Если Источник.ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Источник.Отбор.Количество() = 0 Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
|
||||
Взаимодействие = Источник.Отбор.Взаимодействие.Значение;
|
||||
Предмет = Взаимодействия.ПолучитьЗначениеПредмета(Взаимодействие);
|
||||
|
||||
Если ТипЗнч(Предмет) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||
Источник.ДополнительныеСвойства.Вставить("ЗадачаДляОбновленияСостояния", Предмет);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
//+ #212 Урянский Д.В. 2020-03-08
|
||||
Процедура ОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПредмета(Источник, Отказ, Замещение) Экспорт
|
||||
|
||||
Если Источник.ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Источник.Отбор.Количество() = 0 Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
МассивЗадач = Новый Массив;
|
||||
|
||||
Для каждого Запись Из Источник Цикл
|
||||
Если ТипЗнч(Запись.Предмет) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||
МассивЗадач.Добавить(Запись.Предмет);
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
СтараяЗадача = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Источник.ДополнительныеСвойства, "ЗадачаДляОбновленияСостояния");
|
||||
|
||||
Если ЗначениеЗаполнено(СтараяЗадача) Тогда
|
||||
|
||||
ИндексЗадачи = МассивЗадач.Найти(СтараяЗадача);
|
||||
Если ИндексЗадачи = Неопределено Тогда
|
||||
// Изменили предмет взаимодействия: нужен расчет как для нового, так и для старого предмета.
|
||||
МассивЗадач.Добавить(СтараяЗадача);
|
||||
Иначе
|
||||
// Предмет взаимодействия не менялся: расчет не нужен.
|
||||
МассивЗадач.Удалить(ИндексЗадачи);
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если МассивЗадач.Количество() <> 0 Тогда
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.ОтразитьСостояниеЗадачи(МассивЗадач, Отказ);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
@ -49,7 +49,7 @@
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</xr:Item>
|
||||
</DefaultRoles>
|
||||
<Vendor>Управление задачами</Vendor>
|
||||
<Version>1.0.5.002</Version>
|
||||
<Version>1.0.5.003</Version>
|
||||
<UpdateCatalogAddress/>
|
||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||
<UseManagedFormInOrdinaryApplication>true</UseManagedFormInOrdinaryApplication>
|
||||
@ -1089,6 +1089,10 @@
|
||||
<EventSubscription>СвойстваПередУдалениемСсылочногоОбъекта</EventSubscription>
|
||||
<EventSubscription>СкопироватьРеквизитыВерсииФайловВФайл</EventSubscription>
|
||||
<EventSubscription>СоздатьПредопределенныеПапкиЭлектронныхПисем</EventSubscription>
|
||||
<EventSubscription>узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиФайла</EventSubscription>
|
||||
<EventSubscription>узОбновитьСостояниеВзаимодействияПоЗадачеПередЗаписьюПредмета</EventSubscription>
|
||||
<EventSubscription>узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПисьма</EventSubscription>
|
||||
<EventSubscription>узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПредмета</EventSubscription>
|
||||
<EventSubscription>узПереопределитьПолучаемуюФормуПрисоединенногоФайла</EventSubscription>
|
||||
<EventSubscription>узПроверитьНаличиеЗаметокПоПредмету</EventSubscription>
|
||||
<EventSubscription>узУстановитьПометкуУдаленияПрисоединенныхФайловДокументов</EventSubscription>
|
||||
@ -1773,6 +1777,7 @@
|
||||
<InformationRegister>узПроксиСерверы</InformationRegister>
|
||||
<InformationRegister>узСвязанныеЗадачи</InformationRegister>
|
||||
<InformationRegister>узСловарь</InformationRegister>
|
||||
<InformationRegister>узСостояниеВзаимодействийПоЗадачам</InformationRegister>
|
||||
<InformationRegister>узСпринтыЗадач</InformationRegister>
|
||||
<InformationRegister>узСтатусыЗадач</InformationRegister>
|
||||
<AccumulationRegister>узФактПоЗадачам</AccumulationRegister>
|
||||
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" 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:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
||||
<EventSubscription uuid="327c9f0e-beee-452a-9372-f01a7eb8f996">
|
||||
<Properties>
|
||||
<Name>узОбновитьСостояниеВзаимодействияПоЗадачеПередЗаписьюПредмета</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обновить состояние взаимодействия по задаче перед записью предмета</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Source>
|
||||
<v8:Type>cfg:InformationRegisterRecordSet.ПредметыПапкиВзаимодействий</v8:Type>
|
||||
</Source>
|
||||
<Event>BeforeWrite</Event>
|
||||
<Handler>CommonModule.узОбщийМодульСервер.ОбновитьСостояниеВзаимодействияПоЗадачеПередЗаписьюПредмета</Handler>
|
||||
</Properties>
|
||||
</EventSubscription>
|
||||
</MetaDataObject>
|
@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" 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:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
||||
<EventSubscription uuid="647b89da-637c-43dc-b43b-ba6d108fda36">
|
||||
<Properties>
|
||||
<Name>узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПисьма</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обновить состояние взаимодействия по задаче при записи письма</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Source>
|
||||
<v8:Type>cfg:DocumentObject.ЭлектронноеПисьмоВходящее</v8:Type>
|
||||
<v8:Type>cfg:DocumentObject.ЭлектронноеПисьмоИсходящее</v8:Type>
|
||||
</Source>
|
||||
<Event>OnWrite</Event>
|
||||
<Handler>CommonModule.узОбщийМодульСервер.ОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПисьма</Handler>
|
||||
</Properties>
|
||||
</EventSubscription>
|
||||
</MetaDataObject>
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" 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:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
||||
<EventSubscription uuid="26fd8285-8051-4982-9b0f-cf9d3383400f">
|
||||
<Properties>
|
||||
<Name>узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПредмета</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обновить состояние взаимодействия по задаче при записи предмета</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Source>
|
||||
<v8:Type>cfg:InformationRegisterRecordSet.ПредметыПапкиВзаимодействий</v8:Type>
|
||||
</Source>
|
||||
<Event>OnWrite</Event>
|
||||
<Handler>CommonModule.узОбщийМодульСервер.ОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПредмета</Handler>
|
||||
</Properties>
|
||||
</EventSubscription>
|
||||
</MetaDataObject>
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" 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:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
||||
<EventSubscription uuid="5b3a8e93-6fe9-49a3-82e8-ebeefd3500ff">
|
||||
<Properties>
|
||||
<Name>узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиФайла</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обновить состояние взаимодействия по задаче при записи файла</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Source>
|
||||
<v8:TypeSet>cfg:DefinedType.ПрисоединенныйФайлОбъект</v8:TypeSet>
|
||||
</Source>
|
||||
<Event>OnWrite</Event>
|
||||
<Handler>CommonModule.узОбщийМодульСервер.ОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиФайла</Handler>
|
||||
</Properties>
|
||||
</EventSubscription>
|
||||
</MetaDataObject>
|
@ -208,6 +208,10 @@
|
||||
<Metadata>InformationRegister.НастройкиСинхронизацииФайлов</Metadata>
|
||||
<AutoRecord>Deny</AutoRecord>
|
||||
</Item>
|
||||
<Item>
|
||||
<Metadata>Catalog.узЗадачи</Metadata>
|
||||
<AutoRecord>Deny</AutoRecord>
|
||||
</Item>
|
||||
<Item>
|
||||
<Metadata>Catalog.ВидыПроверок</Metadata>
|
||||
<AutoRecord>Deny</AutoRecord>
|
||||
@ -724,6 +728,10 @@
|
||||
<Metadata>Catalog.ЗначенияСвойствОбъектов</Metadata>
|
||||
<AutoRecord>Deny</AutoRecord>
|
||||
</Item>
|
||||
<Item>
|
||||
<Metadata>InformationRegister.узСостояниеВзаимодействийПоЗадачам</Metadata>
|
||||
<AutoRecord>Deny</AutoRecord>
|
||||
</Item>
|
||||
<Item>
|
||||
<Metadata>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</Metadata>
|
||||
<AutoRecord>Deny</AutoRecord>
|
||||
|
@ -0,0 +1,391 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" 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:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.9">
|
||||
<InformationRegister uuid="b1c2f838-149b-4b70-9307-8b1fa9344c4e">
|
||||
<InternalInfo>
|
||||
<xr:GeneratedType name="InformationRegisterRecord.узСостояниеВзаимодействийПоЗадачам" category="Record">
|
||||
<xr:TypeId>d179ab20-4a99-402b-b399-0998100401a7</xr:TypeId>
|
||||
<xr:ValueId>59f274c4-5ad6-4fa0-84c2-15e44535a696</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
<xr:GeneratedType name="InformationRegisterManager.узСостояниеВзаимодействийПоЗадачам" category="Manager">
|
||||
<xr:TypeId>f170d1b9-b6fe-44d9-9a91-ea9a70e77aac</xr:TypeId>
|
||||
<xr:ValueId>a05b23e8-2e1d-4553-8a61-c74773c7fc9c</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
<xr:GeneratedType name="InformationRegisterSelection.узСостояниеВзаимодействийПоЗадачам" category="Selection">
|
||||
<xr:TypeId>44e16ca9-548b-47a8-9a69-04511a7454e0</xr:TypeId>
|
||||
<xr:ValueId>66aff692-2e20-4096-af85-d108e3f7831d</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
<xr:GeneratedType name="InformationRegisterList.узСостояниеВзаимодействийПоЗадачам" category="List">
|
||||
<xr:TypeId>eec26afa-4dfc-4711-8a80-74dfac1186a1</xr:TypeId>
|
||||
<xr:ValueId>792c31e0-d61e-43dd-88b0-a5a16bc9f338</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
<xr:GeneratedType name="InformationRegisterRecordSet.узСостояниеВзаимодействийПоЗадачам" category="RecordSet">
|
||||
<xr:TypeId>dc975ee1-90e5-43b7-b1f3-0113521d3be0</xr:TypeId>
|
||||
<xr:ValueId>cbdbf75f-5eaf-469a-bba8-96708bea5bef</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
<xr:GeneratedType name="InformationRegisterRecordKey.узСостояниеВзаимодействийПоЗадачам" category="RecordKey">
|
||||
<xr:TypeId>4f23fcd6-5a93-4336-b436-89a5a5bd156b</xr:TypeId>
|
||||
<xr:ValueId>1e043485-3170-4281-81c0-e3639915691f</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
<xr:GeneratedType name="InformationRegisterRecordManager.узСостояниеВзаимодействийПоЗадачам" category="RecordManager">
|
||||
<xr:TypeId>ef30312d-113a-4256-af60-625232954fa5</xr:TypeId>
|
||||
<xr:ValueId>fe0bebdb-d767-4421-8299-0ad4ee7f296d</xr:ValueId>
|
||||
</xr:GeneratedType>
|
||||
</InternalInfo>
|
||||
<Properties>
|
||||
<Name>узСостояниеВзаимодействийПоЗадачам</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Состояние взаимодействий по задачам</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<UseStandardCommands>false</UseStandardCommands>
|
||||
<EditType>InDialog</EditType>
|
||||
<DefaultRecordForm/>
|
||||
<DefaultListForm/>
|
||||
<AuxiliaryRecordForm/>
|
||||
<AuxiliaryListForm/>
|
||||
<InformationRegisterPeriodicity>Nonperiodical</InformationRegisterPeriodicity>
|
||||
<WriteMode>Independent</WriteMode>
|
||||
<MainFilterOnPeriod>false</MainFilterOnPeriod>
|
||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||
<DataLockControlMode>Managed</DataLockControlMode>
|
||||
<FullTextSearch>DontUse</FullTextSearch>
|
||||
<EnableTotalsSliceFirst>false</EnableTotalsSliceFirst>
|
||||
<EnableTotalsSliceLast>false</EnableTotalsSliceLast>
|
||||
<RecordPresentation/>
|
||||
<ExtendedRecordPresentation/>
|
||||
<ListPresentation/>
|
||||
<ExtendedListPresentation/>
|
||||
<Explanation/>
|
||||
<DataHistory>DontUse</DataHistory>
|
||||
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
|
||||
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
|
||||
</Properties>
|
||||
<ChildObjects>
|
||||
<Resource uuid="305eed7a-646d-4b47-acb3-752b10b31306">
|
||||
<Properties>
|
||||
<Name>КоличествоПрисоединенныхФайлов</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество присоединенных файлов</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
<v8:Digits>10</v8:Digits>
|
||||
<v8:FractionDigits>0</v8:FractionDigits>
|
||||
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество файлов, присоединенных непосредственно к задаче</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Resource>
|
||||
<Resource uuid="43fc444e-f3d9-49ae-8e1e-fb444c6871d9">
|
||||
<Properties>
|
||||
<Name>КоличествоВходящихПисем</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество входящих писем</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
<v8:Digits>10</v8:Digits>
|
||||
<v8:FractionDigits>0</v8:FractionDigits>
|
||||
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество связанных с задачей входящих электронных писем</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Resource>
|
||||
<Resource uuid="d0119260-8d5f-4b76-9a4e-4405ecf90c84">
|
||||
<Properties>
|
||||
<Name>КоличествоИсходящихПисем</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество исходящих писем</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
<v8:Digits>10</v8:Digits>
|
||||
<v8:FractionDigits>0</v8:FractionDigits>
|
||||
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество связанных с задачей исходящих электронных писем</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Resource>
|
||||
<Resource uuid="b76ab876-ae5a-41c5-b868-7213bd9e4ca5">
|
||||
<Properties>
|
||||
<Name>ДатаПоследнегоВходящегоПисьма</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Дата последнего входящего письма</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:dateTime</v8:Type>
|
||||
<v8:DateQualifiers>
|
||||
<v8:DateFractions>DateTime</v8:DateFractions>
|
||||
</v8:DateQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Resource>
|
||||
<Resource uuid="572c8ed0-0862-413c-94ce-1821f01bfacb">
|
||||
<Properties>
|
||||
<Name>ДатаПоследнегоИсходящегоПисьма</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Дата последнего исходящего письма</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:dateTime</v8:Type>
|
||||
<v8:DateQualifiers>
|
||||
<v8:DateFractions>DateTime</v8:DateFractions>
|
||||
</v8:DateQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Resource>
|
||||
<Resource uuid="df7e6b33-a2d6-4c95-82ed-22cc9de26b10">
|
||||
<Properties>
|
||||
<Name>КоличествоВложенийПисем</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество вложений писем</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
<v8:Digits>10</v8:Digits>
|
||||
<v8:FractionDigits>0</v8:FractionDigits>
|
||||
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Количество файлов, прикрепленных к связанным с задачей электронным письмам</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Resource>
|
||||
<Dimension uuid="6447add9-ca3e-4ae0-9c27-ecf9ddf71c5b">
|
||||
<Properties>
|
||||
<Name>Задача</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Задача</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>cfg:CatalogRef.узЗадачи</v8:Type>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>true</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>ShowError</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Master>true</Master>
|
||||
<MainFilter>true</MainFilter>
|
||||
<DenyIncompleteValues>true</DenyIncompleteValues>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Dimension>
|
||||
</ChildObjects>
|
||||
</InformationRegister>
|
||||
</MetaDataObject>
|
@ -0,0 +1,266 @@
|
||||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
|
||||
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
// Процедура по переданной ссылке на задачу расчитывает и записывает в регистр сведения о взаимодействиях по задаче.
|
||||
//
|
||||
// Параметры:
|
||||
// Задачи - СправочникСсылка.узЗадачи, Массив - задачи, в рамках которых рассчитываются показатели.
|
||||
// Отказ - Булево - признак прерывания обработки проведения
|
||||
//
|
||||
Процедура ОтразитьСостояниеЗадачи(Задачи, Отказ, Очередь = Неопределено) Экспорт
|
||||
|
||||
Если Отказ Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если ТипЗнч(Задачи) = Тип("Массив") Тогда
|
||||
МассивСсылок = Задачи;
|
||||
ИначеЕсли ТипЗнч(Задачи) = Тип("СправочникСсылка.узЗадачи") Тогда
|
||||
МассивСсылок = Новый Массив;
|
||||
МассивСсылок.Добавить(Задачи);
|
||||
Иначе
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
СтруктураПоиска = СтруктураПоискаПредыдущихСостояний();
|
||||
|
||||
ТаблицаСостоянийЗадач = ТаблицаСостоянийЗадач(МассивСсылок);
|
||||
ТаблицаПредыдущихСостоянийЗадач = ТаблицаПредыдущихСостоянийЗадач(МассивСсылок);
|
||||
|
||||
Для Каждого СтрокаТаблицы Из ТаблицаСостоянийЗадач Цикл
|
||||
|
||||
ЗаполнитьЗначенияСвойств(СтруктураПоиска, СтрокаТаблицы);
|
||||
МассивДействующихСостояний = ТаблицаПредыдущихСостоянийЗадач.НайтиСтроки(СтруктураПоиска);
|
||||
|
||||
СостояниеИзменено = НЕ Булево(МассивДействующихСостояний.Количество());
|
||||
|
||||
Если СостояниеИзменено Тогда
|
||||
|
||||
НаборЗаписей = РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.СоздатьНаборЗаписей();
|
||||
НаборЗаписей.Отбор.Задача.Установить(СтрокаТаблицы.Задача);
|
||||
|
||||
Если Не ЭтоПустаяЗапись(СтрокаТаблицы) Тогда
|
||||
СтрокаНабора = НаборЗаписей.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(СтрокаНабора, СтрокаТаблицы);
|
||||
КонецЕсли;
|
||||
|
||||
Попытка
|
||||
Если Очередь <> Неопределено Тогда
|
||||
ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборЗаписей);
|
||||
Иначе
|
||||
НаборЗаписей.Записать(Истина);
|
||||
КонецЕсли;
|
||||
Исключение
|
||||
ТекстСообщения = НСтр("ru = 'Не удалось отразить состояние взаимодействий по задаче: %Ссылка% по причине: %Причина%'");
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Ссылка%", СтрокаТаблицы.Задача);
|
||||
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||
|
||||
ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение,
|
||||
Метаданные.Справочники.узЗадачи, СтрокаТаблицы.Задача, ТекстСообщения);
|
||||
КонецПопытки;
|
||||
|
||||
ИначеЕсли Очередь <> Неопределено Тогда
|
||||
|
||||
НаборЗаписей = РегистрыСведений.узСостояниеВзаимодействийПоЗадачам.СоздатьНаборЗаписей();
|
||||
НаборЗаписей.Отбор.Задача.Установить(СтрокаТаблицы.Задача);
|
||||
|
||||
ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(НаборЗаписей);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
Функция ТаблицаСостоянийЗадач(МассивЗадач)
|
||||
|
||||
ПакетЗапросов = Новый Массив;
|
||||
ПакетЗапросов.Добавить(ТекстЗапросаКоличестваФайловЗадачи());
|
||||
ПакетЗапросов.Добавить(ТекстЗапросаИнформацииОПисьмах("Входящее"));
|
||||
ПакетЗапросов.Добавить(ТекстЗапросаИнформацииОПисьмах("Исходящее"));
|
||||
ПакетЗапросов.Добавить(ТекстЗапросаСостоянияЗадач());
|
||||
|
||||
ТекстЗапроса = СтрСоединить(ПакетЗапросов, ОбщегоНазначения.РазделительПакетаЗапросов());
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст = ТекстЗапроса;
|
||||
Запрос.УстановитьПараметр("МассивЗадач", МассивЗадач);
|
||||
|
||||
ТаблицаСостояний = Запрос.Выполнить().Выгрузить();
|
||||
|
||||
Возврат ТаблицаСостояний;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ТаблицаПредыдущихСостоянийЗадач(МассивЗадач)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.УстановитьПараметр("МассивЗадач", МассивЗадач);
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| СостояниеВзаимодействий.Задача КАК Задача,
|
||||
| СостояниеВзаимодействий.КоличествоПрисоединенныхФайлов КАК КоличествоПрисоединенныхФайлов,
|
||||
| СостояниеВзаимодействий.КоличествоВходящихПисем КАК КоличествоВходящихПисем,
|
||||
| СостояниеВзаимодействий.КоличествоИсходящихПисем КАК КоличествоИсходящихПисем,
|
||||
| СостояниеВзаимодействий.ДатаПоследнегоВходящегоПисьма КАК ДатаПоследнегоВходящегоПисьма,
|
||||
| СостояниеВзаимодействий.ДатаПоследнегоИсходящегоПисьма КАК ДатаПоследнегоИсходящегоПисьма,
|
||||
| СостояниеВзаимодействий.КоличествоВложенийПисем КАК КоличествоВложенийПисем
|
||||
|ИЗ
|
||||
| РегистрСведений.узСостояниеВзаимодействийПоЗадачам КАК СостояниеВзаимодействий
|
||||
|ГДЕ
|
||||
| СостояниеВзаимодействий.Задача В(&МассивЗадач)";
|
||||
|
||||
Возврат Запрос.Выполнить().Выгрузить();
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ТекстЗапросаКоличестваФайловЗадачи()
|
||||
|
||||
ТекстЗапроса =
|
||||
"ВЫБРАТЬ
|
||||
| ФайлыЗадач.ВладелецФайла КАК Задача,
|
||||
| КОЛИЧЕСТВО(*) КАК Количество
|
||||
|ПОМЕСТИТЬ ВтПрисоединенныеФайлы
|
||||
|ИЗ
|
||||
| ЗадачиПрисоединенныеФайлы КАК ФайлыЗадач
|
||||
|ГДЕ
|
||||
| ФайлыЗадач.ВладелецФайла В(&МассивЗадач)
|
||||
| И &ЭтоГруппа = ЛОЖЬ
|
||||
| И &ЭтоСлужебный = ЛОЖЬ
|
||||
|
|
||||
|СГРУППИРОВАТЬ ПО
|
||||
| ФайлыЗадач.ВладелецФайла
|
||||
|
|
||||
|ИНДЕКСИРОВАТЬ ПО
|
||||
| Задача";
|
||||
|
||||
ПустаяСсылка = Справочники.узЗадачи.ПустаяСсылка();
|
||||
ИмяСправочникаФайлов = РаботаСФайламиСлужебный.ИмяСправочникаХраненияФайлов(ПустаяСсылка);
|
||||
МетаданныеСправочникаФайлов = Метаданные.Справочники[ИмяСправочникаФайлов];
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ЗадачиПрисоединенныеФайлы",
|
||||
МетаданныеСправочникаФайлов.ПолноеИмя());
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ЭтоГруппа",
|
||||
?(МетаданныеСправочникаФайлов.Иерархический, "ФайлыЗадач.ЭтоГруппа", "ЛОЖЬ"));
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ЭтоСлужебный",
|
||||
?(ОбщегоНазначения.ЕстьРеквизитОбъекта("Служебный", МетаданныеСправочникаФайлов), "ФайлыЗадач.Служебный", "ЛОЖЬ"));
|
||||
|
||||
Возврат ТекстЗапроса;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ТекстЗапросаИнформацииОПисьмах(НаправлениеПисьма)
|
||||
|
||||
ТекстЗапроса =
|
||||
"ВЫБРАТЬ
|
||||
| ВЫРАЗИТЬ(ПредметыВзаимодействий.Предмет КАК Справочник.узЗадачи) КАК Задача,
|
||||
| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЭлектронноеПисьмо.Ссылка) КАК КоличествоПисем,
|
||||
| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВложенияПисьма.Ссылка) КАК КоличествоВложений,
|
||||
| МАКСИМУМ(ЭлектронноеПисьмо.Дата) КАК ДатаПоследнегоПисьма
|
||||
|ПОМЕСТИТЬ ВтВзаимодействие
|
||||
|ИЗ
|
||||
| РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыВзаимодействий
|
||||
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ДокументЭлектронноеПисьмо КАК ЭлектронноеПисьмо
|
||||
| ПО ПредметыВзаимодействий.Взаимодействие = ЭлектронноеПисьмо.Ссылка
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ ЭлектронноеПисьмоПрисоединенныеФайлы КАК ВложенияПисьма
|
||||
| ПО ПредметыВзаимодействий.Взаимодействие = ВложенияПисьма.ВладелецФайла
|
||||
| И &ЭтоГруппа = ЛОЖЬ
|
||||
| И &ЭтоСлужебный = ЛОЖЬ
|
||||
|ГДЕ
|
||||
| ПредметыВзаимодействий.Предмет В(&МассивЗадач)
|
||||
|
|
||||
|СГРУППИРОВАТЬ ПО
|
||||
| ПредметыВзаимодействий.Предмет
|
||||
|
|
||||
|ИНДЕКСИРОВАТЬ ПО
|
||||
| Задача";
|
||||
|
||||
ИмяДокументаПисьма = "ЭлектронноеПисьмо" + НаправлениеПисьма;
|
||||
ПустаяСсылка = Документы[ИмяДокументаПисьма].ПустаяСсылка();
|
||||
ИмяСправочникаФайлов = РаботаСФайламиСлужебный.ИмяСправочникаХраненияФайлов(ПустаяСсылка);
|
||||
МетаданныеСправочникаФайлов = Метаданные.Справочники[ИмяСправочникаФайлов];
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ВтВзаимодействие",
|
||||
"ВтВзаимодействие" + НаправлениеПисьма);
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДокументЭлектронноеПисьмо",
|
||||
"Документ." + ИмяДокументаПисьма);
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ЭлектронноеПисьмо.Дата",
|
||||
?(НаправлениеПисьма = "Входящее", "ЭлектронноеПисьмо.ДатаПолучения", "ЭлектронноеПисьмо.ДатаОтправления"));
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ЭлектронноеПисьмоПрисоединенныеФайлы",
|
||||
МетаданныеСправочникаФайлов.ПолноеИмя());
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ЭтоГруппа",
|
||||
?(МетаданныеСправочникаФайлов.Иерархический, "ВложенияПисьма.ЭтоГруппа", "ЛОЖЬ"));
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ЭтоСлужебный",
|
||||
?(ОбщегоНазначения.ЕстьРеквизитОбъекта("Служебный", МетаданныеСправочникаФайлов), "ВложенияПисьма.Служебный", "ЛОЖЬ"));
|
||||
|
||||
Возврат ТекстЗапроса;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ТекстЗапросаСостоянияЗадач()
|
||||
|
||||
ТекстЗапроса =
|
||||
"ВЫБРАТЬ
|
||||
| СправочникЗадач.Ссылка КАК Задача,
|
||||
| ЕСТЬNULL(ВтПрисоединенныеФайлы.Количество, 0) КАК КоличествоПрисоединенныхФайлов,
|
||||
| ЕСТЬNULL(ВтВзаимодействиеВходящее.КоличествоПисем, 0) КАК КоличествоВходящихПисем,
|
||||
| ЕСТЬNULL(ВтВзаимодействиеИсходящее.КоличествоПисем, 0) КАК КоличествоИсходящихПисем,
|
||||
| ЕСТЬNULL(ВтВзаимодействиеВходящее.ДатаПоследнегоПисьма, ДАТАВРЕМЯ(1,1,1)) КАК ДатаПоследнегоВходящегоПисьма,
|
||||
| ЕСТЬNULL(ВтВзаимодействиеИсходящее.ДатаПоследнегоПисьма, ДАТАВРЕМЯ(1,1,1)) КАК ДатаПоследнегоИсходящегоПисьма,
|
||||
| ЕСТЬNULL(ВтВзаимодействиеВходящее.КоличествоВложений, 0) + ЕСТЬNULL(ВтВзаимодействиеИсходящее.КоличествоВложений, 0) КАК КоличествоВложенийПисем
|
||||
|ИЗ
|
||||
| Справочник.узЗадачи КАК СправочникЗадач
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ ВтПрисоединенныеФайлы КАК ВтПрисоединенныеФайлы
|
||||
| ПО СправочникЗадач.Ссылка = ВтПрисоединенныеФайлы.Задача
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ ВтВзаимодействиеВходящее КАК ВтВзаимодействиеВходящее
|
||||
| ПО СправочникЗадач.Ссылка = ВтВзаимодействиеВходящее.Задача
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ ВтВзаимодействиеИсходящее КАК ВтВзаимодействиеИсходящее
|
||||
| ПО СправочникЗадач.Ссылка = ВтВзаимодействиеИсходящее.Задача
|
||||
|ГДЕ
|
||||
| СправочникЗадач.Ссылка В(&МассивЗадач)";
|
||||
|
||||
Возврат ТекстЗапроса;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция СтруктураПоискаПредыдущихСостояний()
|
||||
|
||||
СтруктураПоиска = Новый Структура;
|
||||
|
||||
МетаданныеРегистра = Метаданные.РегистрыСведений.узСостояниеВзаимодействийПоЗадачам;
|
||||
|
||||
Для каждого Поле Из МетаданныеРегистра.Измерения Цикл
|
||||
СтруктураПоиска.Вставить(Поле.Имя);
|
||||
КонецЦикла;
|
||||
|
||||
Для каждого Поле Из МетаданныеРегистра.Ресурсы Цикл
|
||||
СтруктураПоиска.Вставить(Поле.Имя);
|
||||
КонецЦикла;
|
||||
|
||||
Возврат СтруктураПоиска;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоПустаяЗапись(ЗаписьНабора)
|
||||
|
||||
Возврат ЗаписьНабора.КоличествоПрисоединенныхФайлов = 0
|
||||
И ЗаписьНабора.КоличествоВходящихПисем = 0
|
||||
И ЗаписьНабора.КоличествоИсходящихПисем = 0;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецЕсли
|
@ -0,0 +1,17 @@
|
||||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
|
||||
|
||||
#Область ОбработчикиСобытий
|
||||
|
||||
Процедура ПередЗаписью(Отказ, Замещение)
|
||||
|
||||
Если ОбменДанными.Загрузка Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(ЭтотОбъект);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецЕсли
|
@ -6507,6 +6507,65 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.узСостояниеВзаимодействийПоЗадачам</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>Update</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>Edit</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>TotalsControl</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>ReadDataHistory</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>ReadDataHistoryOfMissingData</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>UpdateDataHistory</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>UpdateDataHistoryOfMissingData</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>UpdateDataHistorySettings</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>UpdateDataHistoryVersionComment</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>ViewDataHistory</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>EditDataHistoryVersionComment</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>SwitchToDataHistoryVersion</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>DataProcessor.НастройкиПользователей.Command.НастройкиПользователя</name>
|
||||
<right>
|
||||
|
@ -4335,6 +4335,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.узСостояниеВзаимодействийПоЗадачам</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.узШаблоны</name>
|
||||
<right>
|
||||
|
@ -4625,6 +4625,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.узСостояниеВзаимодействийПоЗадачам</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.узШаблоны</name>
|
||||
<right>
|
||||
|
@ -5145,6 +5145,17 @@
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>InformationRegister.узСостояниеВзаимодействийПоЗадачам</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.узШаблоны</name>
|
||||
<right>
|
||||
|
@ -124,6 +124,11 @@
|
||||
<xr:Item xsi:type="xr:MDObjectRef">CommonCommand.узПрисоединенныеФайлыПисемПоЗадаче</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Role.узПользовательОграничениеДоступаЧтение</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Catalog.узГруппыДоступаЗадач</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">InformationRegister.узСостояниеВзаимодействийПоЗадачам</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">EventSubscription.узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиФайла</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">EventSubscription.узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПредмета</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">EventSubscription.узОбновитьСостояниеВзаимодействияПоЗадачеПриЗаписиПисьма</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">EventSubscription.узОбновитьСостояниеВзаимодействияПоЗадачеПередЗаписьюПредмета</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.узРаботаСБуферомОбменаКлиент</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">CommonTemplate.узКомпонентаРаботыСБуферомОбмена</xr:Item>
|
||||
</Content>
|
||||
|
Loading…
x
Reference in New Issue
Block a user