public override List <List <string> > CreateList(CreateDataMath <string, List <ConveyorRow> > dataMath) { List <List <string> > sOutPutSingleData = new List <List <string> >(); string sAtiveSingle = null; //使能信号 EnumerableRowCollection <DataRow> MainRows = LinqToTable(); var PlcGroups = from p in MainRows group p by new { system = p.Field <string>(baseParameter.TaglistColName.sSystem), plc = p.Field <string>(baseParameter.TaglistColName.sPLC) } into pp select pp; foreach (var plcGroup in PlcGroups) { List <ConveyorRow> conveyorRows = new List <ConveyorRow>(); List <string> SignalGroup = new List <string>(); string sSystem = plcGroup.Key.system; string sPlcLink = plcGroup.Key.plc; sAtiveSingle = string.Format(baseParameter.Stemp0, sSystem, sPlcLink); SignalGroup.Add(sAtiveSingle); foreach (DataRow selectRow in plcGroup) { conveyorRows.Add(new ConveyorRow(baseParameter.TaglistColName, selectRow)); } SignalGroup.AddRange(dataMath(conveyorRows)); sOutPutSingleData.Add(SignalGroup); } return(sOutPutSingleData); }
private void ElementSearchOutputFilePathbutton_Click(object sender, RoutedEventArgs e) { string sFileStyle = "XML | *.xml"; string UIKey = "ElementSearchOutputFilePathBox"; string UIKey1 = "OutPutDatasteBox"; string sOutFilePath = UIdictionary[UIKey].MyString; bool bOpenEnable = Outputfile(ref sOutFilePath, sFileStyle); UIdictionary[UIKey1].MyString = ""; try { if (bOpenEnable) { BaseFactory factory = new BaseFactory(CreateConvertParameter()); ElementSearchData elmentSearchData = (ElementSearchData)factory.CreatDataClass("ElementSearchData"); CreateDataMath <ElementSeacrhStruct, ConveyorRow> elmentSearchMath = elmentSearchData.CreateElements; List <ElementSeacrhStruct> lelmentSearchData = elmentSearchData.CreateList(elmentSearchMath); ElementSearchXml elementSearchXml = new ElementSearchXml(); elementSearchXml.Elements = lelmentSearchData; UIdictionary[UIKey1].MyString = DataConvert.ToString(lelmentSearchData); UIdictionary[UIKey].MyString = sOutFilePath; XmlSerialiaztion.XmlSerial(sOutFilePath, elementSearchXml); } } catch (Exception ex) { MessageBox.Show("Build Element Search Data Error: " + ex.Message); } GC.Collect(); }
private void Level1DataOutputbutton_Click(object sender, RoutedEventArgs e) { string sFileStyle = "Text documents (.vsignal)|*.vsignal"; string UIKey = "Level1DataOutPutFilePathteBox"; string UIKey1 = "OutPutDatasteBox"; string sFilePath = UIdictionary[UIKey].MyString; UIdictionary[UIKey1].MyString = ""; try { bool bOpenEnable = Outputfile(ref sFilePath, sFileStyle); if (bOpenEnable == true) { BaseFactory factory = new BaseFactory(); factory.BaseParameter = CreateConvertParameter(); factory.TempTable = Level1DataExcelData; Level1Data level1Data = (Level1Data)factory.CreatDataClass("Level1Data"); CreateDataMath <string, List <ConveyorRow> > dataMath = level1Data.CreateLineSignal; var level1DataList = level1Data.CreateList(dataMath); UIdictionary[UIKey].MyString = sFilePath; UIdictionary[UIKey1].MyString = DataConvert.ToString1(level1DataList); System.IO.File.WriteAllText(@sFilePath, UIdictionary[UIKey1].MyString, Encoding.UTF8); } } catch (Exception ex) { MessageBox.Show("Build Level1 Data Error: " + ex.Message); } GC.Collect(); }
//public abstract string ToString(); //public abstract int ToInt(); public virtual List <List <string> > CreateList(CreateDataMath <List <string>, ConveyorRow> dataMath) { List <List <string> > lOutPut = new List <List <string> >(); foreach (DataRow selectConRow in baseParameter.TaglistTable.Rows) { var conveyor = new ConveyorRow(baseParameter.TaglistColName, selectConRow); lOutPut.AddRange(dataMath(conveyor)); } return(lOutPut); }
public override List <T1> CreateList <T1>(CreateDataMath <T1, ConveyorRow> dataMath) { List <T1> lOutPut = new List <T1>(); EnumerableRowCollection <DataRow> MainRows = LinqToTable(); foreach (DataRow selectConRow in MainRows) { var conveyor = new ConveyorRow(baseParameter.TaglistColName, selectConRow); lOutPut.AddRange(dataMath(conveyor)); } return(lOutPut); }
public virtual List <List <T1> > CreateList <T1>(CreateDataMath <T1, List <ConveyorRow> > dataMath) { List <List <T1> > lOutPut = new List <List <T1> >(); List <ConveyorRow> conveyors = new List <ConveyorRow>(); foreach (DataRow selectConRow in baseParameter.TaglistTable.Rows) { var conveyor = new ConveyorRow(baseParameter.TaglistColName, selectConRow); conveyors.Add(conveyor); } lOutPut.Add(dataMath(conveyors)); return(lOutPut); }
//生成DataTable数据 public override List <List <string> > CreateList(CreateDataMath <List <string>, ConveyorRow> dataMath) { List <List <string> > lOutPut = new List <List <string> >(); List <string> opcColunms = new List <string>(); foreach (string colunm in oPCColName) { opcColunms.Add(colunm); } lOutPut.Add(opcColunms); foreach (DataRow selectConRow in baseParameter.TaglistTable.Rows) { var conveyor = new ConveyorRow(baseParameter.TaglistColName, selectConRow); lOutPut.AddRange(dataMath(conveyor)); } return(lOutPut); }
public override List <List <string> > CreateList(CreateDataMath <string, List <ConveyorRow> > dataMath) { EnumerableRowCollection <DataRow> MainRows = LinqToTable(); List <List <string> > lOutPut = new List <List <string> >(); var ELementLineGroups = from p in MainRows group p by new { system = p.Field <string>(baseParameter.TaglistColName.sSystem), plc = p.Field <string> (baseParameter.TaglistColName.sPLC), line = p.Field <string>(baseParameter.TaglistColName.sEquipmentLine), view = p.Field <string>(baseParameter.TaglistColName.sLevel2View), draw = p.Field <string>(baseParameter.TaglistColName.sDrawOnViews) } into pp select pp; foreach (var ELementLineGroup in ELementLineGroups) { List <string> lineSiganlData = new List <string>(); string sSystem = ELementLineGroup.Key.system; string sPlcLink = ELementLineGroup.Key.plc; string sEquipmentLine = ELementLineGroup.Key.line; string sAreaLevel2view = ELementLineGroup.Key.view; string sDraw = ELementLineGroup.Key.draw; if (sDraw.ToLower() == "all") { string sLinesSingle = string.Format("{0}_{1}_{2}_{3}_{4}_Line_AC", sSystem, sPlcLink, sEquipmentLine, sPlcLink, sAreaLevel2view); string sDescrible = string.Format("//LineCode for {0}", sLinesSingle) + "\r\n"; lineSiganlData.Add(sDescrible); List <ConveyorRow> conveyorRows = new List <ConveyorRow>(); foreach (DataRow selectConRow in ELementLineGroup) { var conveyorRow = new ConveyorRow(baseParameter.TaglistColName, selectConRow); conveyorRows.Add(conveyorRow); } lineSiganlData.AddRange(dataMath(conveyorRows)); lOutPut.Add(lineSiganlData); } } return(lOutPut); }
/// <summary> /// 测试记录表格输出 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void TestListOutputbutton_Click(object sender, RoutedEventArgs e) { string sFileStyle = "Excel(.xlsx) | *.xlsx|Excel(.xls) | *.xls"; string UIKey = "TestListOutPutFilePathteBox"; string UIKey1 = "OutPutDatasteBox"; string UIKey2 = "TestListTemplateteBox"; string sFilePath = UIdictionary[UIKey].MyString; UIdictionary[UIKey1].MyString = ""; //try //{ bool bOpenEnable = Outputfile(ref sFilePath, sFileStyle); if (bOpenEnable == true) { BaseFactory factory = new BaseFactory(); factory.BaseParameter = CreateConvertParameter(); TestList listData = (TestList)factory.CreatDataClass("TestList"); CreateDataMath <List <TestSheetRow>, ConveyorRow> testdataMath = listData.CreateTestRows; CreateDataMath <List <string>, ConveyorRow> cmcdataMath = listData.CreateCMCRows; List <List <TestSheetRow> > testDataRows = listData.CreateList(testdataMath); List <List <string> > cmcDataRows = listData.CreateList(cmcdataMath); NpoiExcelFunction.ExcelWrite(sFilePath, "CMC", cmcDataRows); NpoiExcelFunction.ExcelWrite(sFilePath, "Test", testDataRows); UIdictionary[UIKey].MyString = sFilePath; //NpoiExcelFunction.ExcelWrite(sFilePath, (ListData as TestList).ListData); UIdictionary[UIKey1].MyString = "Output Test List successful!"; } //} //catch (Exception ex) //{ // MessageBox.Show("Build Test List Error: " + ex.Message); //} GC.Collect(); }
/// <summary> /// 测试数据输出 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void TestDataOutputbutton_Click(object sender, RoutedEventArgs e) { string sFileStyle = "SIG File(.signaltester) | *.signaltester"; string UIKey = "TestdataOutPutFilePathteBox"; string UIKey1 = "OutPutDatasteBox"; string UIKey3 = "L1raButton"; string UIKey4 = "L2raButton"; string sFilePath = UIdictionary[UIKey].MyString; try { bool bOpenEnable = Outputfile(ref sFilePath, sFileStyle); if (bOpenEnable == true) { BaseFactory factory = new BaseFactory(); factory.BaseParameter = CreateConvertParameter(); TestData TestData = (TestData)factory.CreatDataClass("TestData"); List <List <string> > TestDataList = new List <List <string> >(); if (UIdictionary[UIKey3].Mybool == true) { CreateDataMath <string, List <ConveyorRow> > dataMath = TestData.CreateL1Signal; TestDataList = TestData.CreateList(dataMath); } if (UIdictionary[UIKey4].Mybool == true) { CreateDataMath <string, List <ConveyorRow> > dataMath = TestData.CreateL2Signal; TestDataList = TestData.CreateList(dataMath); } UIdictionary[UIKey].MyString = sFilePath; UIdictionary[UIKey1].MyString = DataConvert.ToString(TestDataList); System.IO.File.WriteAllText(@sFilePath, UIdictionary[UIKey1].MyString, Encoding.UTF8); } } catch (Exception ex) { MessageBox.Show("Build Test data Error: " + ex.Message); } GC.Collect(); }
private void OPCDataOutputbutton_Click(object sender, RoutedEventArgs e) { //string sFileStyle = "Excel(.xlsx) | *.xlsx|Excel(.xls) | *.xls"; string sFileStyle = "Excel(.csv) | *.csv"; string UIKey = "OPCDataOutPutFilePathteBox"; string UIKey1 = "OutPutDatasteBox"; string UIKey2 = "SinglecheckBox"; string UIKey3 = "CommandcheckBox"; string UIKey4 = "HourcheckBox"; string sFilePath = UIdictionary[UIKey].MyString; bool bOpenEnable = Outputfile(ref sFilePath, sFileStyle); UIdictionary[UIKey1].MyString = ""; try { if (bOpenEnable) { BaseFactory factory = new BaseFactory(); factory.BaseParameter = CreateConvertParameter(); factory.bSingle = (bool)UIdictionary[UIKey2].Mybool; factory.bCommand = (bool)UIdictionary[UIKey3].Mybool; factory.bHours = (bool)UIdictionary[UIKey4].Mybool; OPCData opcData = (OPCData)factory.CreatDataClass("OPCData"); CreateDataMath <List <string>, ConveyorRow> createOPCMath = opcData.CreateOPCRows; var opcdataList = opcData.CreateList(createOPCMath); UIdictionary[UIKey].MyString = sFilePath; //ExcelFunction.ExcelWrite(sFilePath, dt); CsvFunction.CsvWirte(sFilePath, opcdataList); UIdictionary[UIKey1].MyString = DataConvert.ToString(opcdataList); } } catch (Exception ex) { MessageBox.Show("Build OPC Data Error: " + ex.Message); } GC.Collect(); }
public override List <T1> CreateList <T1>(CreateDataMath <T1, ConveyorRow> dataMath) { return(base.CreateList <T1>(dataMath)); }