public static void AcknowledgePickupNotice(PUNAcknowledgementInformation puna)//, AuditTrailWrapper auditTrail) { IPickupNotice pun = GetPUN(true); AuditTrailWrapper auditTrail = new AuditTrailWrapper(AuditTrailWrapper.PUNInitiation, "PUN Process"); PUNAcknowledgementInformation originalPUN = new PUNAcknowledgementInformation(); originalPUN.Copy(pun.PUNAInformation); auditTrail.AddChange(new object[][] { new object[] { originalPUN, puna, AuditTrailWrapper.NewRecord } }); SqlTransaction transaction = null; string transactionId = null; try { transaction = pun.AcknowledgePickupNotice(puna); transactionId = StartPUNWorkflow(); if (transactionId != string.Empty) { puna.TransactionId = transactionId; pun.AcknowledgePickupNotice(puna, transaction); if (!WarehouseTrackingNoBLL.Save(transactionId, transaction)) { GINProcessWrapper.RemoveWorkflowTask(transactionId); throw new Exception("Failed to start PUN Transaction"); } } else { throw new Exception("Failed to start PUN Transaction"); } if (!auditTrail.Save()) { throw new Exception("Failed to save audit trail"); } transaction.Commit(); } catch (Exception ex) { try { if ((transactionId != null) && (transactionId != string.Empty)) { GINProcessWrapper.RemoveWorkflowTask(transactionId); } } catch (Exception ex2) { throw ex2; } finally { if (transaction != null) { transaction.Rollback(); } } throw ex; } }
protected override void OnInit(EventArgs e) { base.OnInit(e); errorDisplayer = new ErrorMessageDisplayer(lblMessage); errorDisplayer.ClearErrorMessage(); transferedData = new PageDataTransfer(Request.Path); PUNADataEditor.Driver = GINViewConfigurationReader.GetViewConfiguration("PickupNoticeAkcnowledged", "PUNAcknowledgement"); PUNADataEditor.Ok += new EventHandler(PUNADataEditor_Ok); PUNADataEditor.Cancel += new EventHandler(PUNADataEditor_Cancel); try { pickupNotice = PUNWrapper.GetPUN(IsPostBack); PUNADataEditor.Lookup = pickupNotice.LookupSource; PUNADataEditor.Setup(); } catch (Exception ex) { throw ex; } }