/// <summary> /// save the changes on the screen (code is copied from auto-generated code) /// </summary> /// <returns></returns> public bool SaveChanges() { FPetraUtilsObject.OnDataSavingStart(this, new System.EventArgs()); if (FPetraUtilsObject.VerificationResultCollection.Count == 0) { foreach (DataRow InspectDR in FMainDS.MExtractMaster.Rows) { InspectDR.EndEdit(); } if (!FPetraUtilsObject.HasChanges) { return true; } else { FPetraUtilsObject.WriteToStatusBar("Saving data..."); this.Cursor = Cursors.WaitCursor; TSubmitChangesResult SubmissionResult; MExtractMasterTable SubmitDT = new MExtractMasterTable(); if (FMainDS.MExtractMaster.GetChangesTyped() != null) { SubmitDT.Merge(FMainDS.MExtractMaster.GetChangesTyped()); } else { // There is nothing to be saved. // Update UI FPetraUtilsObject.WriteToStatusBar(Catalog.GetString("There is nothing to be saved.")); this.Cursor = Cursors.Default; // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); return true; } // Submit changes to the PETRAServer try { SubmissionResult = TRemote.MPartner.Partner.WebConnectors.SaveExtractMaster (ref SubmitDT); } catch (System.Net.Sockets.SocketException) { FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); this.Cursor = Cursors.Default; MessageBox.Show("The PETRA Server cannot be reached! Data cannot be saved!", "No Server response", MessageBoxButtons.OK, MessageBoxIcon.Stop); bool ReturnValue = false; // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return ReturnValue; } /* TODO ESecurityDBTableAccessDeniedException * catch (ESecurityDBTableAccessDeniedException Exp) * { * FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); * this.Cursor = Cursors.Default; * // TODO TMessages.MsgSecurityException(Exp, this.GetType()); * bool ReturnValue = false; * // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); * return ReturnValue; * } */ catch (EDBConcurrencyException) { FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); this.Cursor = Cursors.Default; // TODO TMessages.MsgDBConcurrencyException(Exp, this.GetType()); bool ReturnValue = false; // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return ReturnValue; } catch (Exception exp) { FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); this.Cursor = Cursors.Default; TLogging.Log( Catalog.GetString( "An error occurred while trying to connect to the OpenPetra Server!") + Environment.NewLine + exp.ToString(), TLoggingType.ToLogfile); MessageBox.Show( Catalog.GetString("An error occurred while trying to connect to the OpenPetra Server!") + Environment.NewLine + "For details see the log file: " + TLogging.GetLogFileName(), "Server connection error", MessageBoxButtons.OK, MessageBoxIcon.Stop); // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return false; } switch (SubmissionResult) { case TSubmitChangesResult.scrOK: // Call AcceptChanges to get rid now of any deleted columns before we Merge with the result from the Server FMainDS.MExtractMaster.AcceptChanges(); // Merge back with data from the Server (eg. for getting Sequence values) FMainDS.MExtractMaster.Merge(SubmitDT, false); // need to accept the new modification ID FMainDS.MExtractMaster.AcceptChanges(); // Update UI FPetraUtilsObject.WriteToStatusBar("Data successfully saved."); this.Cursor = Cursors.Default; // TODO EnableSave(false); // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); SetPrimaryKeyReadOnly(true); // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return true; case TSubmitChangesResult.scrError: // TODO scrError this.Cursor = Cursors.Default; break; case TSubmitChangesResult.scrNothingToBeSaved: // TODO scrNothingToBeSaved this.Cursor = Cursors.Default; return true; case TSubmitChangesResult.scrInfoNeeded: // TODO scrInfoNeeded this.Cursor = Cursors.Default; break; } } } return false; }
/// <summary> /// save the changes on the screen (code is copied from auto-generated code) /// </summary> /// <returns></returns> public bool SaveChanges() { bool ReturnValue = false; FPetraUtilsObject.OnDataSavingStart(this, new System.EventArgs()); if (ValidateAllData(false, Common.Verification.TErrorProcessingMode.Epm_IgnoreNonCritical)) { foreach (DataRow InspectDR in FMainDS.MExtractMaster.Rows) { InspectDR.EndEdit(); } if (!FPetraUtilsObject.HasChanges) { return(true); } else { FPetraUtilsObject.WriteToStatusBar("Saving data..."); this.Cursor = Cursors.WaitCursor; TSubmitChangesResult SubmissionResult; MExtractMasterTable SubmitDT = new MExtractMasterTable(); if (FMainDS.MExtractMaster.GetChangesTyped() != null) { SubmitDT.Merge(FMainDS.MExtractMaster.GetChangesTyped()); } else { // There is nothing to be saved. // Update UI FPetraUtilsObject.WriteToStatusBar(Catalog.GetString("There is nothing to be saved.")); this.Cursor = Cursors.Default; // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); return(true); } // Submit changes to the PETRAServer try { SubmissionResult = TRemote.MPartner.Partner.WebConnectors.SaveExtractMaster (ref SubmitDT); } catch (ESecurityDBTableAccessDeniedException Exp) { FPetraUtilsObject.WriteToStatusBar(MCommonResourcestrings.StrSavingDataException); this.Cursor = Cursors.Default; TMessages.MsgSecurityException(Exp, this.GetType()); ReturnValue = false; FPetraUtilsObject.OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(ReturnValue); } catch (EDBConcurrencyException Exp) { FPetraUtilsObject.WriteToStatusBar(MCommonResourcestrings.StrSavingDataException); this.Cursor = Cursors.Default; TMessages.MsgDBConcurrencyException(Exp, this.GetType()); ReturnValue = false; FPetraUtilsObject.OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(ReturnValue); } catch (Exception) { FPetraUtilsObject.WriteToStatusBar(MCommonResourcestrings.StrSavingDataException); this.Cursor = Cursors.Default; FPetraUtilsObject.OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); throw; } switch (SubmissionResult) { case TSubmitChangesResult.scrOK: // Call AcceptChanges to get rid now of any deleted columns before we Merge with the result from the Server FMainDS.MExtractMaster.AcceptChanges(); // Merge back with data from the Server (eg. for getting Sequence values) FMainDS.MExtractMaster.Merge(SubmitDT, false); // need to accept the new modification ID FMainDS.MExtractMaster.AcceptChanges(); // Update UI FPetraUtilsObject.WriteToStatusBar("Data successfully saved."); this.Cursor = Cursors.Default; // TODO EnableSave(false); // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); SetPrimaryKeyReadOnly(true); // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(true); case TSubmitChangesResult.scrError: // TODO scrError this.Cursor = Cursors.Default; break; case TSubmitChangesResult.scrNothingToBeSaved: // TODO scrNothingToBeSaved this.Cursor = Cursors.Default; return(true); case TSubmitChangesResult.scrInfoNeeded: // TODO scrInfoNeeded this.Cursor = Cursors.Default; break; } } } return(false); }
/// <summary> /// save the changes on the screen (code is copied from auto-generated code) /// </summary> /// <returns></returns> public bool SaveChanges() { FPetraUtilsObject.OnDataSavingStart(this, new System.EventArgs()); if (FPetraUtilsObject.VerificationResultCollection.Count == 0) { foreach (DataRow InspectDR in FMainDS.MExtractMaster.Rows) { InspectDR.EndEdit(); } if (!FPetraUtilsObject.HasChanges) { return(true); } else { FPetraUtilsObject.WriteToStatusBar("Saving data..."); this.Cursor = Cursors.WaitCursor; TSubmitChangesResult SubmissionResult; MExtractMasterTable SubmitDT = new MExtractMasterTable(); if (FMainDS.MExtractMaster.GetChangesTyped() != null) { SubmitDT.Merge(FMainDS.MExtractMaster.GetChangesTyped()); } else { // There is nothing to be saved. // Update UI FPetraUtilsObject.WriteToStatusBar(Catalog.GetString("There is nothing to be saved.")); this.Cursor = Cursors.Default; // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); return(true); } // Submit changes to the PETRAServer try { SubmissionResult = TRemote.MPartner.Partner.WebConnectors.SaveExtractMaster (ref SubmitDT); } catch (System.Net.Sockets.SocketException) { FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); this.Cursor = Cursors.Default; MessageBox.Show("The PETRA Server cannot be reached! Data cannot be saved!", "No Server response", MessageBoxButtons.OK, MessageBoxIcon.Stop); bool ReturnValue = false; // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(ReturnValue); } /* TODO ESecurityDBTableAccessDeniedException * catch (ESecurityDBTableAccessDeniedException Exp) * { * FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); * this.Cursor = Cursors.Default; * // TODO TMessages.MsgSecurityException(Exp, this.GetType()); * bool ReturnValue = false; * // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); * return ReturnValue; * } */ catch (EDBConcurrencyException) { FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); this.Cursor = Cursors.Default; // TODO TMessages.MsgDBConcurrencyException(Exp, this.GetType()); bool ReturnValue = false; // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(ReturnValue); } catch (Exception exp) { FPetraUtilsObject.WriteToStatusBar("Data could not be saved!"); this.Cursor = Cursors.Default; TLogging.Log( Catalog.GetString( "An error occurred while trying to connect to the OpenPetra Server!") + Environment.NewLine + exp.ToString(), TLoggingType.ToLogfile); MessageBox.Show( Catalog.GetString("An error occurred while trying to connect to the OpenPetra Server!") + Environment.NewLine + "For details see the log file: " + TLogging.GetLogFileName(), "Server connection error", MessageBoxButtons.OK, MessageBoxIcon.Stop); // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(false); } switch (SubmissionResult) { case TSubmitChangesResult.scrOK: // Call AcceptChanges to get rid now of any deleted columns before we Merge with the result from the Server FMainDS.MExtractMaster.AcceptChanges(); // Merge back with data from the Server (eg. for getting Sequence values) FMainDS.MExtractMaster.Merge(SubmitDT, false); // need to accept the new modification ID FMainDS.MExtractMaster.AcceptChanges(); // Update UI FPetraUtilsObject.WriteToStatusBar("Data successfully saved."); this.Cursor = Cursors.Default; // TODO EnableSave(false); // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); SetPrimaryKeyReadOnly(true); // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return(true); case TSubmitChangesResult.scrError: // TODO scrError this.Cursor = Cursors.Default; break; case TSubmitChangesResult.scrNothingToBeSaved: // TODO scrNothingToBeSaved this.Cursor = Cursors.Default; return(true); case TSubmitChangesResult.scrInfoNeeded: // TODO scrInfoNeeded this.Cursor = Cursors.Default; break; } } } return(false); }
/// <summary> /// save the changes on the screen (code is copied from auto-generated code) /// </summary> /// <returns></returns> public bool SaveChanges() { bool ReturnValue = false; FPetraUtilsObject.OnDataSavingStart(this, new System.EventArgs()); if (ValidateAllData(false, Common.Verification.TErrorProcessingMode.Epm_IgnoreNonCritical)) { foreach (DataRow InspectDR in FMainDS.MExtractMaster.Rows) { InspectDR.EndEdit(); } if (!FPetraUtilsObject.HasChanges) { return true; } else { FPetraUtilsObject.WriteToStatusBar("Saving data..."); this.Cursor = Cursors.WaitCursor; TSubmitChangesResult SubmissionResult; MExtractMasterTable SubmitDT = new MExtractMasterTable(); if (FMainDS.MExtractMaster.GetChangesTyped() != null) { SubmitDT.Merge(FMainDS.MExtractMaster.GetChangesTyped()); } else { // There is nothing to be saved. // Update UI FPetraUtilsObject.WriteToStatusBar(Catalog.GetString("There is nothing to be saved.")); this.Cursor = Cursors.Default; // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); return true; } // Submit changes to the PETRAServer try { SubmissionResult = TRemote.MPartner.Partner.WebConnectors.SaveExtractMaster (ref SubmitDT); } catch (ESecurityDBTableAccessDeniedException Exp) { FPetraUtilsObject.WriteToStatusBar(MCommonResourcestrings.StrSavingDataException); this.Cursor = Cursors.Default; TMessages.MsgSecurityException(Exp, this.GetType()); ReturnValue = false; FPetraUtilsObject.OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return ReturnValue; } catch (EDBConcurrencyException Exp) { FPetraUtilsObject.WriteToStatusBar(MCommonResourcestrings.StrSavingDataException); this.Cursor = Cursors.Default; TMessages.MsgDBConcurrencyException(Exp, this.GetType()); ReturnValue = false; FPetraUtilsObject.OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return ReturnValue; } catch (Exception) { FPetraUtilsObject.WriteToStatusBar(MCommonResourcestrings.StrSavingDataException); this.Cursor = Cursors.Default; FPetraUtilsObject.OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); throw; } switch (SubmissionResult) { case TSubmitChangesResult.scrOK: // Call AcceptChanges to get rid now of any deleted columns before we Merge with the result from the Server FMainDS.MExtractMaster.AcceptChanges(); // Merge back with data from the Server (eg. for getting Sequence values) FMainDS.MExtractMaster.Merge(SubmitDT, false); // need to accept the new modification ID FMainDS.MExtractMaster.AcceptChanges(); // Update UI FPetraUtilsObject.WriteToStatusBar("Data successfully saved."); this.Cursor = Cursors.Default; // TODO EnableSave(false); // We don't have unsaved changes anymore FPetraUtilsObject.DisableSaveButton(); SetPrimaryKeyReadOnly(true); // TODO OnDataSaved(this, new TDataSavedEventArgs(ReturnValue)); return true; case TSubmitChangesResult.scrError: // TODO scrError this.Cursor = Cursors.Default; break; case TSubmitChangesResult.scrNothingToBeSaved: // TODO scrNothingToBeSaved this.Cursor = Cursors.Default; return true; case TSubmitChangesResult.scrInfoNeeded: // TODO scrInfoNeeded this.Cursor = Cursors.Default; break; } } } return false; }