|
v7: УстановитьИнтервал() в журнале документов. |
☑ |
0
1C_noob_1C
27.05.14
✎
12:55
|
Доброго времени суток.
Задача стоит в ограничении установки интервала дат пользователями в журнале. Пытаюсь делать так:
Процедура ПриУстановкеИнтервала(ДатаНач, ДатаКон)
Если НазваниеНабораПрав() = "Пользователь" Тогда
УстановитьИнтервал(НоваяДатаНач, НоваяДатаКон);
КонецЕсли;
КонецПроцедуры // ПриУстановкеИнтервала
Не работает. Но при открытии УстановитьИнтервал() срабатывает.
Подскажите, что я делаю не так или изначально это не реализуемо?
|
|
1
ivsher
27.05.14
✎
13:38
|
При открытии формы журнала устанавливайте какие вам надо даты.
|
|
2
1C_noob_1C
27.05.14
✎
13:56
|
(1)
В том-то и вопрос...
Хочу сделать, чтобы пользователи не могли открыть период в журнале например позже определенного числа.
|
|
3
1C_noob_1C
27.05.14
✎
13:58
|
(1)
Можно сделать УстановитьИнтервал(НоваяДатаНач, НоваяДатаКон, 0) при открытии, тем самым открыть сразу максимально доступный период и запретить изменение интервала.
Но не совсем "удобно" выходит.
|
|
4
1C_noob_1C
27.05.14
✎
14:31
|
Пытаюсь найти способ реагировать на интерактивное изменение периода пользователем. И если он указал недопустимый интервал, то рассказывать об этом и устанавливать нужный период.
|
|
5
ivsher
27.05.14
✎
14:45
|
УстановитьИнтервал(<?>,,);
Синтаксис:
УстановитьИнтервал(<ДатаНач>,<ДатаКон>,<ФлагИзменения>)
Назначение:
Установить интервал журнала.
Параметры:
<ДатаНач> - дата начала интервала журнала;
<ДатаКон> - дата конца интервала журнала.
<ФлагИзменения> - необязательный параметр. Этим флагом регулируется возможность интерактивного изменения интервала журнала. 1 - пользователь может изменить интервал журнала интерактивно, 0 - пользователь не может интерактивно изменить интервал журнала.
Замечание:
Метод доступен только в контексте Модуля формы журнала.
Установите какой вам надо интервал при открытии и запретите пользователю его менять с помощью флага.
|
|
6
1C_noob_1C
27.05.14
✎
14:55
|
(5) Интересный момент, что УстановитьИнтервал() не срабатывает в ПриУстановкеИнтервала(), а прекрасно работает в ПриОткрытии() и ПриУстановкеОтбора().
|
|
7
1C_noob_1C
27.05.14
✎
15:00
|
Пока выход вижу такой:
- при открытии устанавливать максимальный интервал журнала (как предложил ivsher);
- в ПриУстановкеИнтервала(), если период недопустим, то предупреждение пользователю и СтатусВозврата(0).
|
|
8
ivsher
27.05.14
✎
15:04
|
Возможно (6) можно победить через ложное закрытие. Правда сам никогда таким приемом не пользовался :). Поэтому поможет или нет, утверждать не могу.
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший