This is topic Настройка канала Пользователь в Trace Mode in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.
Доброго времени суток! есть главный экран на котором задается два параметра и с главного экрана можно перейти еще на три дополнительных экрана. создал три пользователя с разным уровнем доступа. первый пользователь может переходить на все экраны и задавать оба параметра. второй пользователь может переходить на два экрана, а третий только на один. задаю код доступа следующим образом: параметр 1- 0х1 параметр 2 - 0х2 кнопки имеют код доступа 0х3 экраны имеют код доступа 0х1, 0х2, 0х3, 0х4.
перехожу в редактор канала Пользователь и заполняю поля. для первого пользователя все нормально работает. а для второго нет, в поле экраны я ставлю галочки в 1, 3 и 4 ячейках, а в поле формы только в 3 ячейки. я думал что для второго пользователя будут активны только кнопки перехода на первом экране, но они вообще не активны. аналогичная проблема и для третьего пользователя. подскажите пожалуйста в чем ошибка???
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Доступность для пользователя функции управления или экрана определяется по результату побитового логического умножения маски прав заданных в настройках ПОЛЬЗОВАТЕЛЯ и числа, заданного в настройке КОД ДОСТУПА ГЭ или ЭКРАНА.
Из документации:
"При корреляции маски с кодом доступа (РЕЗУЛЬТАТ ПОБИТОВОГО ЛОГИЧЕСКОГО УМНОЖЕНИЯ ОТЛИЧЕН ОТ НУЛЯ) доступ к функциям управления разрешен, в противном случае – запрещен."
" При корреляции маски с кодом доступа (РЕЗУЛЬТАТ ПОБИТОВОГО ЛОГИЧЕСКОГО УМНОЖЕНИЯ ОТЛИЧЕН ОТ НУЛЯ) доступ к экрану разрешен, в противном случае – запрещен;"
Posted by AXUJLEC_AXUJLEC (Участник № / Member № 5845) on :
Окай! я это видел при изучении документации! но я не могу понять как осуществить это побитовое умножение. скажем есть четыре экрана с кодами доступа от 1 до 4. я хочу что бы пользователь имел доступ только к 1 и 4 экранам. как это задать в поле настройки доступа к Экранам в канале пользователь? то есть в каких ячейках необходимо поставить галочки для доступа только к 1 и 4 экранам? как произвести побитовое логическое умножение, что на что? если возможно покажите пожалуйста на примере!
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
побитовое умножение осуществляется над двумя числами, одно из них это код доступа к экрану, а второе число какое?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Второе число - маска соответствующих прав пользователя.
Posted by AXUJLEC_AXUJLEC (Участник № / Member № 5845) on :
посмотрел в документации маска прав пользователя для экрана FF, а для графических элементов FF00. перевел эти числа в бинарный вид. так же в бинарный вид перевел коды доступа ГЭ и экранов. далее совершил побитовое умножение. для экранов получил маски: для первого - 00000001 для второго - 00000010 для третьего - 00000011 для четвертого - 00000100 это верно? меня смущает то, что маски могут как бы накладываться, например я задам 1 и 2 экраны, а это получиться маска 3 и он тоже будет доступен. получается нужно еще определенным образом подбирать коды доступа. я правильно понимаю?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Учитывая, что код доступа в ГЭ однобайтовый (от 0 до 255), маску прав пользователя на "Формы" надо тоже задавать в младшем байте.
Действительно, маски могут накладываться. Соответственно надо задавать и коды доступа. Например, если для экранов будут заданы коды доступа для первого - 00000001 для второго - 00000010 для третьего - 00000100 для четвертого - 00001000, то можно задать для пользователй неперекрывающиеся маски доступа к экранам.
Posted by Ave Oleg (Участник № / Member № 6246) on :
Скажите пожалуйста, что нужно делать с результатом побитового умножения? Куда его нужно занести?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Результат побитового умножения вычисляется в МРВ автоматически и используется для оценки возможности предоставления текущему ПОЛЬЗОВАТЕЛЮ прав доступа к тем или иным экранам и функциям управления в ГЭ. Если "результат">0, ПОЛЬЗОВАТЕЛЬ получает доступ к соответствующему компоненту графического интерфейса. В противном случае ПОЛЬЗОВАТЕЛЬ не имеет доступа.