Тема: Системная настройка пользователей (Для отчетов)

Добрый день.
Стоит задача: в отчет Excel вставлять ФИО пользователя, который его формирует.

В системных настройках (для отчетов) создал объект "Пользователь", на вкладке "Системная настройка пользователей" составил список и для каждого пользователя в графе "Значение" присвоил их ФИО.

Далее в функциях к шаблону отчета в наборе данных прописал:

Function GetUser
GetUser = TCSRpt.RptFunc.SystemValue( "Пользователь" )
End Function

И создал переменную User со значением GetUser в именованных объектах к шаблону отчета. В бланке, который будем формировать, вписал в области Карта1 служебное слово ?User.

Так вот проблема: какой бы пользователь из списка созданных мною не пытался сформировать отчет, переменная User принимает значение системной настройки (для отчетов) "по умолчанию",
т.е. то что записано на вкладке  "основные свойства", а не те которые я создавал под конкретного пользователя на вкладке "Системная настройка пользователей".
Прошу подскажите, что сделал не так или как выполнить другим способом?

TSC Версия: 7.9.1.0(39709)

Re: Системная настройка пользователей (Для отчетов)

Добрый день!
Попробуйте так:

GetUser = TCSRpt.RptFunc.SystemReportCallerValue("Пользователь")

Re: Системная настройка пользователей (Для отчетов)

Виктор Бебякин пишет:

Добрый день!
Попробуйте так:

GetUser = TCSRpt.RptFunc.SystemReportCallerValue("Пользователь")

спасибо, действительно работает.

а есть ли возможность чтобы вставлялась картинка по пользователю, имею ввиду подпись

Re: Системная настройка пользователей (Для отчетов)

Картинку вставить можно, напиример из файла на диске, но она должна быть в корне папки выгрузки отчета (временная папка), то есть, перед формирование отчета нужно скопировать картинки в эту папку.
Далее нужно создать переменную, например "UserSign"

GetUserSign()


OUTPUT
IMAGE
Function GetUserSign()
  GetUserSign = TCSRpt.RptFunc.SystemValue( "подпись" ) ' имя файла изображения
End Function

Или выгружать изображения из документа используя АПИ

  dim doc' as ISingleDoc
  ' находим документ с картинками
  set doc = theApp.SingleDoc(<параметры поиска документа с картинками>)
  if not doc Is Nothing then
    dim files 'as IDocFiles
    Set files = doc.Properties("FILES").AsIDispatch
    call files.SaveAs(ScriptHelper.ApplicationTempDirectory & "\" & files.p_NAME.AsString, CSDN_Const.ffOverwrite)
  end if
Спасибо сказали: Михаил Ш1

(изменено: Михаил Ш, 22 декабря 2020 08:33:09)

Re: Системная настройка пользователей (Для отчетов)

Спасибо! работает.
Кстати после формирование бланка, он удаляет картинку. Лечится если поставить свойство "только для чтения" в настройках картинки.