Имя: Пароль:
1C
1С v8
Выбор формы документа в зависимости от роли.
0 ahmato
 
13.08.15
18:32
Добрый вечер, коллеги!

Платформа: 8.2.19.80
Конфигурация: Управление торговлей, редакция 11.0 (11.0.8.13)

Вопрос:
Как можно в зависимости от роли пользователя, открыть ту или иную форму документа?
1 zak555
 
13.08.15
18:36
В форме вызывай другую форму
2 ahmato
 
13.08.15
19:02
(1) Идея отличная, сделал.
вопрос №2: Как передать текущие данные во вновь открывающуюся форму?
вопрос№3: если к примеру один и тот же документ откроют в разных формах, не вызовет ли это какие нибудь коллизии?
3 ahmato
 
13.08.15
19:29
Вопрос№2 решен
СсылкаНаОбъект = Объект.Ссылка;
        ПараметрыФормы = Новый Структура("Ключ", СсылкаНаОбъект);
        ОткрытьФорму("Документ.ЗаказКлиента.Форма.ФормаДокумента1",ПараметрыФормы);
4 ahmato
 
13.08.15
19:29
Последний вопрос очень актуален, коллеги поделитесь опытом.
5 zak555
 
13.08.15
19:31
посмотри как сделано открытие в типовых
например в бп 30, документ ртиу

там форма выбирается от вида операции в главной форме
6 ahmato
 
13.08.15
19:33
К сожалению конфигурация под рукой нету, но завтра скачаю и постараюсь разобрать, что к чему. Спасибо за помощь :)
7 jsmith82
 
13.08.15
19:34
(4) от того, что откроют в разных или одинаковых, ничего не изменится
8 ahmato
 
13.08.15
19:37
Действительно, видимо на уровне платформы уже предусмотрен механизм блокировки объекта. :)
9 ahmato
 
13.08.15
19:53
Вопрос№4: на каком этапе надо ловить событие, для закрытия основной формы? Основная запускается параллельно дополнительной.
10 jsmith82
 
13.08.15
20:01
(9) Отказ = Истина?
11 ahmato
 
13.08.15
20:05
(10) Точно! Я сразу не догадался) Спасибо за помощь :)
12 zak555
 
13.08.15
20:07
ты лучше расскажи, чем формы отличаются и что в "ограниченной" форме нельзя отображать ?

может это всё решается одной формой
13 Defender aka LINN
 
13.08.15
21:04
(12) Ну как же. Открыл пользователь документ - а это заказ покупателя. Открыл админ - это уже расходный кассовый ордер. Удобно же.
14 ahmato
 
14.08.15
11:49
(12) Все пляски начались из за панели навигации, не получается ее настроить/наполнить по своему желанию, конечно можно по бодаться 2-3 дня и реализовать все в одной форме, но на это нет времени). Кроме того я ни вижу проблем с такой реализацией тех. задания.
15 ahmato
 
14.08.15
11:50
(13) ))))) открыл главный бухгалтер, а там вообще бухгалтерский баланс?
16 Defender aka LINN
 
14.08.15
12:15
(14) Ну да, сам ahmato не видит, куда уж нам...
А теперь представь себе, что надо добавить или поменять некий функционал в форме. Теперь у тебя в 2 раза больше работы на ровном месте. Красота, правда?
17 D3O
 
14.08.15
12:48
(0) в модуле менеджера объекта есть событие ОбработкаПолученияФормы. оно же подвешивается на подписку (чтоб не иметь проблем с поддержкой) - ну дальше сообразишь ))
18 ahmato
 
14.08.15
14:21
(16) Я в какой то степени согласен с Вашими доводами, и наверное если придется серьезно дорабатывать форму (в чем я лично сомневаюсь) то придется чего то думать.
Но! Давайте рассуждать, так ли плохо для не типовой роли создавать дополнительную форму на основе типовой:
- примерно 80% пользователей использует только типовой функционал основной формы, соответственно реализовывать функционал дополнительной роли в типовой, это сознательное усложнение себе жизни при обновлении и поддержке (трудно быстро разобраться что где было изменено и как это связано). Согласитесь это отличный плюс;

- дополнительную форму в плане интерфейса надстраивать быстро и без дополнительного кода (Галочка видимости элемента на форме) Это второй отличный плюс.

- теперь попробую ответить на Ваш аргумент "..А теперь представь себе, что надо добавить или поменять некий функционал в форме. Теперь у тебя в 2 раза больше работы на ровном месте. Красота, правда?..", хочу отметить пару моментов:
1) Если это добавление или изменение касается работы функционала без учета ролей, то по сути работать надо один раз, во вторую форму все переноситься "копи-пастом". В силу идентичности форм.
2) Если это добавление или изменение касается работы функционала с учетом ролей, в любом случае объем работы увеличится.
Если учитывать все перечисленное, вывод не однозначно плохой.  :)
19 ahmato
 
14.08.15
14:25
(17) о! отлично, как раз поможет решить одну задачу :)
20 Defender aka LINN
 
14.08.15
14:53
(18) "соответственно реализовывать функционал дополнительной роли в типовой, это сознательное усложнение себе жизни при обновлении и поддержке"
Ну да. А когда форма своя, то в нее эти изменения, типа, не надо переносить будет.