public void Save() { if (cNumber == 0) { throw new ArgumentException("Controlbox ID not set."); } DAO.Recordset RS; string SQL = "Select * from tblControlBoxes where cbID = " + cID.ToString(); RS = mf.Dbase.DB.OpenRecordset(SQL); if (NewRecord) { RS.AddNew(); } else { RS.Edit(); } RS.Fields["cbNumber"].Value = cNumber; RS.Fields["cbDescription"].Value = cDescription + " "; RS.Fields["cbUseSleep"].Value = cUseSleep; RS.Fields["cbUseDiagnostics"].Value = cUseDiagnostics; RS.Fields["cbIPaddress"].Value = cIPaddress; RS.Fields["cbMac"].Value = cMac + " "; RS.Update(); if (NewRecord) { RS.set_Bookmark(RS.LastModified); cID = (byte)(RS.Fields["cbID"].Value ?? 0); } RS.Close(); NewRecord = false; }
public void Save() { DAO.Recordset RS; string SQL = "Select * from tblStorage where storID = " + cID; RS = mf.Dbase.DB.OpenRecordset(SQL); if (NewRecord) { RS.AddNew(); } else { RS.Edit(); } RS.Fields["storRecNum"].Value = cRecNum; RS.Fields["storNum"].Value = cNumber; RS.Fields["storDescription"].Value = cDescription; RS.Update(); if (NewRecord) { RS.set_Bookmark(RS.LastModified); cID = (short)(RS.Fields["storID"].Value ?? 0); } RS.Close(); NewRecord = false; }
public void Save() { if (ValidationErrors() != "") { throw new ArgumentException(ValidationErrors()); } DAO.Recordset RS; string SQL; SQL = "Select * from tblSensors where senID =" + cID; RS = mf.Dbase.DB.OpenRecordset(SQL); if (NewRecord) { RS.AddNew(); } else { RS.Edit(); } RS.Fields["senRecNum"].Value = cRecNum; RS.Fields["senAddress"].Value = cSensorAddress; RS.Fields["senControlBoxID"].Value = cControlBoxID; RS.Fields["senEnabled"].Value = cEnabled; RS.Fields["senOffset"].Value = cOffset; RS.Fields["senLastTemp"].Value = LastTemp(); RS.Fields["senLastTime"].Value = LastTime(); RS.Fields["senBinNumber"].Value = cBinNum; RS.Fields["senCableNumber"].Value = cCableNum; RS.Fields["senSensorNumber"].Value = cSensorNum; RS.Update(); if (NewRecord) { // update with new autoincrement ID RS.set_Bookmark(RS.LastModified); cID = (byte)(mf.Dbase.FieldToInt(RS, "senID")); } RS.Close(); NewRecord = false; }
public bool Save() { if (IsValid()) { DAO.Recordset RS; string SQL; SQL = "Select * from tblRecords where recID =" + cID; RS = mf.Dbase.DB.OpenRecordset(SQL); if (NewRecord) { RS.AddNew(); } else { RS.Edit(); } RS.Fields["recRecNum"].Value = cRecNum; RS.Fields["recSenID"].Value = cSenID; RS.Fields["recTemp"].Value = cTemp; RS.Fields["recTimeStamp"].Value = cTimeStamp; RS.Update(); if (NewRecord) { // update with new autoincrement ID RS.set_Bookmark(RS.LastModified); cID = (short)(RS.Fields["recID"].Value ?? 0); } RS.Close(); NewRecord = false; return(true); } else { return(false); } }
private string CheckVersion(short Ver, string DBname) { string SQL; DAO.Recordset RS; string Result = ""; if (Ver > cDBversion) { // higher version, program out of date Result = "Database version does not match, software out of date."; } else if (Ver == cDBversion) { Result = "true"; } else { // lower version, update // close current database try { cDB.Close(); } catch (Exception) { } // copy base file to tmp file in data folder string NewPath = mf.Tls.DataFolder + "\\NewTmp.mdb"; string BasePath = mf.Tls.SettingsFolder + "\\TempMonBase.mdb"; File.WriteAllBytes(NewPath, Properties.Resources.Base); FileInfo BaseFile = new FileInfo(BasePath); // copy current database to tmp file in data folder string TmpPath = mf.Tls.DataFolder + "\\OldTmp.mdb"; try { // delete tmp file, if it exists File.Delete(TmpPath); } catch (Exception Ex) { mf.Tls.WriteErrorLog("clsDatabase: CheckVersion: " + Ex.Message); } FileInfo OldFile = new FileInfo(DBname); OldFile.CopyTo(TmpPath); // open new tmp database and old tmp database DAO.Database DBnew = cDBE.OpenDatabase(NewPath, DAO.DriverPromptEnum.dbDriverNoPrompt, false, ""); DAO.Database DBold = cDBE.OpenDatabase(TmpPath, DAO.DriverPromptEnum.dbDriverNoPrompt, false, ""); // delete new database properties records SQL = "select * from tblProps"; RS = DBnew.OpenRecordset(SQL); while (!RS.EOF) { RS.Delete(); RS.MoveNext(); } RS.Close(); // copy matching data from old database to new database if (CopyData(DBnew, DBold)) { // update database properties SQL = "select * from tblProps"; RS = DBnew.OpenRecordset(SQL); if (RS.EOF) { RS.AddNew(); } else { RS.Edit(); } RS.Fields["dbType"].Value = DBtype; RS.Fields["dbVersion"].Value = cDBversion; RS.Update(); RS.Close(); // copy new updated database to current database name DBnew.Close(); DBold.Close(); File.Delete(DBname); // delete current file FileInfo NewFile = new FileInfo(NewPath); NewFile.CopyTo(DBname); // copy new file to current file name File.Delete(TmpPath); // delete tmp copy of current file File.Delete(NewPath); // delete new file Result = "true"; } else { // failed to copy, remove new database and tmp database File.Delete(TmpPath); // delete tmp copy of current file File.Delete(NewPath); // delete new file Result = "Failed to update database version."; } } return(Result); }