public SapCommand(string cmdText, SapConnection connection, SapTransaction transaction) : this(cmdText, connection) { if (transaction == null) { throw new ArgumentNullException("transaction"); } Transaction = transaction; }
/// <summary> /// Open a new transaction which is bind /// to the current connection /// </summary> /// <returns></returns> public SapTransaction BeginTransaction() { CurrentTransaction = new SapTransaction(this); return(CurrentTransaction); }
/// <summary> /// Open a new transaction which is bind /// to the current connection /// </summary> /// <returns></returns> public SapTransaction BeginTransaction() { CurrentTransaction = new SapTransaction(this); return CurrentTransaction; }
/// <summary> /// Commit/Rollback existing transaction. /// Unregister current destination configuration. /// </summary> public void Dispose() { if (_destinationConfiguration != null) { if (CurrentTransaction != null) { try { CurrentTransaction.Commit(); CurrentTransaction = null; } catch (Exception ex) { Trace.TraceError( "An error occurred when trying to commit current open transaction. Exception: {0}", ex); } } try { RfcDestinationManager.UnregisterDestinationConfiguration(_destinationConfiguration); } catch (Exception ex) { Trace.TraceError("An error occurred when trying to unregister destination configuration. Exception: {0}", ex); } } GC.SuppressFinalize(this); }