Показано с 1 по 10 из 11

Тема: Просмотр сообщения события с помощью скрипта C#

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от Vinsen Посмотреть сообщение
    Здравствуйте. Пытаюсь перебрать все события в проекте и вытащить из них формулы и сообщения. С формулами проблем нет, предусмотрено специальное свойство Formula, а вот сообщения не могу понять как вытащить. Вот мой код:
    Код:
    public partial class ФБ : ScriptBase
    {
    
        const string FilePathName = "D:\\report.csv";
        
        public override void DoAction()
        {
        using (var file = new StreamWriter(FilePathName, false, Encoding.GetEncoding("windows-1251")))
        	{
        	//перебор всех значений данного объекта
    	    HostFB.TreeItemHlp.Project.ObjectTreeRootItem.NavigateChilds(delegate(ITreeObjectHlp e)
    	     {
    	     	if(e.TypeName == "Событие" || e.TypeName == "Расчет")
    	    		{
    	    			
    	    			var action = e as ParserHlp;
    	    	
    	    			if(action.Formula != null)
    	    			{
    					string frm = action.Formula.Replace("\n", "");
    					frm = frm.Replace("\r", "");
    		    			file.WriteLine(string.Format("{0};{1}", action.FullName, frm));
    	    			}
    	    		}
    	    		return true;	
    	     },  TreeItemMask.All, NavigateItemsFlags.CurrentComputer);  
    	    }
    	    }
    }
    Может кто-нибудь знает как получить сообщение, заранее благодарен
    Можешь поделиться итоговым скриптом?

  2. #2

    По умолчанию

    Цитата Сообщение от Pimpl Посмотреть сообщение
    Можешь поделиться итоговым скриптом?
    Получилось так:
    Код:
    using System;
    using MasterSCADA.Script.FB;
    using MasterSCADA.Hlp;
    using FB;
    using System.Linq;
    using System.Windows.Forms;
    using MasterSCADALib;
    using System.IO;
    using MasterSCADA.Documents;
    using System.Collections.Generic;
    using System.Text;
    using MasterSCADA.Common;
    using FB.FBAttributes;
    using System.ComponentModel;
    using InSAT.Library;
    
    public partial class ФБ : ScriptBase
    {
    
        const string FilePathNameFormls = "D:\\formuls.csv"; // Файл для формул
        const string FilePathNameEvnts = "D:\\events.csv"; // Файл для событий
        
        public override void DoAction()
        {
    		//Поиск События или Расчёта с заданными формулами
    		using (var file = new StreamWriter(FilePathNameFormls, false, Encoding.GetEncoding("windows-1251")))
    		{
    			//перебор всех значений данного объекта
    			HostFB.TreeItemHlp.Project.ObjectTreeRootItem.NavigateChilds(delegate(ITreeObjectHlp e)
    			{
    				if(e.TypeName == "Событие" || e.TypeName == "Расчет")
    					{
    							
    						var action = e as ParserHlp;
    							
    						if(action.Formula != null && (true/*Ещё какие-то условия, смторя что вы ищите*/))
    						{
    								
    							string frm = action.Formula.Replace("\n", "");
    							frm = frm.Replace("\r", "");
    							file.WriteLine(string.Format("{0};{1}", action.FullName, frm));
    						}
    					}
    					return true;	
    			},  TreeItemMask.All, NavigateItemsFlags.CurrentComputer);  
    		}
    		//Поиск события с заданным текстом сообщения
    		using (var file = new StreamWriter(FilePathNameEvnts, false, Encoding.GetEncoding("windows-1251")))
    		{
    			//перебор всех значений данного объекта
    			HostFB.TreeItemHlp.Project.ObjectTreeRootItem.NavigateChilds(delegate(ITreeObjectHlp e)
    			{
    				if(e.TypeName == "Событие")
    				{	
    					var action = e as EventHlp;
    							
    					if(action.Pattern != null && (true/*Ещё какие-то условия, смторя что вы ищите*/))
    						{
    							string frm = action.Pattern.Replace("\n", "");
    							frm = frm.Replace("\r", "");
    							file.WriteLine(string.Format("{0};{1}", action.FullName, frm));
    						}
    				}
    					return true;	
    			},  TreeItemMask.All, NavigateItemsFlags.CurrentComputer);  
    		}	
    	}
    }

Похожие темы

  1. Просмотр архивных файлов .csv
    от kondrat в разделе Эксплуатация
    Ответов: 14
    Последнее сообщение: 07.06.2017, 18:43
  2. Ответов: 1
    Последнее сообщение: 13.02.2017, 13:10
  3. Ответов: 7
    Последнее сообщение: 26.11.2013, 08:11
  4. Звук при выводе события и сообщения
    от Salvafion в разделе Master SCADA 3
    Ответов: 2
    Последнее сообщение: 06.09.2011, 16:29
  5. обращение к журналу из скрипта
    от Михаил Ч. в разделе Master SCADA 3
    Ответов: 5
    Последнее сообщение: 12.07.2010, 14:22

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •