public DataSet getDataFromFile() { try { DBRelief dbRelief = new DBRelief(); List <string> streamList = new List <string>(); DataSet dsStructure = dbRelief.getDataStructure(); DataTable dtEqlist = dsStructure.Tables["eqlist"].Clone(); DataTable dtStream = dsStructure.Tables["stream"].Clone(); DataTable dtEqType = dsStructure.Tables["eqtype"]; cp2File = (CP2File)cp2Srv.OpenDatabase(przFile); objCompCalc = (CP2Object)cp2File.ActivateObject("CompCalc", "CompCalc"); foreach (DataRow dr in dtEqType.Rows) { string otype = dr["eqtypename"].ToString(); object objectnames = cp2File.GetObjectNames(otype); if (objectnames.ToString() != "") { if (objectnames is Array) { string[] oNames = (string[])objectnames; foreach (string name in oNames) { getEqDataFromFile(otype, name, ref streamList, ref dtEqlist, ref dtStream); } } else { string name = (string)objectnames; getEqDataFromFile(otype, name, ref streamList, ref dtEqlist, ref dtStream); } } } Marshal.FinalReleaseComObject(cp2Srv); GC.ReRegisterForFinalize(cp2Srv); DataSet ds = new DataSet(); ds.Tables.Add(dtStream); ds.Tables.Add(dtEqlist); return(ds); } catch (Exception ex) { throw new Exception(ex.ToString()); } finally { //CloseReader(); } }
private void importDataToDB() { try { DBRelief dbRelief = new DBRelief(dbFile); DataSet dsStructure = dbRelief.getDataStructure(); DataTable dtEqType = dsStructure.Tables["eqtype"]; PRZReader przReader = new PRZReader(curprzFile); DataSet ds = new DataSet(); ds = przReader.getDataFromFile(); dbRelief.importDataByDataTable(ds); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) { try { dbRelief = new DBRelief(dbFile); DataSet dsStructure = dbRelief.getDataStructure(); DataTable dtEqType = dsStructure.Tables["eqtype"]; dtEqList = dsStructure.Tables["eqlist"]; dtStream = dsStructure.Tables["stream"]; picker = new PRZPicker(curprzFile); int total = picker.getAllEqAndStreamCount(dtEqType, ref eqList, ref streamList); int eqCount = eqList.Count; for (int i = 1; i <= eqList.Count; i++) { EqInfo eq = (EqInfo)eqList[i - 1]; picker.getEqInfo(eq.eqType, eq.eqName, ref dtEqList); int percents = (i * 100) / total; backgroundWorker.ReportProgress(percents, i); } for (int i = 1; i <= streamList.Count; i++) { picker.getSteamInfo(streamList[i - 1].ToString(), ref dtStream); int percents = ((eqCount + i) * 100) / total; backgroundWorker.ReportProgress(percents); } backgroundWorker.ReportProgress(100); } catch (Exception ex) { string lines = ex.ToString(); using (StreamWriter writer = new StreamWriter("log.txt", true)) { writer.WriteLine(ex.ToString()); } } }