Имя: Пароль:
1C
1С v8
роли
0 nikitka55
 
30.05.12
19:45
Создал для примера 3 роли Администратор, Администратор1, Администратор2
как сделать так чтобы когда  зашел Администратор у его номера в документе был свой префикс, когда Администратор1 у него свой префикс

на данный момент такой код


Процедура ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс)
      Префикс = Константы.ПрефиксНомера.Получить();
      Префикс = ?(ПустаяСтрока(Префикс),"00",Префикс);
КонецПроцедуры
1 Wobland
 
30.05.12
19:45
а когда зашёл тот, у кого все три роли есть?
2 nikitka55
 
30.05.12
19:46
у него тоже свой префикс
3 Wobland
 
30.05.12
19:47
(2) РольДоступна() покури. и с этого места подробней, плз. на три роли 8 префиксов?
4 nikitka55
 
30.05.12
19:48
у всех пользователей права одинаковые
5 nikitka55
 
30.05.12
19:48
3 префикса
6 Wobland
 
30.05.12
19:48
(4) закрой глаза и представь обратное
7 Wobland
 
30.05.12
19:48
(5) тогда (1)
8 nikitka55
 
30.05.12
19:52
Сейчас попробую РольДоступа
9 kosts
 
30.05.12
19:52
Может для пользователей лучше делать отдельные префиксы
10 nikitka55
 
30.05.12
19:54
все я сделал)
спасибо на счет РольДоступа)
11 nikitka55
 
30.05.12
19:54
Процедура ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс)
   Если  РольДоступна("Администратор") Тогда
   Префикс="1/"
   Иначе
       Если РольДоступна("Администратор1") Тогда
           Префикс="2/"
       Иначе
           Если РольДоступна("Администратор2") Тогда
           Префикс="3/"
       КонецЕсли;
   КонецЕсли;
КонецЕсли;

КонецПроцедуры
12 Wobland
 
30.05.12
19:56
(10) на (1) ответь всё ж
13 kosts
 
30.05.12
19:58
и так можно

   Если  РольДоступна("Администратор") Тогда
       Префикс="1/"
   ИначеЕсли РольДоступна("Администратор1") Тогда
       Префикс="2/"
   ИначеЕсли РольДоступна("Администратор2") Тогда
       Префикс="3/"
   КонецЕсли;
14 nikitka55
 
30.05.12
19:59
У всех трех пользователей права одинаковые, они просто будут заходить под своими именами на разных компьютерах
15 nikitka55
 
30.05.12
19:59
и так можно
16 Wobland
 
30.05.12
20:01
(14) хорошо. чем Администратор1 хуже Администратора? почему префикс Администратора берётся в случае, когда у юзера и тот и тот?
17 nikitka55
 
30.05.12
20:07
"чем Администратор1 хуже Администратора?"
ничем не хуже
Просто документы будут заполняться на разных компьютерах и они (люди) захотели что бы у них были разные префиксы в документах, чтобы не запутаться
блин я уже запутался, уже вроде все разобрались)
18 Wobland
 
30.05.12
20:08
(17) привязывайся на пользователей а не на роли. можно сделать так, что написанное тобой будет работать не так, как ты ожидаешь, следовательно, ты написал ерунду
19 Wobland
 
30.05.12
20:09
я б настройку сделал у пользователя...
20 nikitka55
 
30.05.12
20:10
что за настройку?
21 kosts
 
30.05.12
20:10
(17) Куча пользователей вводят документы, с единой нумерацией без префиксов, и не парятся. Всегда можно сделать отбор по ответственному...
22 kosts
 
30.05.12
20:14
Кстати и роль Администратор как бы подразумевает админские права в конфигураторе.
Лучше назвать роли, например, Менеджер.
23 nikitka55
 
30.05.12
20:15
Да это я так для примера
24 Wobland
 
30.05.12
20:28
(20) сервис - настройки пользователя в УТ10 для примера
25 Wobland
 
30.05.12
20:30
+(24) понадобилось мне кое-где разным цветом строки отчёта красить...
https://dl.dropbox.com/u/64196148/20120530_232918.jpg
26 nikitka55
 
30.05.12
20:31
Я то делаю в обычной 1С предприятие 8.2
27 Wobland
 
30.05.12
20:35
(26) ТекущийПользователь() - тут конфигурация не важна.
впрочем, если сможешь гарантировать (не словами), что роль вида АдминистраторН у всякого пользователя всегда будет одна, или если помнить, чем чревато назначение более одной, то можешь положить на моё мнение ;)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший