AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Администрирование
NAV
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.08.2014, 08:18   #1  
Casper71 is offline
Casper71
Участник
 
7 / 10 (1) +
Регистрация: 31.07.2014
Всем привет!
Не подскажете, как можно в NAV 2009R2 ограничить одной лицензией пользователя? Либо дать 1 лицензию на нескольких пользователей?
Старый 12.08.2014, 11:13   #2  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
пожалуйста, напишите подробнее, какого эффекта Вы пытаетесь достичь.
Старый 21.08.2014, 06:41   #3  
Casper71 is offline
Casper71
Участник
 
7 / 10 (1) +
Регистрация: 31.07.2014
Цитата:
Сообщение от Sancho Посмотреть сообщение
пожалуйста, напишите подробнее, какого эффекта Вы пытаетесь достичь.
Пытаюсь на 2 пользователя назначить 1 лицензию.
Должно это выглядеть следующим образом: права на НАВ есть у двоих людей, кто первый в НАВ зашёл - того и лицензия, при попытки зайти второму человеку выводилось сообщение, что нет боле доступных лицензия, т.к. ваша лицензия используется пользователем N.
После чего эти 2 челоовека между собой договариваются, кто когда заходит в НАВ.
Старый 21.08.2014, 11:35   #4  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
лицензия на одного пользователя - редкий зверь.
одно время Майкрософт генерил такие чуть ли не бесплатно, в промо-целях.
попробуйте, может дадут?

если в базу должен заходить только один человек, то при создании базы (SQL) можно поставить галочку Single User и проблема будет решена на уровне сервера

я бы при открытии базы посмотрел бы таблицу Session и если там есть уже активная сессия - выдавал бы ошибку "Система выполнила необъяснимую операцию и будет закрыта"
Старый 21.08.2014, 15:03   #5  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Если я правильно понимаю, то пользователей ка краз не 2, а больше. И проблема в том, что б они не отжирали боьлше одной лицензии?

Если так, то где то здесь или на mibuso была описана доработка по градуированию пользователей (что то вроде как для ген. дира всегда есть сессия, а для остальных как получится).Можно либо ее прикрутить либо допилить. Смысл доработки в проверке при логине к базе есть ли для данного пользователя с его приоритетом свободная сессия и если нет, то сессия отвеливается.
Старый 28.08.2014, 15:13   #6  
Casper71 is offline
Casper71
Участник
 
7 / 10 (1) +
Регистрация: 31.07.2014
Цитата:
Сообщение от Fordewind Посмотреть сообщение
Если я правильно понимаю, то пользователей ка краз не 2, а больше. И проблема в том, что б они не отжирали боьлше одной лицензии?

Если так, то где то здесь или на mibuso была описана доработка по градуированию пользователей (что то вроде как для ген. дира всегда есть сессия, а для остальных как получится).Можно либо ее прикрутить либо допилить. Смысл доработки в проверке при логине к базе есть ли для данного пользователя с его приоритетом свободная сессия и если нет, то сессия отвеливается.
Во Во Во!!!! то что надо!!! И это уже реализовано в моей конфигурации. Только не могу понять где именно?...
Старый 28.08.2014, 16:28   #7  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
посмотрите таблицу 91, я бы на ней сделал различные уровни доступа сотрудникам.
ну и таблица Session, по ней должно проверяться кто онлайн.
наверняка вызов функции осуществляется в 1-м кодеюните, на CompanyOpen, например.
а вот в какой таблице собственно настройка (какой роли сколько лицензий), где ее интерфейс - сказать не могу
Старый 31.08.2014, 13:09   #8  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от jopagames3
Но вот полноценное отключение, чтобы лицензия освободилась? (через хранимку если только, или все приложение неким демоном прибивать)
Именно через хранимку. Наш клиент заказал нам похожую по теме примочку, которая откличала по истечении определённого времени неактивных пользователей. Сделали setup-табличку, в которой каждому пользователю внесли макс. время в минутах, которое пользователь может быть неактивным. Хранимка на SQL-сервере запускается SQL-Agent'ом каждые 15 минут и кроме прочего запускает системную хранимку sys.dm_exec_sessions, находит нужную сессию требуемого пользователя и производит KILL. Это не совсем один к одному та задача которая поставлена Casper71 но копать нужно в эту сторону. Работает в 5-ке на ура, весь фокус ещё в том, чтобы в хранимку передавать название NAV-приложения, в 5-ке это "Microsoft Dynamics NAV client", в RTC должно тоже работать, там должно быть придётся на каждого пользователя инсталлировать 3-Tier-службу и потом имменно Session этой конкретной службы не давать соединяться, если пользователь не привилегирванный.
Старый 01.09.2014, 14:39   #9  
artkashin is offline
artkashin
Участник
MCBMSS
 
519 / 18 (2) ++
Регистрация: 06.12.2006
Цитата:
Сообщение от jopagames3

Но вот полноценное отключение, чтобы лицензия освободилась? (через хранимку если только, или все приложение неким демоном прибивать)
А в нативе? А в трехзвенном 13?
Session.DELETE(TRUE)?
только самого себя убить таким образом нельзя - только других)
в 13-м не проверял.
Старый 01.09.2014, 21:51   #10  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
Цитата:
Сообщение от jopagames3
Но вот полноценное отключение, чтобы лицензия освободилась? (через хранимку если только, или все приложение неким демоном прибивать)
А в нативе? А в трехзвенном 13?
а я где-то такое через SendKeys делал
для перезахода в базу выглядело это так:

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  
Sancho is offline
Sancho
Administrator
Аватар для Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1,294 / 221 (10) ++++++
Регистрация: 11.01.2006
Цитата:
Сообщение от jopagames3
ЗЫ: Для выхода из программы, когда уже открыто много окошек, конечно, не всегда прокатит, но при вызове из LoginStart - в самый раз.
FOR i := 1 TO 150
wndHost.SendKeys('{ESC}');


Старый 04.09.2014, 22:34   #12  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Можно ещё брутальнее:
Код:
windHost.SendKeys('%{F4}');
И тогда по барабану, сколько окошек открыто.
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 12:19.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.