Загрузка данных


&НаСервере
Функция ПроверитьПользователя(Логин, Пароль)
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Пользователи.Ссылка,
        |   Пользователи.Роль
        |ИЗ
        |   Справочник.Пользователи КАК Пользователи
        |ГДЕ
        |   Пользователи.Логин = &Логин
        |   И Пользователи.Пароль = &Пароль";
    
    Запрос.УстановитьПараметр("Логин", Логин);
    Запрос.УстановитьПараметр("Пароль", Пароль);
    
    РезультатЗапроса = Запрос.Выполнить();
    Если Не РезультатЗапроса.Пустой() Тогда
        Выборка = РезультатЗапроса.Выбрать();
        Выборка.Следующий();
        // Сохраняем роль в параметры сеанса или глобальную переменную для проверок
        ПараметрыСеанса.ТекущаяРоль = Выборка.Роль; 
Возврат Истина;
    Иначе
        Возврат Ложь;
    КонецЕсли;
КонецФункции

&НаКлиенте
Процедура Войти(Команда)
    Если ПроверитьПользователя(Логин, Пароль) Тогда
        // Открываем основную панель или список товаров
        ОткрытьФорму("Справочник.Товары.ФормаСписка");
        Закрыть(); // Закрываем форму входа
    Иначе
        Сообщить("Неверный логин или пароль!");
    КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ВойтиКакГость(Команда)
    // Гостю не нужна проверка
    ОткрытьФорму("Справочник.Товары.ФормаСписка", Новый Структура("ЭтоГость", Истина));
    Закрыть();
КонецПроцедуры