всё про API в CAD/PLM/PDM
 
Логирование событий

Логирование событий

Всего, можно сказать, 3 вывода куда можно показать текст лога. Два в клиенте и 1 серверный лог.

  • Лог вывода в Уведомления. Тут совсем немного сложнее. Надо подготовить текст для вывода, что открывает возможности побольше чем просто текст
var uiNotificationService = ServicesManager.GetService(typeof(IUINotificationService)) as IUINotificationService;
var uiNotificationBuilder = new UINotificationBuilder();
uiNotificationBuilder.Message = "Тут произошел вывод информации в уведомления";
uiNotificationBuilder.Icon = UINotificationIcon.Info;
uiNotificationBuilder.SetContentAction(uiNotificationService.GetUINotificationAction(null, "ЛОГИРОВАНИЕ"));
uiNotificationService.ShowNotification(uiNotificationBuilder.Build());
  • Лог в нижнее окно Вывод. Ну тут всё просто: получаем сервис и пишем. Обратите внимание на первый параметр — это текст, который появится в выпадашке выбора
IOutputView outputLog = ServicesManager.GetService(typeof(IOutputView)) as IOutputView;
outputLog.WriteString("Вывод из скрипта",
    string.Format("Событие залогировано {0}", DateTime.Today.ToString()));
  • Лог в файл на сервере. Очень хорошая концепция, когда операция выполняется на сервере, или когда ну совсем не надо выводить что-то в клиент
scriptSession.EventLog.AddToTrace("Произошедшее событие", Intermech.Consts.traceAlways, "MyLogFile.log");