![]() |
|
Параметры сеанса и текущая дата | ☑ | ||
---|---|---|---|---|
0
Rusf1n
16.01.18
✎
09:13
|
Добрый день! Реализую задачу по ограничениям по правам, так вот суть в чем, надо отслеживать текущую дату. Например, если я использую "параметр сеанса" с текущей датой, пользователь зашел сегодня - наступило завтра, а он из 1С не выходил. Я как понимаю параметр сеанса сам не обновится с изменением даты на компьютере??? Его надо самому как-то обновлять?? Заранее благодарю!
|
|||
1
Ненавижу 1С
гуру
16.01.18
✎
09:16
|
а зачем параметр сеанса с текущей датой?
|
|||
2
Волшебник
модератор
16.01.18
✎
09:17
|
Такой параметр сеанса не нужен. Просто вызови ТекущаяДата()
|
|||
3
Остап Сулейманович
16.01.18
✎
09:19
|
(0) Если так... в лоб - то в модуле сеанса, в УстановкаПараметровСеанса проверять дату сеанса с системной датой. И если они не совпадают - менять.
Например : Процедура УстановкаПараметровСеанса(ТребуемыеПараметры) ... Если ТребуемыеПараметры.Найти(ИмяНужного) Тогда Если ИмяНужного <> ТекущаяДата() Тогда ИмяНужного = ТекущаяДата(); КонецЕсли; КонецЕсли; КонецПроцедуры Учесть, что ТекущаяДата() возвращает ДатаВремя. И если нужна только дата сравнение как в примере не годится. |
|||
4
DmitrO
16.01.18
✎
09:20
|
Дело наверно в том что ему нужен параметр сеанса как параметр ограничения RLS.
В таком случае об обновлении значения параметра сеанса должен позаботиться сам сеанс, т.е. клиент. См. ПодключитьОбработчикОжидания |
|||
5
Волшебник
модератор
16.01.18
✎
09:21
|
Каждую ночь сервер лучше перезагружать, а то у него бывают утечки памяти.
|
|||
6
Rusf1n
16.01.18
✎
09:52
|
(4) именно нужно для RLS
|
|||
7
Timon1405
16.01.18
✎
10:00
|
(5) оО, это где такие рекомендации дают?
|
|||
8
Волшебник
модератор
16.01.18
✎
10:06
|
(7) Из моего опыта
|
|||
9
Ненавижу 1С
гуру
16.01.18
✎
10:10
|
абсолютно бредовая идея, но вдруг:
1. создать константу 2. настроить регламентное задание по расписанию раз в сутки изменять ее 3. в RLS использовать обращение к константе если используется несколько часовых поясов возможно вместо константы использовать РС |
|||
10
Serg_1960
16.01.18
✎
10:51
|
Вы, наверно, давно не заглядывали в актуальные конфигурации новых версий? Если есть возможность, откройте ЗУП 3.1 и посмотрите, например, общие модули с "ДатыЗапретаИзменения..." в начале наименования.
(офф, в юмор) Просто пример вам, чтобы почувствовать себя полным ничтожеством перед свободным полётом гениальных мыслей разработчиков конфигураций :)) Процедура УстановкаПараметровСеанса(ИмяПараметра, УстановленныеПараметры) Экспорт Если ИмяПараметра = "ДействующиеДатыЗапретаИзменения" Тогда Значение = ЗначениеПараметраСеансаДействующиеДатыЗапретаИзменения(); ПараметрыСеанса.ДействующиеДатыЗапретаИзменения = Значение; УстановленныеПараметры.Добавить("ДействующиеДатыЗапретаИзменения"); ПоследняяПроверка = ДатыЗапретаИзмененияСлужебныйПовтИсп.ПоследняяПроверкаВерсииДействующихДатЗапрета(); ПоследняяПроверка.Дата = ТекущаяДатаСеанса(); ИначеЕсли ИмяПараметра = "ПропуститьПроверкуЗапретаИзменения" Тогда ПараметрыСеанса.ПропуститьПроверкуЗапретаИзменения = Ложь; УстановленныеПараметры.Добавить("ПропуститьПроверкуЗапретаИзменения"); ИначеЕсли ИмяПараметра = "ОбновитьВерсиюДатЗапретаИзмененияПослеЗагрузкиДанных" Тогда ПараметрыСеанса.ОбновитьВерсиюДатЗапретаИзмененияПослеЗагрузкиДанных = Ложь; УстановленныеПараметры.Добавить("ОбновитьВерсиюДатЗапретаИзмененияПослеЗагрузкиДанных"); КонецЕсли; КонецПроцедуры |
|||
11
Мандалай
16.01.18
✎
11:54
|
Только не ТекущаяДата, а ТекущаяДатаСеанса.
|
|||
12
Мандалай
16.01.18
✎
11:55
|
И перезагружать не каждый день :), а раз в неделю вполне достаточно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |