8.х передача параметра сенаса в отчет СКД

Тема в разделе "Система компоновки данных (СКД)", создана пользователем JediAlex, 22 май 2017.

  1. TopicStarter Overlay
    JediAlex
    Offline

    JediAlex Опытный в 1С

    Регистрация:
    27 авг 2011
    Сообщения:
    178
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте. В собственной конфигурации делаю отчет в СКД. Нужно выбрать записи из регистра накопления с измерением "Сотрудник" за определенный период. Сделал запрос, отчет настроил - все нормально выводится. Вопрос в том, что надо в параметр "Сотрудник" передать параметр сеанса "Сотрудник", чтоб записи выводились для текущего сотрудника и установить ограничение доступности, чтоб сотрудник не мог формировать отчет для других сотрудников. Как по умолчанию установить значение параметра равное параметру сеанса7 помогите пожалуйста. Снимок.JPG
  2. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    7.807
    Симпатии:
    496
    Баллы:
    104
    СКД может использовать только функции общих модулей. Создать общий модуль, добавить там функции и передавать в параметр.
  3. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.128
    Симпатии:
    953
    Баллы:
    204
    Эээ...а не проще будет при открытии формы отчета установить значение параметра из параметров сеанса?
  4. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    7.807
    Симпатии:
    496
    Баллы:
    104
    Действительно)))
  5. TopicStarter Overlay
    JediAlex
    Offline

    JediAlex Опытный в 1С

    Регистрация:
    27 авг 2011
    Сообщения:
    178
    Симпатии:
    0
    Баллы:
    26
    Сделал общий модуль, поставил галку "Сервер". В модуле написал функцию
    Код:
    Функция ПолучитьТекущегоПользователя() Экспорт
    ТекущийПользователь=ПараметрыСеанса.ТекущийПользователь.ФизЛицо;
    Возврат ТекущийПользователь;
    КонецФункции    
    В СКД задал выражение для параметра(см.рис.) В результатекогдаоткрыавю по ссылке отчет, в форме параметр не заполнен, а при нажатии "Сформировать" вываливается ошибка "
    Ошибка выполнения отчета
    по причине:
    Ошибка исполнения отчета
    по причине:
    Ошибка инициализации
    по причине:
    Функция не найдена "ПолучитьТекущегоПользователя"
    " Снимок1.JPG
  6. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    7.807
    Симпатии:
    496
    Баллы:
    104
    Ну во-первых имя модуля-то тоже было бы неплохо указать. И вариант, предложенный предыдущим оратором лучше. Не придется создавать общий модуль.
  7. TopicStarter Overlay
    JediAlex
    Offline

    JediAlex Опытный в 1С

    Регистрация:
    27 авг 2011
    Сообщения:
    178
    Симпатии:
    0
    Баллы:
    26
    пробовал так:
    Код:
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
        Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Сотрудник",ПараметрыСеанса.ТекущийПользователь.ФизЛицо);
    КонецПроцедуры
    
    ничего не происходит. Значение параметра пустое.

Поделиться этой страницей