12.08.2014, 08:18 | #1 |
Участник
|
Всем привет!
Не подскажете, как можно в NAV 2009R2 ограничить одной лицензией пользователя? Либо дать 1 лицензию на нескольких пользователей? |
|
12.08.2014, 11:13 | #2 |
Administrator
|
пожалуйста, напишите подробнее, какого эффекта Вы пытаетесь достичь.
|
|
21.08.2014, 06:41 | #3 |
Участник
|
Пытаюсь на 2 пользователя назначить 1 лицензию.
Должно это выглядеть следующим образом: права на НАВ есть у двоих людей, кто первый в НАВ зашёл - того и лицензия, при попытки зайти второму человеку выводилось сообщение, что нет боле доступных лицензия, т.к. ваша лицензия используется пользователем N. После чего эти 2 челоовека между собой договариваются, кто когда заходит в НАВ. |
|
21.08.2014, 11:35 | #4 |
Administrator
|
лицензия на одного пользователя - редкий зверь.
одно время Майкрософт генерил такие чуть ли не бесплатно, в промо-целях. попробуйте, может дадут? если в базу должен заходить только один человек, то при создании базы (SQL) можно поставить галочку Single User и проблема будет решена на уровне сервера я бы при открытии базы посмотрел бы таблицу Session и если там есть уже активная сессия - выдавал бы ошибку "Система выполнила необъяснимую операцию и будет закрыта" |
|
21.08.2014, 15:03 | #5 |
Участник
|
Если я правильно понимаю, то пользователей ка краз не 2, а больше. И проблема в том, что б они не отжирали боьлше одной лицензии?
Если так, то где то здесь или на mibuso была описана доработка по градуированию пользователей (что то вроде как для ген. дира всегда есть сессия, а для остальных как получится).Можно либо ее прикрутить либо допилить. Смысл доработки в проверке при логине к базе есть ли для данного пользователя с его приоритетом свободная сессия и если нет, то сессия отвеливается. |
|
28.08.2014, 15:13 | #6 |
Участник
|
Цитата:
Сообщение от Fordewind
Если я правильно понимаю, то пользователей ка краз не 2, а больше. И проблема в том, что б они не отжирали боьлше одной лицензии?
Если так, то где то здесь или на mibuso была описана доработка по градуированию пользователей (что то вроде как для ген. дира всегда есть сессия, а для остальных как получится).Можно либо ее прикрутить либо допилить. Смысл доработки в проверке при логине к базе есть ли для данного пользователя с его приоритетом свободная сессия и если нет, то сессия отвеливается. |
|
28.08.2014, 16:28 | #7 |
Administrator
|
посмотрите таблицу 91, я бы на ней сделал различные уровни доступа сотрудникам.
ну и таблица Session, по ней должно проверяться кто онлайн. наверняка вызов функции осуществляется в 1-м кодеюните, на CompanyOpen, например. а вот в какой таблице собственно настройка (какой роли сколько лицензий), где ее интерфейс - сказать не могу |
|
31.08.2014, 13:09 | #8 |
Участник
|
Цитата:
Сообщение от jopagames3
Но вот полноценное отключение, чтобы лицензия освободилась? (через хранимку если только, или все приложение неким демоном прибивать)
|
|
01.09.2014, 14:39 | #9 |
Участник
|
Цитата:
Сообщение от jopagames3
Но вот полноценное отключение, чтобы лицензия освободилась? (через хранимку если только, или все приложение неким демоном прибивать) А в нативе? А в трехзвенном 13? только самого себя убить таким образом нельзя - только других) в 13-м не проверял. |
|
01.09.2014, 21:51 | #10 |
Administrator
|
Цитата:
Сообщение от jopagames3
Но вот полноценное отключение, чтобы лицензия освободилась? (через хранимку если только, или все приложение неким демоном прибивать)
А в нативе? А в трехзвенном 13? для перезахода в базу выглядело это так: CREATE(wndHost); wndHost.SendKeys('{F10}'); wndHost.SendKeys('{DOWN}'); wndHost.SendKeys('{DOWN}'); wndHost.SendKeys('{DOWN}'); wndHost.SendKeys('{RIGHT}'); wndHost.SendKeys('{DOWN}'); wndHost.SendKeys('{ENTER}'); где wndHost - Automation 'Windows Script Host Object Model'.WshShell |
|
04.09.2014, 11:17 | #11 |
Administrator
|
Цитата:
Сообщение от jopagames3
ЗЫ: Для выхода из программы, когда уже открыто много окошек, конечно, не всегда прокатит, но при вызове из LoginStart - в самый раз.
wndHost.SendKeys('{ESC}'); |
|
04.09.2014, 22:34 | #12 |
Участник
|
Можно ещё брутальнее:
Код: windHost.SendKeys('%{F4}'); |
|