/// <summary> /// Auswahl der Datendatei für Eplan / Comos Vergleich /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSelectFileEplanContent_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "XML"; // einstellen Datei Typ tbopenEplanContent.Text = selectFileFromDiskFilter(selectFileTyp, @"C:\Users\Public\Documents\XML"); this.Title = "XML Datei ist gewählt"; }
private void btnAuswahlConfigFürFehlersuche_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "XML"; tbFehlersuche.Text = selectFileFromDiskFilter(selectFileTyp, @"c:\User\Public\Documents"); this.Title = "Comos Daten-Datei ist gewählt"; }
/// <summary> /// Auswahl der Datendatei für Import /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSelectComosFile_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "Excel"; tbImportExcel.Text = selectFileFromDiskFilter(selectFileTyp, @"c:\Daten\"); this.Title = "Comos Datei ist gewählt"; }
/// <summary> /// Auswahl Comos Datei für Vergleich /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSelectComosContent_New_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "XML"; // einstellen Datei Typ tbopenComosContent_New.Text = selectFileFromDiskFilter(selectFileTyp, outputDirectory); this.Title = "Neue Comos XML Datei ist gewählt"; }
/// <summary> /// Vergleicher Datei Auswahl /// </summary> private void btnSelectComosContent_Old_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "XML"; // einstellen Datei Typ tbopenComosContent_Old.Text = selectFileFromDiskFilter(selectFileTyp, outputDirectory); //@"C:\Users\Public\Documents\XML"); this.Title = "Alte Comos XML Datei ist gewählt"; }
/// <summary> /// Auswahl Datendatei für Exoprt nach Eplan /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnselectComosToEplan_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "XML"; // einstellen Datei Typ tbopenComosToEplan.Text = selectFileFromDiskFilter(selectFileTyp, outputDirectory); // @"C:\Users\Public\Documents\XML"); this.Title = "Comos Daten für Export ist gewählt"; loadPLConfig(); }
/// <summary> /// FileopenDialog /// </summary> /// <param name="filterTyp"></param> /// <param name="directory"></param> /// <returns></returns> private string selectFileFromDiskFilter(Filetypen filterTyp, string directory) { string fileSelect = ""; OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = filterTyp.filter; openFileDialog.Title = filterTyp.title; openFileDialog.InitialDirectory = directory; if (openFileDialog.ShowDialog() == true) { fileSelect = openFileDialog.FileName; } else { fileSelect = ""; } return(fileSelect); }
/// <summary> /// Import des Eplan Inhaltsverzeichnis nach XML /// </summary> /// <remarks> /// Filter müssen angepasst werden!! /// </remarks> /// <param name="sender"></param> /// <param name="e"></param> private void btnOpenFileEplan_Click(object sender, RoutedEventArgs e) { Filetypen selectFileTyp = new Filetypen(); selectFileTyp.filter = "Excel"; string fileEplan = selectFileFromDiskFilter(selectFileTyp, @"c:\Daten\"); this.Title = "Eplan Inhaltsverzeichnis ist gewählt"; // Prüfen ob Datei existiert if (string.IsNullOrEmpty(fileEplan) || !File.Exists(fileEplan)) { MessageBox.Show("Es wurde keine Datei gewählt"); } else { Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; Excel.Range range; object misValue = Missing.Value; // Prüfen ob Datei existiert Title = "Exceldatei wird ausgelesen"; xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Open(fileEplan, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); range = xlWorkSheet.UsedRange; // Größe des Arrys festlegen EplanDataContent[] importEplan; importEplan = new EplanDataContent[range.Rows.Count + 1]; // Daten einlesen for (int i = 6; i <= range.Rows.Count; i++) { // Zugriff auf jede Zeile if ((range.Cells[i, 1] as Excel.Range).Value2 != null) { try { // Variante mit importEplan importEplan[i].Anlage = (string)(range.Cells[i, 2] as Excel.Range).Value2; importEplan[i].Einbauort = (string)(range.Cells[i, 3] as Excel.Range).Value2; importEplan[i].Struktur = (string)(range.Cells[i, 4] as Excel.Range).Value2; importEplan[i].Seitenname = (string)(range.Cells[i, 5] as Excel.Range).Value2; importEplan[i].Seitenbeschreibung = (string)(range.Cells[i, 7] as Excel.Range).Value2; importEplan[i].Änderungsdatum = (string)(range.Cells[i, 8] as Excel.Range).Value2; importEplan[i].Erstellungsdatum = (string)(range.Cells[i, 9] as Excel.Range).Value2; importEplan[i].Makroname = (string)(range.Cells[i, 10] as Excel.Range).Value2; importEplan[i].Makrobeschreibung = (string)(range.Cells[i, 11] as Excel.Range).Value2; importEplan[i].Bemerkungen = (string)(range.Cells[i, 12] as Excel.Range).Value2; } catch (Exception) { MessageBox.Show(string.Format("Fehler beim einlesen der Exceldatei Datensatz {0}!", i)); } } } // Excel beenden xlWorkBook.Close(true, misValue, misValue); xlApp.Quit(); releaseObject(xlWorkSheet); releaseObject(xlWorkBook); releaseObject(xlApp); Title = "Exceldatei ist geschlossen"; //Filtern EplanDataContent[] filterDataEplan; filterDataEplan = new EplanDataContent[importEplan.Length]; int j = 0; foreach (EplanDataContent temp in importEplan) { if ((temp.Struktur != "BFS") & (temp.Struktur != null)) { //Anlagenfilter entfernt //if ((temp.Anlage == "PL21") | (temp.Anlage == "PL22") | (temp.Anlage == "PL23") | (temp.Anlage == "PL30") | (temp.Anlage == "PL31") | (temp.Anlage == "PL15") | (temp.Anlage == "PL41") | (temp.Anlage == "PL42") | (temp.Anlage == "PL43") | (temp.Anlage == "PL44") | (temp.Anlage == "PL45") | (temp.Anlage == "PL46")) //{ filterDataEplan[j].Anlage = temp.Anlage; filterDataEplan[j].Einbauort = temp.Einbauort; filterDataEplan[j].Struktur = temp.Struktur; filterDataEplan[j].Seitenname = temp.Seitenname; filterDataEplan[j].Seitenbeschreibung = temp.Seitenbeschreibung; filterDataEplan[j].Änderungsdatum = temp.Änderungsdatum; filterDataEplan[j].Erstellungsdatum = temp.Erstellungsdatum; filterDataEplan[j].Makroname = temp.Makroname; filterDataEplan[j].Makrobeschreibung = temp.Makrobeschreibung; filterDataEplan[j].Bemerkungen = temp.Bemerkungen; j++; //} } } // zählen wie viele Elemente beschrieben sind int g = 0; foreach (EplanDataContent temp in filterDataEplan) { if (temp.Anlage != null) { g++; } } // Erstellen des Temp-Elementes EplanDataContent[] filterDataEplan_2; filterDataEplan_2 = new EplanDataContent[g]; // Elemente in neue Struktur umkopieren for (int i = 0; i < g; i++) { try { filterDataEplan_2[i] = filterDataEplan[i]; } catch (Exception) { MessageBox.Show(string.Format("Fehler beim einlesen der Exceldatei Datensatz {0}!", i)); } } string XMLFile = (string.Format(outputDirectory + "\\Eplan_Inhaltsverzeichnis_{0}{1}{2}.xml", DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day)); XMLwriteEplan(filterDataEplan_2, fileEplan, XMLFile); tbopenEplanContent.Text = XMLFile; } }