init: 导入项目到 meswork Gitea
This commit is contained in:
77
MisData_3.0_2022.08.23.1622.LLX/MES.BizFacade/MIS/Alarm.cs
Normal file
77
MisData_3.0_2022.08.23.1622.LLX/MES.BizFacade/MIS/Alarm.cs
Normal file
@@ -0,0 +1,77 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Data;
|
||||
using System.Collections;
|
||||
|
||||
using SystemFramework;
|
||||
|
||||
using bizFacade;
|
||||
|
||||
//using Monitor;
|
||||
|
||||
namespace bizFacade
|
||||
{
|
||||
/// <summary>
|
||||
/// Alarm 的摘要说明。
|
||||
/// </summary>
|
||||
public class Alarm
|
||||
{
|
||||
/// <summary>
|
||||
/// 报警
|
||||
/// </summary>
|
||||
public static DataTable alarmView;
|
||||
/// <summary>
|
||||
/// 产生报警
|
||||
/// </summary>
|
||||
public static Hashtable table_MSGBIT1;
|
||||
/// <summary>
|
||||
/// 解除报警
|
||||
/// </summary>
|
||||
public static Hashtable table_MSGBIT2;
|
||||
/// <summary>
|
||||
/// 报警列表
|
||||
/// </summary>
|
||||
public static Hashtable table_AlarmStart;
|
||||
|
||||
/// <summary>
|
||||
/// 系统启动后,没有解除的报警
|
||||
/// </summary>
|
||||
static public DataTable AlarmStart;
|
||||
/// <summary>
|
||||
/// 新产生报警临时表
|
||||
/// </summary>
|
||||
static public DataTable AlarmTemp;
|
||||
/// <summary>
|
||||
/// 解除的报警临时表
|
||||
/// </summary>
|
||||
static public DataTable AlarmTempOK;
|
||||
/// <summary>
|
||||
/// 时时产生的报警文本
|
||||
/// </summary>
|
||||
static public DataTable PLC_AlgViewCHT_Temp;
|
||||
/// <summary>
|
||||
/// 报警变量基本文本
|
||||
/// </summary>
|
||||
static public DataTable PLC_MSMsgs_WORK;
|
||||
|
||||
//static DataRow[] alarmDataRow;
|
||||
//static string strWhere;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public Alarm()
|
||||
{
|
||||
|
||||
table_MSGBIT1 = new Hashtable();
|
||||
table_MSGBIT2 = new Hashtable();
|
||||
table_AlarmStart = new Hashtable();
|
||||
//目的是创建PLC_MSMsgs_WORK数据表结构
|
||||
QualityDataSystem.PLC_MSMsgs_WORKSelect(out PLC_MSMsgs_WORK);
|
||||
//Init_table_AlarmStart(AlarmStart);
|
||||
AlarmTemp = AlarmCommonFunction.BuildDataTablesAlarmView(); // AlarmStart.Clone();
|
||||
AlarmTempOK = AlarmCommonFunction.BuildDataTablesAlarmView();// AlarmStart.Clone();
|
||||
alarmView = AlarmCommonFunction.BuildDataTablesAlarmView(); //GetInitAlarmStart(AlarmStart);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,371 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Data;
|
||||
using System.Collections;
|
||||
|
||||
using SystemFramework;
|
||||
|
||||
|
||||
|
||||
namespace bizFacade
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public class AlarmCommonFunction
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="AlarmTemp"></param>
|
||||
/// <param name="AlarmTempOK"></param>
|
||||
/// <returns></returns>
|
||||
static public DataTable GetAlarmView(DataTable AlarmTemp, DataTable AlarmTempOK)
|
||||
{
|
||||
DateTime lastupdatetime;
|
||||
DataRow dataRow;
|
||||
DataTable algView = AlarmCommonFunction.BuildDataTablesAlarmView();
|
||||
lastupdatetime = DateTime.Now;
|
||||
for (int i = 0; i < AlarmTemp.Rows.Count; i++)
|
||||
{
|
||||
dataRow = algView.NewRow();
|
||||
dataRow["AlarmID"] = AlarmTemp.Rows[i]["AlarmID"];
|
||||
dataRow["TagID"] = AlarmTemp.Rows[i]["TagID"];
|
||||
dataRow["TagValue"] = AlarmTemp.Rows[i]["TagValue"];
|
||||
|
||||
dataRow["MsgNr"] = AlarmTemp.Rows[i]["MsgNr"];
|
||||
dataRow["State"] = AlarmTemp.Rows[i]["State"];
|
||||
dataRow["DateTime"] = AlarmTemp.Rows[i]["alarmStartTime"];
|
||||
dataRow["alarmStartTime"] = AlarmTemp.Rows[i]["alarmStartTime"];
|
||||
dataRow["alarmEndTime"] = System.DBNull.Value;
|
||||
dataRow["TypeName"] = AlarmTemp.Rows[i]["TypeName"];
|
||||
dataRow["Text1"] = AlarmTemp.Rows[i]["Text1"];
|
||||
dataRow["Text2"] = AlarmTemp.Rows[i]["Text2"];
|
||||
dataRow["lastupdatetime"] = lastupdatetime;
|
||||
algView.Rows.Add(dataRow);
|
||||
}
|
||||
for (int i = 0; i < AlarmTempOK.Rows.Count; i++)
|
||||
{
|
||||
dataRow = algView.NewRow();
|
||||
dataRow["AlarmID"] = AlarmTempOK.Rows[i]["AlarmID"];
|
||||
dataRow["TagID"] = AlarmTempOK.Rows[i]["TagID"];
|
||||
dataRow["TagValue"] = AlarmTempOK.Rows[i]["TagValue"];
|
||||
|
||||
dataRow["MsgNr"] = AlarmTempOK.Rows[i]["MsgNr"];
|
||||
dataRow["State"] = AlarmTempOK.Rows[i]["State"];
|
||||
dataRow["DateTime"] = AlarmTempOK.Rows[i]["alarmEndTime"];
|
||||
dataRow["alarmStartTime"] = AlarmTempOK.Rows[i]["alarmStartTime"];
|
||||
dataRow["alarmEndTime"] = AlarmTempOK.Rows[i]["alarmEndTime"];
|
||||
dataRow["TypeName"] = AlarmTempOK.Rows[i]["TypeName"];
|
||||
dataRow["Text1"] = AlarmTempOK.Rows[i]["Text1"];
|
||||
dataRow["Text2"] = AlarmTempOK.Rows[i]["Text2"];
|
||||
dataRow["TimeDiff"] = AlarmTempOK.Rows[i]["TimeDiff"];
|
||||
dataRow["lastupdatetime"] = lastupdatetime;
|
||||
algView.Rows.Add(dataRow);
|
||||
}
|
||||
return algView;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 新产生解除报警临时表
|
||||
/// AlarmTempOK
|
||||
/// </summary>
|
||||
/// <param name="MSGVAR_Value">报警变量TagID</param>
|
||||
/// <param name="inValue">报警变量值</param>
|
||||
/// <param name="dateTimeValue">报警产生时间</param>
|
||||
/// <param name="table_MSGBIT2"></param>
|
||||
/// <param name="PLC_MSMsgs_WORK">全部报警报文</param>
|
||||
/// <param name="AlarmTempOK">被解除的报警列表</param>
|
||||
/// <param name="table_AlarmStart"></param>
|
||||
static public void ReleaseAlarmTemp(int MSGVAR_Value, object inValue, DateTime dateTimeValue,
|
||||
Hashtable table_MSGBIT2, DataTable PLC_MSMsgs_WORK,
|
||||
ref DataTable AlarmTempOK, ref Hashtable table_AlarmStart)
|
||||
{
|
||||
|
||||
AlarmText alarmText = new AlarmText();
|
||||
AlarmText alarmTextStart = new AlarmText();
|
||||
DataRow dataRow;
|
||||
DataTable data = AlarmCommonFunction.BuildDataTablesAlarmView();
|
||||
string strWhere;
|
||||
DataRow[] alarmDataRow;
|
||||
int NR;
|
||||
|
||||
alarmText.AlarmID = 0;
|
||||
alarmText.TagID = MSGVAR_Value;
|
||||
alarmText.TagValue = Convert.ToInt32(inValue);
|
||||
alarmText.alarmStartTime = dateTimeValue;
|
||||
|
||||
AlarmTempOK.Clear();
|
||||
//解除报警
|
||||
for (int i = 0; i < table_MSGBIT2.Count; i++)
|
||||
{
|
||||
|
||||
strWhere = @" (MSGVAR = " + MSGVAR_Value.ToString() + ") AND (MSGBIT=" + table_MSGBIT2[i].ToString() + ")";
|
||||
alarmDataRow = PLC_MSMsgs_WORK.Select(strWhere);
|
||||
|
||||
if (alarmDataRow.Length > 0)
|
||||
{
|
||||
NR = Convert.ToInt32(alarmDataRow[0]["NR"]);
|
||||
//报警存在于table_AlarmStart中
|
||||
if (table_AlarmStart.ContainsKey(NR))
|
||||
{
|
||||
alarmTextStart = (AlarmText)table_AlarmStart[NR];
|
||||
alarmText.AlarmID = alarmTextStart.AlarmID;
|
||||
alarmText.TypeName = alarmDataRow[0]["TypeName"].ToString();
|
||||
alarmText.Text1 = alarmDataRow[0]["Text1"].ToString();
|
||||
alarmText.Text2 = alarmDataRow[0]["Text2"].ToString();
|
||||
alarmText.MsgNr = Convert.ToInt32(alarmDataRow[0]["NR"]);
|
||||
alarmText.State = 2;
|
||||
alarmText.alarmStartTime = alarmTextStart.alarmStartTime;
|
||||
alarmText.alarmEndTime = DateTime.Now;
|
||||
|
||||
System.TimeSpan diff1 = alarmText.alarmEndTime.Subtract(alarmText.alarmStartTime);
|
||||
alarmText.TimeDiff = Convert.ToInt32(diff1.TotalSeconds);
|
||||
|
||||
//[测量数据报警全部];
|
||||
//QualityDataSystem.AlarmStartAllInsert(alarmText.AlarmID,
|
||||
// alarmText.TagID, alarmText.TagValue, alarmText.MsgNr,alarmText.State,
|
||||
// alarmText.alarmStartTime.ToString("G"), alarmText.alarmEndTime.ToString("G"),
|
||||
// alarmText.TimeDiff, alarmText.TypeName, alarmText.Text1, alarmText.Text2);
|
||||
|
||||
table_AlarmStart.Remove(NR);
|
||||
|
||||
dataRow = AlarmTempOK.NewRow();
|
||||
|
||||
dataRow["AlarmID"] = alarmText.AlarmID;
|
||||
dataRow["TagID"] = alarmText.TagID;
|
||||
dataRow["TagValue"] = alarmText.TagValue;
|
||||
dataRow["MsgNr"] = alarmText.MsgNr;
|
||||
dataRow["State"] = alarmText.State;
|
||||
dataRow["alarmStartTime"] = alarmText.alarmStartTime;
|
||||
dataRow["alarmEndTime"] = alarmText.alarmEndTime;
|
||||
dataRow["TimeDiff"] = alarmText.TimeDiff;
|
||||
dataRow["TypeName"] = alarmText.TypeName;
|
||||
dataRow["Text1"] = alarmText.Text1;
|
||||
dataRow["Text2"] = alarmText.Text2;
|
||||
AlarmTempOK.Rows.Add(dataRow);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 新产生报警临时表
|
||||
/// </summary>
|
||||
/// <param name="MSGVAR_Value"></param>
|
||||
/// <param name="inValue"></param>
|
||||
/// <param name="dateTimeValue"></param>
|
||||
/// <param name="table_MSGBIT1"></param>
|
||||
/// <param name="PLC_MSMsgs_WORK"></param>
|
||||
/// <param name="AlarmTemp"></param>
|
||||
/// <param name="table_AlarmStart"></param>
|
||||
static public void CraeteAlarmTemp(int MSGVAR_Value, object inValue, DateTime dateTimeValue,
|
||||
Hashtable table_MSGBIT1, DataTable PLC_MSMsgs_WORK,
|
||||
ref DataTable AlarmTemp, ref Hashtable table_AlarmStart)
|
||||
{
|
||||
|
||||
AlarmText alarmText;
|
||||
DataRow dataRow;
|
||||
string strWhere;
|
||||
DataRow[] alarmDataRow;
|
||||
int NR;
|
||||
|
||||
|
||||
alarmText = new AlarmText();
|
||||
|
||||
alarmText.AlarmID = 0;
|
||||
alarmText.TagID = MSGVAR_Value;
|
||||
alarmText.TagValue = Convert.ToInt32(inValue);
|
||||
alarmText.alarmStartTime = dateTimeValue;
|
||||
|
||||
AlarmTemp.Clear();
|
||||
|
||||
for (int i = 0; i < table_MSGBIT1.Count; i++)
|
||||
{
|
||||
|
||||
strWhere = @" (MSGVAR = " + MSGVAR_Value.ToString() + ") AND (MSGBIT=" + table_MSGBIT1[i].ToString() + ")";
|
||||
alarmDataRow = PLC_MSMsgs_WORK.Select(strWhere);
|
||||
|
||||
if (alarmDataRow.Length > 0)
|
||||
{
|
||||
NR = Convert.ToInt32(alarmDataRow[0]["NR"]);
|
||||
//报警不存在于table_AlarmStart中
|
||||
if (!table_AlarmStart.ContainsKey(NR))
|
||||
{
|
||||
alarmText.TypeName = alarmDataRow[0]["TypeName"].ToString();
|
||||
alarmText.Text1 = alarmDataRow[0]["Text1"].ToString();
|
||||
alarmText.Text2 = alarmDataRow[0]["Text2"].ToString();
|
||||
alarmText.MsgNr = Convert.ToInt32(alarmDataRow[0]["NR"]);
|
||||
alarmText.State = 1;
|
||||
//[测量数据报警全部];
|
||||
//QualityDataSystem.AlarmStartAllInsert(alarmText.AlarmID,
|
||||
// alarmText.TagID, alarmText.TagValue, alarmText.MsgNr,alarmText.State,
|
||||
// alarmText.alarmStartTime.ToString("G"), alarmText.alarmStartTime.ToString("G"),
|
||||
// 0, alarmText.TypeName, alarmText.Text1, alarmText.Text2);
|
||||
|
||||
dataRow = AlarmTemp.NewRow();
|
||||
|
||||
dataRow["AlarmID"] = alarmText.AlarmID;
|
||||
dataRow["TagID"] = alarmText.TagID;
|
||||
dataRow["TagValue"] = alarmText.TagValue;
|
||||
dataRow["MsgNr"] = alarmText.MsgNr;
|
||||
dataRow["State"] = alarmText.State;
|
||||
dataRow["alarmStartTime"] = alarmText.alarmStartTime;
|
||||
dataRow["TypeName"] = alarmText.TypeName;
|
||||
dataRow["Text1"] = alarmText.Text1;
|
||||
dataRow["Text2"] = alarmText.Text2;
|
||||
|
||||
AlarmTemp.Rows.Add(dataRow);
|
||||
|
||||
table_AlarmStart.Add(NR, alarmText);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获得产生或解除报警的位
|
||||
/// 根据报警值,通过与原始报警列表进行位操作比较,得到该报警值对应的报警文本列表
|
||||
/// </summary>
|
||||
/// <param name="alarmValue"></param>
|
||||
/// <param name="table_MSGBIT1"></param>
|
||||
/// <param name="table_MSGBIT2"></param>
|
||||
static public void GetBit(int alarmValue, out Hashtable table_MSGBIT1, out Hashtable table_MSGBIT2)
|
||||
{
|
||||
|
||||
int count1;
|
||||
int count2;
|
||||
table_MSGBIT1 = new Hashtable();
|
||||
table_MSGBIT2 = new Hashtable();
|
||||
count1 = 0;
|
||||
count2 = 0;
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
|
||||
if ((alarmValue & (int)Math.Pow(2, i)) == Math.Pow(2, i))
|
||||
{
|
||||
table_MSGBIT1.Add(count1, i);
|
||||
count1++;
|
||||
}
|
||||
else
|
||||
{
|
||||
table_MSGBIT2.Add(count2, i);
|
||||
count2++;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 创建报警列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
static public DataTable BuildDataTablesAlarmView()
|
||||
{
|
||||
//数据
|
||||
DataTable table;
|
||||
DataColumnCollection columns;
|
||||
|
||||
table = new DataTable();
|
||||
columns = table.Columns;
|
||||
|
||||
|
||||
columns.Add("AlarmID", typeof(System.Int32));
|
||||
columns.Add("TagID", typeof(System.Int32));
|
||||
columns.Add("TagValue", typeof(System.String));
|
||||
columns.Add("MsgNr", typeof(System.Int32));
|
||||
columns.Add("State", typeof(System.Int16));
|
||||
columns.Add("alarmStartTime", typeof(System.DateTime));
|
||||
columns.Add("alarmEndTime", typeof(System.DateTime));
|
||||
columns.Add("Comment", typeof(System.String));
|
||||
columns.Add("Username", typeof(System.String));
|
||||
columns.Add("Counter", typeof(System.Int32));
|
||||
columns.Add("TimeDiff", typeof(System.Int32));
|
||||
|
||||
columns.Add("TypeName", typeof(System.String));
|
||||
columns.Add("Text1", typeof(System.String));
|
||||
columns.Add("Text2", typeof(System.String));
|
||||
columns.Add("lastupdatetime", typeof(System.DateTime));
|
||||
columns.Add("DateTime", typeof(System.DateTime));
|
||||
|
||||
return table;
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public struct AlarmText
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public long ID;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public long AlarmID;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int TagID;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int TagValue;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int MsgNr;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int State;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public DateTime alarmStartTime;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public DateTime alarmEndTime;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string Comment;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string Username;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public long Counter;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int TimeDiff;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string TypeName;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string Text1;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string Text2;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public DateTime lastupdatetime;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int IsOk;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Data;
|
||||
using System.Collections;
|
||||
|
||||
using SystemFramework;
|
||||
|
||||
using bizFacade;
|
||||
|
||||
namespace bizFacade
|
||||
{
|
||||
/// <summary>
|
||||
/// Alarm 产生报警。
|
||||
/// </summary>
|
||||
public class AlarmOpcServer
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public static DataTable alarmView;
|
||||
/// <summary>
|
||||
/// 产生报警
|
||||
/// </summary>
|
||||
private Hashtable table_MSGBIT1;
|
||||
/// <summary>
|
||||
/// 解除报警
|
||||
/// </summary>
|
||||
private Hashtable table_MSGBIT2;
|
||||
/// <summary>
|
||||
/// 报警列表
|
||||
/// </summary>
|
||||
private Hashtable table_AlarmStart;
|
||||
|
||||
///// <summary>
|
||||
///// 报警代码
|
||||
///// </summary>
|
||||
//private int NR;
|
||||
|
||||
|
||||
///// <summary>
|
||||
///// 系统启动后,没有解除的报警
|
||||
///// </summary>
|
||||
//private static DataTable AlarmStart;
|
||||
/// <summary>
|
||||
/// 新产生报警临时表
|
||||
/// </summary>
|
||||
private DataTable AlarmTemp;
|
||||
/// <summary>
|
||||
/// 解除的报警临时表
|
||||
/// </summary>
|
||||
private DataTable AlarmTempOK;
|
||||
///// <summary>
|
||||
///// 时时产生的报警文本
|
||||
///// </summary>
|
||||
//private DataTable PLC_AlgViewCHT_Temp;
|
||||
/// <summary>
|
||||
/// 报警变量基本文本
|
||||
/// </summary>
|
||||
private DataTable PLC_MSMsgs_WORK;
|
||||
|
||||
//DataRow[] alarmDataRow;
|
||||
//string strWhere;
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public AlarmOpcServer()
|
||||
{
|
||||
//
|
||||
// TODO: 在此处添加构造函数逻辑
|
||||
//
|
||||
table_MSGBIT1 = new Hashtable();
|
||||
table_MSGBIT2 = new Hashtable();
|
||||
table_AlarmStart = new Hashtable();
|
||||
//目的是创建AlarmStart数据表结构
|
||||
//QualityDataSystem.AlarmStartSelect(out AlarmStart);
|
||||
QualityDataSystem.PLC_MSMsgs_WORKSelect(out PLC_MSMsgs_WORK);
|
||||
//Init_table_AlarmStart(AlarmStart);
|
||||
AlarmTemp = AlarmCommonFunction.BuildDataTablesAlarmView(); // AlarmStart.Clone();
|
||||
AlarmTempOK = AlarmCommonFunction.BuildDataTablesAlarmView();// AlarmStart.Clone();
|
||||
alarmView = AlarmCommonFunction.BuildDataTablesAlarmView(); //GetInitAlarmStart(AlarmStart);
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 产生报警文本
|
||||
/// </summary>
|
||||
/// <param name="MSGVAR_Value"></param>
|
||||
/// <param name="inValue"></param>
|
||||
/// <param name="dateTimeValue"></param>
|
||||
/// <returns></returns>
|
||||
public DataTable AlarmInsert(int MSGVAR_Value, object inValue, DateTime dateTimeValue)
|
||||
{
|
||||
try
|
||||
{
|
||||
//DataRow dataRow;
|
||||
DataTable algView ;//= AlarmCommonFunction.BuildDataTablesAlarmView();
|
||||
int alarmValue;
|
||||
alarmValue = Convert.ToInt32(inValue);
|
||||
|
||||
//获得报警值的报警位
|
||||
AlarmCommonFunction.GetBit(alarmValue,out table_MSGBIT1,out table_MSGBIT2);
|
||||
|
||||
// 新产生报警临时表
|
||||
// AlarmTemp
|
||||
AlarmCommonFunction.CraeteAlarmTemp(MSGVAR_Value, inValue, dateTimeValue,
|
||||
table_MSGBIT1, PLC_MSMsgs_WORK,
|
||||
ref AlarmTemp, ref table_AlarmStart);
|
||||
|
||||
//// 新产生报警临时表
|
||||
//// AlarmTemp
|
||||
//CraeteAlarmTemp(MSGVAR_Value, inValue, dateTimeValue);
|
||||
// 新产生解除报警临时表
|
||||
// AlarmTempOK
|
||||
AlarmCommonFunction.ReleaseAlarmTemp(MSGVAR_Value, inValue, dateTimeValue,
|
||||
table_MSGBIT2, PLC_MSMsgs_WORK,
|
||||
ref AlarmTempOK, ref table_AlarmStart);
|
||||
//ReleaseAlarmTemp(MSGVAR_Value, inValue, dateTimeValue);
|
||||
algView = AlarmCommonFunction.GetAlarmView(AlarmTemp, AlarmTempOK);
|
||||
|
||||
return algView;
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
ApplicationLog.WriteLog(err, "\r\nAlarmInsert(产生报警模块)\r\nAlarmInsert\r\nMSGVAR_Value(TagID)=" + MSGVAR_Value.ToString() + "\r\ninValue=" + inValue.ToString());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using DataLinkMesWork;
|
||||
using System.Collections;
|
||||
using System.Collections.Specialized;
|
||||
using SystemFramework;
|
||||
using System.Data.OleDb;
|
||||
|
||||
namespace bizFacade
|
||||
{
|
||||
/// <summary>
|
||||
/// 机床加工时间
|
||||
/// </summary>
|
||||
public partial class QualityDataSystem
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 从Access 数据库获得,报警变量基本文本
|
||||
/// </summary>
|
||||
public static bool PLC_MSMsgs_WORKSelect(out DataTable dt)
|
||||
{
|
||||
string sql = "SELECT * FROM [MES_基本变量_报警报文] ";
|
||||
return DataAccess.ExecuteDataTable(sql, out dt);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// INSERT INTO [测量数据报警全部]
|
||||
/// </summary>
|
||||
/// <param name="dt"></param>
|
||||
/// <returns></returns>
|
||||
public static void AlarmStartAllInsert(DataTable dt)
|
||||
{
|
||||
string sql;
|
||||
sql = "INSERT INTO [测量数据报警全部]"
|
||||
+ "(AlarmID,TagID, TagValue, MsgNr, State,alarmStartTime,alarmEndTime,TimeDiff,TypeName,Text1, Text2,lastupdatetime)"
|
||||
|
||||
+ "VALUES(@AlarmID,@TagID,@TagValue,@MsgNr,@State,@alarmStartTime,@alarmEndTime,@TimeDiff,@TypeName,@Text1,@Text2,@lastupdatetime)";
|
||||
|
||||
|
||||
OleDbParameter[] thisParmsAccess = new OleDbParameter[12];
|
||||
thisParmsAccess[0] = new OleDbParameter("@AlarmID", OleDbType.Integer, 4, "AlarmID");
|
||||
thisParmsAccess[1] = new OleDbParameter("@TagID", OleDbType.Integer, 4, "TagID");
|
||||
thisParmsAccess[2] = new OleDbParameter("@TagValue", OleDbType.Integer, 4, "TagValue");
|
||||
thisParmsAccess[3] = new OleDbParameter("@MsgNr", OleDbType.Integer, 4, "MsgNr");
|
||||
thisParmsAccess[4] = new OleDbParameter("@State", OleDbType.Integer, 4, "State");
|
||||
thisParmsAccess[5] = new OleDbParameter("@alarmStartTime", OleDbType.Date, 8, "alarmStartTime");
|
||||
thisParmsAccess[6] = new OleDbParameter("@alarmEndTime", OleDbType.Date, 8, "alarmEndTime");
|
||||
thisParmsAccess[7] = new OleDbParameter("@TimeDiff", OleDbType.Integer, 4, "TimeDiff");
|
||||
thisParmsAccess[8] = new OleDbParameter("@TypeName", OleDbType.VarChar, 50, "TypeName");
|
||||
thisParmsAccess[9] = new OleDbParameter("@Text1", OleDbType.VarChar, 50, "Text1");
|
||||
thisParmsAccess[10] = new OleDbParameter("@Text2", OleDbType.VarChar, 50, "Text2");
|
||||
thisParmsAccess[11] = new OleDbParameter("@lastupdatetime", OleDbType.Date, 8, "lastupdatetime");
|
||||
//
|
||||
SqlParameter[] thisParmsSql = new SqlParameter[12];
|
||||
thisParmsSql[0] = new SqlParameter("@AlarmID", SqlDbType.Int, 4, "AlarmID");
|
||||
thisParmsSql[1] = new SqlParameter("@TagID", SqlDbType.Int, 4, "TagID");
|
||||
thisParmsSql[2] = new SqlParameter("@TagValue", SqlDbType.Int, 4, "TagValue");
|
||||
thisParmsSql[3] = new SqlParameter("@MsgNr", SqlDbType.Int, 4, "MsgNr");
|
||||
thisParmsSql[4] = new SqlParameter("@State", SqlDbType.Int, 4, "State");
|
||||
thisParmsSql[5] = new SqlParameter("@alarmStartTime", SqlDbType.DateTime, 8, "alarmStartTime");
|
||||
thisParmsSql[6] = new SqlParameter("@alarmEndTime", SqlDbType.DateTime, 8, "alarmEndTime");
|
||||
thisParmsSql[7] = new SqlParameter("@TimeDiff", SqlDbType.Int, 4, "TimeDiff");
|
||||
thisParmsSql[8] = new SqlParameter("@TypeName", SqlDbType.NVarChar, 50, "TypeName");
|
||||
thisParmsSql[9] = new SqlParameter("@Text1", SqlDbType.NVarChar, 50, "Text1");
|
||||
thisParmsSql[10] = new SqlParameter("@Text2", SqlDbType.NVarChar, 50, "Text2");
|
||||
thisParmsSql[11] = new SqlParameter("@lastupdatetime", SqlDbType.DateTime, 8, "lastupdatetime");
|
||||
|
||||
if (SQLCommon.SqlServerConnectionStatus)
|
||||
{
|
||||
DataAccess.ExecuteSQL(sql, ref thisParmsSql, dt);
|
||||
}
|
||||
if (!SQLCommon.SqlServerConnectionStatus)
|
||||
{
|
||||
DataAccess.ExecuteDataTable_OleDb_Insert_Access(sql, dt, ref thisParmsAccess);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using DataLinkMesWork;
|
||||
using System.Collections;
|
||||
using System.Collections.Specialized;
|
||||
using SystemFramework;
|
||||
|
||||
namespace bizFacade
|
||||
{
|
||||
/// <summary>
|
||||
/// QualityDataSystem 的摘要说明。
|
||||
/// </summary>
|
||||
public partial class QualityDataSystem
|
||||
{
|
||||
/// <summary>
|
||||
/// 全部数据列表
|
||||
/// MES_基本变量_原始数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
static public DataTable BasicDataTagValue()
|
||||
{
|
||||
DataTable dt = null;
|
||||
|
||||
string sql;
|
||||
sql = "SELECT * FROM MES_基本变量_原始数据 where (变量类型代码=101 or 变量类型代码 = 102 or 变量类型代码 = 105) "
|
||||
+ " and (是否启用 = 1)"
|
||||
+ " and (监控属性代码 = '" + ApplicationConfig.MES_Code.ToString() + "')"
|
||||
+ " order by TagID";
|
||||
DataAccess.ExecuteDataTable(sql, out dt);
|
||||
return dt;
|
||||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// MES_基本数据_测量范围
|
||||
/// 从数据库服务器获得
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
static public DataTable BasicDataTagValueUpDown()
|
||||
{
|
||||
DataTable dt = null;
|
||||
string sql;
|
||||
sql = "SELECT * FROM MES_基本数据_测量范围 order by 发动机型号代码,TagID";
|
||||
DataAccess.ExecuteDataTable(sql, out dt);
|
||||
return dt;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
BIN
MisData_3.0_2022.08.23.1622.LLX/MES.BizFacade/MIS/vssver2.scc
Normal file
BIN
MisData_3.0_2022.08.23.1622.LLX/MES.BizFacade/MIS/vssver2.scc
Normal file
Binary file not shown.
Reference in New Issue
Block a user