4 / 4 / 2
Регистрация: 26.08.2015
Сообщений: 59
|
||||||
1 | ||||||
1C 8.x Обработка результата запроса. Очень нужен дельный совет02.01.2016, 17:17. Показов 10577. Ответов 5
Метки нет (Все метки)
Добрый день дорогие форумчане))) !!!
Всех с наступившим новым годом!!! Очень нужна любая помощь в следующем: Есть задача по условию которой, при входе в систему, должна производиться проверка пользователя, является ли он администратором. Если является, то доп. проверки к этому пользователю не применяются. (Администратор - соответствующий булевский реквизит на форме элемента справочника "Пользователи"). Предполагал решить задачу след. образом: Написать функцию которая будет сравнивать имя текущего пользователя с наименованиями элементов из справочника "Пользователи" у которых реквизит "Администратор" = Истина и если совпадение найдено, тогда возврат истина если нет ложь. Попытался реализовать это следующим запросом:
Консолью запросов проверял, запрос отбирает всех нужных пользователей. Проверял код отладкой, Выборка Детальные записи, содержит только 1-й элемент отбора т.е. если по результату запроса отбираются Администратор и Администратор1, то выборка хранит в себе только 1-е значение. Помогите пожалуйста заставить работать эту функцию. За ранее безмерно благодарен!!!
0
|
02.01.2016, 17:17 | |
Ответы с готовыми решениями:
5
Мобильное приложение, нужен дельный совет Нужен дельный совет Нужен дельный совет Нужен дельный совет |
858 / 657 / 111
Регистрация: 01.11.2012
Сообщений: 2,411
|
|
02.01.2016, 17:49 | 2 |
А что в имени пользователя? В Отладчике?
Конечных пробелов в наименовании нет?
0
|
4 / 4 / 2
Регистрация: 26.08.2015
Сообщений: 59
|
|
02.01.2016, 17:59 [ТС] | 3 |
Честно говоря не додумался посмотреть, сейчас гляну, но думаю врятли.
0
|
Модератор
|
|||||||||||
02.01.2016, 18:25 | 4 | ||||||||||
Добавлено через 1 минуту enduromen, лучше отрулить ролями (Администратор и Пользователь) не нужен ни запрос ни флаг булево в справочнике
1
|
4 / 4 / 2
Регистрация: 26.08.2015
Сообщений: 59
|
||||||
02.01.2016, 20:45 [ТС] | 5 | |||||
Dethmontt, спасибо большое.
Если не сложно, объясните пожалуйста, почему данный код будет работать если в базе один администратор? Я нуб пока тяжеловато соображать. Если правильно понимаю то при таком написании в любом случае выбираются все элементы справочника у которых "Администратор"-истина и "ИмяПользователя" должно сравниваться с наименованием каждого элемента. По поводу варианта с ролями, спасибо, обязательно запомню на будущее. Добавлено через 29 минут Коллеги, нашел в чем проблема) Ситуация была в следующем: У меня в БД в справочнике "Пользователи", среди прочих, у двух элементов реквизит "Администратор" возведен в Истина. Как следствие, текущее имя пользователя сравнивается с наименованием каждого из элементов. Соответственно возвращаемых значений тоже будет 2 Истина и Ложь, поэтому функция всегда и возвращала ложь. Поправить код нужно следующим образом:
Вообще конечно кривовато написано, но работает. Надеюсь что ветка поможет таким же НУБам как я ))) Всем спасибо за проявленное участие!!!
0
|
Модератор
|
||||||
04.01.2016, 07:40 | 6 | |||||
Молодчик, начал думать!!!
Но к сожалению опять не в ту строну Если уж и оставлять вариант с поиском по "Наименованию" то лучше пусть запрос сразу возвращение нужне значение без перебора массива
0
|
04.01.2016, 07:40 | |
04.01.2016, 07:40 | |
Помогаю со студенческими работами здесь
6
Нужен дельный совет по сборке ПК Нужен дельный совет в создании эффекта Не работает UBS-порты, нужен дельный совет пропал звук на компьютере нужен дельный совет НЕкорректное отображение уровня заряда. Нужен дельный совет Нужен дельный совет (дети разлили воду на клавиатуру) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |