Шаблоны Joomla 2.5 здесь: http://joomla25.ru/shablony/

Получить пользователя по сотруднику в 1С УНФ

В документах 1С УНФ часто в качестве ответственного указывается сотрудник, а не пользователь. Понадобилось получить пользователя сотрудника.  Была создана нижеприведенная функция.

 

НаСервере
Функция ПолучитьПользователяПоСотруднику(СотрудникСсылка) Экспорт   // Получаем пользователя по ответственному

    Запрос = Новый Запрос;

    //Установка значений параметров
    Запрос.УстановитьПараметр("Сотрудник", СотрудникСсылка);

    Запрос.Текст = "ВЫБРАТЬ
    |    СотрудникиПользователя.Сотрудник КАК Сотрудник,
    |    СотрудникиПользователя.Пользователь КАК Пользователь,
    |    СотрудникиПользователя.Пользователь.ИдентификаторПользователяИБ КАК ИдентификаторПользователяИБ
    |ИЗ
    |    РегистрСведений.СотрудникиПользователя КАК СотрудникиПользователя
    |ГДЕ
    |    СотрудникиПользователя.Сотрудник = &Сотрудник
    |   И СотрудникиПользователя.Пользователь.Недействителен = ЛОЖЬ";

    Результат = Запрос.Выполнить();
    Если Результат.Пустой() Тогда

        ИдентификаторПользователяИБ = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000");  // Пустой идентификатор
        СтруктураПараметрыПользователя = Новый Структура("Пользователь, ИдентификаторПользователяИБ", Справочники.Пользователи.ПустаяСсылка(), ИдентификаторПользователяИБ);
        Возврат СтруктураПараметрыПользователя;
    Иначе
        Выборка = Результат.Выбрать();
        Выборка.Следующий();
        СтруктураПараметрыПользователя = Новый Структура("Пользователь, ИдентификаторПользователяИБ", Выборка.Пользователь, Выборка.ИдентификаторПользователяИБ);
        Возврат СтруктураПараметрыПользователя;
    КонецЕсли;    

КонецФункции