3_1_3_162

This commit is contained in:
Компания 1С committed 2020-06-05 18:29:00 +03:00
1 parent 3e171e7a5e
commit 32b6e70824
1022 files changed
+96280 -36685

No files matched your search

@@ -130,6 +130,7 @@
//
// Возвращаемое значение:
// Булево - Истина, если право есть.
//
Функция ЕстьПравоИспользованияНапоминаний()
Возврат ПравоДоступа("Изменение", Метаданные.РегистрыСведений.НапоминанияПользователя);
КонецФункции
@@ -511,6 +512,7 @@
// Проверяет изменения реквизитов предметов, на которые есть пользовательская подписка,
// изменяет срок напоминания в случае необходимости.
//
Процедура ОбновитьНапоминанияПоПредметам(Предметы) Экспорт
УстановитьПривилегированныйРежим(Истина);
@@ -537,20 +539,20 @@
КонецПроцедуры
// Параметры:
// Предметы - Массив из ЛюбаяСсылка -
// Предметы - Массив из ЛюбаяСсылка
//
// Возвращаемое значение:
// ТаблицаЗначений - список напоминаний:
// * Пользователь - СправочникСсылка.Пользователи -
// * ВремяСобытия - Дата -
// * Источник - ОпределяемыйТип.ПредметНапоминания -
// * СрокНапоминания - Дата -
// * Описание - Строка -
// * СпособУстановкиВремениНапоминания - ПеречислениеСсылка.СпособыУстановкиВремениНапоминания -
// * ИнтервалВремениНапоминания - Число -
// * ИмяРеквизитаИсточника - Строка -
// * Расписание - ХранилищеЗначения -
// * ПовторятьЕжегодно - Булево -
// ТаблицаЗначений:
// * Пользователь - СправочникСсылка.Пользователи
// * ВремяСобытия - Дата
// * Источник - ОпределяемыйТип.ПредметНапоминания
// * СрокНапоминания - Дата
// * Описание - Строка
// * СпособУстановкиВремениНапоминания - ПеречислениеСсылка.СпособыУстановкиВремениНапоминания
// * ИнтервалВремениНапоминания - Число
// * ИмяРеквизитаИсточника - Строка
// * Расписание - ХранилищеЗначения
// * ПовторятьЕжегодно - Булево
//
Функция НапоминанияПоПредметам(Знач Предметы)
@@ -857,31 +859,39 @@
Или ГрафикСобытияНаГод.Количество() = 1 И ТекущаяДатаСеанса() > ДобавитьМесяц(Напоминание.ВремяСобытия, 1)
// - напоминание ежемесячное, но уже прошла неделя со времени события.
Или ГрафикСобытияНаГод.Количество() = 12 И ТекущаяДатаСеанса() > Напоминание.ВремяСобытия + 60*60*24*7 Тогда
Если ПодошедшееВремяСобытия.Количество() > 0 Тогда
ОтключитьНапоминание(Напоминание, Ложь);
ПараметрыНапоминания = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(Напоминание);
ПараметрыНапоминания.Расписание = Напоминание.Расписание.Получить();
Напоминание = СоздатьНапоминание(ПараметрыНапоминания);
Напоминание.ВремяСобытия = ПодошедшееВремяСобытия[ПодошедшееВремяСобытия.ВГраница()];
Напоминание.СрокНапоминания = Напоминание.ВремяСобытия - Напоминание.ИнтервалВремениНапоминания;
ПодключитьНапоминание(Напоминание);
КонецЕсли;
ОтключитьНапоминание(Напоминание, Истина);
НачатьТранзакцию();
Попытка
Если ПодошедшееВремяСобытия.Количество() > 0 Тогда
ОтключитьНапоминание(Напоминание, Ложь);
ПараметрыНапоминания = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(Напоминание);
ПараметрыНапоминания.Расписание = Напоминание.Расписание.Получить();
Напоминание = СоздатьНапоминание(ПараметрыНапоминания);
Напоминание.ВремяСобытия = ПодошедшееВремяСобытия[ПодошедшееВремяСобытия.ВГраница()];
Напоминание.СрокНапоминания = Напоминание.ВремяСобытия - Напоминание.ИнтервалВремениНапоминания;
ПодключитьНапоминание(Напоминание);
КонецЕсли;
ОтключитьНапоминание(Напоминание, Истина);
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ЗаписьЖурналаРегистрации(НСтр("ru = 'Напоминания пользователя'", ОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка, Метаданные.РегистрыСведений.НапоминанияПользователя, , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецПопытки;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
// Возвращаемое значение:
// Массив из Структура - :
// * Пользователь - СправочникСсылка.Пользователи -
// * ВремяСобытия - Дата -
// * Источник - ОпределяемыйТип.ПредметНапоминания -
// * СрокНапоминания - Дата -
// * Описание - Строка -
// * ИндексКартинки - Число -
// Массив из Структура:
// * Пользователь - СправочникСсылка.Пользователи
// * ВремяСобытия - Дата
// * Источник - ОпределяемыйТип.ПредметНапоминания
// * СрокНапоминания - Дата
// * Описание - Строка
// * ИндексКартинки - Число
//
Функция СписокТекущихНапоминанийПользователя() Экспорт