|
Ограничение доступности элементов справочника. | ☑ | ||
---|---|---|---|---|
0
cmex
30.09.13
✎
08:44
|
Доброе утро.
БП 3.0. Нужно ограничить доступность тех Договоров контрагентов, которых нет в регистре сведений, то есть договор нельзя нигде выбрать. Как такое организовать? Но только не так,чтобы в каждой форме,где встречается данный тип, писать код. |
|||
1
kosts
30.09.13
✎
08:50
|
(0) По крайней мере в подписке на проведение документов можно отказ сделать. И в форме выбора договоров отмечать например цветом, те которые запрещены.
|
|||
2
shuhard
30.09.13
✎
08:50
|
(0) либо RLS, либо подписка перед записью
|
|||
3
Мимохожий Однако
30.09.13
✎
08:51
|
фильтр в форме подбора добавить
|
|||
4
cmex
30.09.13
✎
08:52
|
(2) (1) перед записью плохой вариант, надо онлайн. например, при выборе элемента из формы выбора что то придумать может?
|
|||
5
cmex
30.09.13
✎
08:53
|
(3) можно поподробнее?
|
|||
6
shuhard
30.09.13
✎
08:55
|
(4) RLS
|
|||
7
KishMish
30.09.13
✎
08:55
|
(5) в самой форме выбора подбора установить фильтр. но это не спасет от текстового ввода в поле.
|
|||
8
cmex
30.09.13
✎
08:55
|
(6) что такое RLS?
|
|||
9
kosts
30.09.13
✎
08:55
|
(4) Перед записью как раз всегда должно проверяться, иначе каким-нибудь способом когда нибудь запишут неправильный договор...
Остальное - это уже для удобства пользователей формы, фильтры. |
|||
10
cmex
30.09.13
✎
08:56
|
(7) на какое событие повесить проверку? когда пользователю откроется форма выбора и он выберет выберет нужный договор? я думаю текстовый ввод тут вряд ли будет использоваться
|
|||
11
cmex
30.09.13
✎
08:57
|
(9) перед записью сделаю,остается для пользователя удобно сделать
|
|||
12
kosts
30.09.13
✎
08:58
|
(9) > Перед записью как раз всегда должно проверяться
Ну конечно за исключением случаев, когда записывать такие можно, но они в данный момент не нужны... |
|||
13
Мимохожий Однако
30.09.13
✎
08:58
|
Полезнее для дела проверять перед записью. Пользователь пару раз получить по лбу )) запомнит.
|
|||
14
kosts
30.09.13
✎
09:03
|
(10) >я думаю текстовый ввод тут вряд ли будет использоваться
А еще список выбора вряд ли будет использоваться... :-) |
|||
15
kosts
30.09.13
✎
09:04
|
Как говорили, в форме выбору нужно мутить, смотреть как там сейчас реализовано, от этого и отталкиваться...
|
|||
16
cmex
30.09.13
✎
09:11
|
написал вот такой код
&НаКлиенте Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) Если Не ДоговорДоступен(ВыбраннаяСтрока) Тогда Предупреждение("Данный договор не зарегистрирован в системе Электронного архива. Работа с ним запрещена"); ВыбраннаяСтрока = ВернутьПустуюСсылку(); КонецЕсли; КонецПроцедуры // Конец СтандартныеПодсистемы.Печать &НаСервере Функция ДоговорДоступен(Договор) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | омкШтрихКодДокумента.Штрихкод |ИЗ | РегистрСведений.омкШтрихКодДокумента КАК омкШтрихКодДокумента |ГДЕ | омкШтрихКодДокумента.Документ = &Документ"; Запрос.УстановитьПараметр("Документ", Договор); Результат = Запрос.Выполнить(); Возврат Не Результат.Пустой(); КонецФункции &НаСервере Функция ВернутьПустуюСсылку() Возврат Справочники.ДоговорыКонтрагентов.ПустаяСсылка(); КонецФункции но все равно возвращается договор,который выбрал юзер, как допилить чтобы остаться в форме выбора? |
|||
17
kosts
30.09.13
✎
09:14
|
(16) Договор имеет тип справочник
Может СтандартнаяОбработка нужно отключить? |
|||
18
dmpl
30.09.13
✎
09:15
|
Скрывать что-то от пользователя - это верный путь получить дубли в итоге. Он же суров как Чак Норрис - нет договора - заведет...
|
|||
19
Мимохожий Однако
30.09.13
✎
09:16
|
Отключить стандартную обработку, запросом получить только возможные договоры и список передать в поле выбора.
|
|||
20
kosts
30.09.13
✎
09:16
|
И какой тип у ВыбраннаяСтрока?
|
|||
21
cmex
30.09.13
✎
09:27
|
(20) пустая ссылка договоры
|
|||
22
cmex
30.09.13
✎
10:36
|
(19) взлетело. спасибо.
а насчет ввода по строке - в модуле менеджера стандартная процедура есть "ОбработкаПолученияДанныхВыбора", там все и запиливается. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |