Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Программное обеспечение
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Genesis32 (TrendWorX reporting, имя пользователя)

 Ответить Ответить
Автор
Сообщение
DubAlex Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 28 Февраль 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 212
Свойства публикации Свойства публикации   Ответить, цитируя автора - DubAlex Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Genesis32 (TrendWorX reporting, имя пользователя)
    Опубликовано: 12 Август 2009 08:52

Доброе утро!

Кто-нибудь пробовал с помощью TrendWorX reporting записывать в генерируемый отчет имя пользователя?

Стандартных средств в самом TrendWorX reporting'е я не увидел.

В TrendWorX Configurator'е хотел попробовать записывать в БД имя пользователя в качестве тега (а потом этот тег можно было бы отображать в отчете). Но не нашел тега с именем пользователя.

Остается вариант скрипта. Пока только одна задумка: с помощью VBA слежу за временем, в определенный момент выдергиваю имя пользователя, записываю его в только что сформированный Excel-отчет.

Последний вариант мне не нравится - опять VBA и слишком много действий.

Есть что-нибудь проще?

Наверх
Tierr Смотреть выпадающим
Новичок
Новичок
Аватар

Присоединился: 05 Февраль 2008
Категория: Ukraine
Online Status: Offline
Публикации: 1
Свойства публикации Свойства публикации   Ответить, цитируя автора - Tierr Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 13 Ноябрь 2009 15:12
Текстовую информацию, как я понял, через TrendWorX reporting вообще нельзя записать в отчет - исключительно цифровую.

Для себя нашел только один способ - записывать сторонними средствами информацию в шаблон перед формированием отчета.

По поводу записи в только что сформированный отчет не понял - Вы его по времени создания файла вычисляете?
Наверх
DubAlex Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 28 Февраль 2007
Категория: Russian Federation
Online Status: Offline
Публикации: 212
Свойства публикации Свойства публикации   Ответить, цитируя автора - DubAlex Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2009 11:26
По поводу записи в только что сформированный отчет - время формирования отчета всегда одно и тоже. Пусть оно будет 8:00. Тогда в 8:01 я запускаю скрипт, выдергиваю имя пользователя, записываю его в отчет. Как это делать - без понятия, придется изучать.
Может быть Ваш вариант и лучше, может лучше записывать в шаблон.
Наверх
Dismay Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 01 Июнь 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 464
Свойства публикации Свойства публикации   Ответить, цитируя автора - Dismay Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Ноябрь 2009 19:03
Первоначально опубликовано DubAlex

Доброе утро!


Кто-нибудь пробовал с помощью TrendWorX reporting записывать в генерируемый отчет имя пользователя?


Стандартных средств в самом TrendWorX reporting'е я не увидел.


В TrendWorX Configurator'е хотел попробовать записывать в БД имя пользователя в качестве тега (а потом этот тег можно было бы отображать в отчете). Но не нашел тега с именем пользователя.


Остается вариант скрипта. Пока только одна задумка: с помощью VBA слежу за временем, в определенный момент выдергиваю имя пользователя, записываю его в только что сформированный Excel-отчет.


Последний вариант мне не нравится - опять VBA и слишком много действий.


Есть что-нибудь проще?



Имя пользователя скриптом можно вытащить через WMI провайдера:
Option Explicit
Public Type HostParametrs
UserName As String
HostName As String
UserNameOnly As String
End Type


Public Function GetCurrentUser() As HostParametrs
Dim objWMIService, colItems, objItem As Object
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_ComputerSystem", , 48)
For Each objItem In colItems
    GetCurrentUser.HostName = objItem.Name
    GetCurrentUser.UserName = objItem.UserName
Next
    GetCurrentUser.UserNameOnly = Mid(GetCurrentUser.UserName, Len(GetCurrentUser.HostName) + 2)
End Function

'Проверка работы функции
Sub Test()
Dim Test As HostParametrs
Test = GetCurrentUser()
MsgBox "Имя хоста = " & Test.HostName & Chr(13) & _
"Имя текущего пользователя = " & Test.UserName & Chr(13) & _
"Имя без принадлежности домену = " & Test.UserNameOnly
End Sub
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz