private void PackTransaction() { if (!mboIsInTransaction) { MessageBox.Show("Sorry you cannot pack an empty transaction.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (mclsSalesTransactionDetails.WaiterID == Constants.C_RETAILPLUS_WAITERID) { if (MessageBox.Show("Sorry you need to select waiter/packer before you can serve this transaction! \nSelect now?", "RetailPlus", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2) == DialogResult.OK) { if (!SelectWaiter()) return; } else return; } DialogResult loginresult = GetWriteAccessAndLogin(mclsSalesTransactionDetails.CashierID, AccessTypes.PackUnpackTransaction); if (loginresult == DialogResult.OK) { try { Data.SalesTransactions clsSalesTransactions = new Data.SalesTransactions(mConnection, mTransaction); mConnection = clsSalesTransactions.Connection; mTransaction = clsSalesTransactions.Transaction; clsSalesTransactions.Pack(mclsSalesTransactionDetails.TransactionID); clsSalesTransactions.CommitAndDispose(); MessageBox.Show("Packing Done!", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { InsertErrorLogToFile(ex, "ERROR!!! Packing sales transaction to database. TRACE: "); throw ex; } } }