/// <summary> /// 销毁消息 /// </summary> /// <param name="billNo">单据号</param> void DestroyMessage(string billNo) { Flow_BillFlowMessage msg = m_billFlowMsg.GetMessage(BasicInfo.LoginID, labelTitle.Text, billNo); if (msg == null) { return; } m_billFlowMsg.DestroyMessage(BasicInfo.LoginID, msg.序号); SendFinishedFlagToMessagePromptForm(billNo); }
/// <summary> /// 重新窗体消息处理函数 /// </summary> /// <param name="m">窗体消息</param> protected override void DefWndProc(ref Message m) { switch (m.Msg) { //接收自定义消息,放弃未提交的单据号 case WndMsgSender.CloseMsg: break; case WndMsgSender.PositioningMsg: WndMsgData msg = new WndMsgData(); //这是创建自定义信息的结构 Type dataType = msg.GetType(); msg = (WndMsgData)m.GetLParam(dataType); //这里获取的就是作为LParam参数发送来的信息的结构 DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "重新打印"); if (dtMessage.Rows.Count == 0) { Flow_BillFlowMessage billmsg = m_billFlowMsg.GetMessage(BasicInfo.LoginID, "重新打印", msg.MessageContent); m_billFlowMsg.DestroyMessage(BasicInfo.LoginID, billmsg.序号); MessageDialog.ShowPromptMessage("未找到相关记录"); } else { dgvShowInfo.DataSource = dtMessage; dgvShowInfo.Rows[0].Selected = true; } break; default: base.DefWndProc(ref m); break; } }
/// <summary> /// 销毁消息 /// </summary> /// <param name="billNo">单据号</param> /// <returns>操作是否成功的标志</returns> public bool DestroyMessage(string billNo) { if (m_billType == null || m_billType == "") { m_billType = GetBillType(billNo); } Debug.Assert(!GlobalObject.GeneralFunction.IsNullOrEmpty(m_billType), "单据类别不能为空"); Debug.Assert(!GlobalObject.GeneralFunction.IsNullOrEmpty(billNo), "单据号不能为空"); try { Flow_BillFlowMessage msg = GetMessage(billNo); if (msg != null) { m_billFlowMsg.DestroyMessage(BasicInfo.LoginID, msg.序号); } DepotManagementDataContext ctx = CommentParameter.DepotDataContext; //添加删除单据的记录 CJB 2012.3.19 BASE_DeleteBill lnqDeleteBill = new BASE_DeleteBill(); lnqDeleteBill.Bill_ID = billNo; lnqDeleteBill.DeleteTime = ServerTime.Time; lnqDeleteBill.WorkID = BasicInfo.LoginID; ctx.BASE_DeleteBill.InsertOnSubmit(lnqDeleteBill); ctx.SubmitChanges(); SendFinishedFlagToMessagePromptForm(billNo); return(true); } catch (Exception exce) { m_logManagement.WriteException(exce.Message + "\t\r" + exce.StackTrace, out m_error); return(false); } }