| | |
| | | { |
| | | // |
| | | oCn.BeginTran(); |
| | | //保存前控制========================================= |
| | | string HBillNote = ""; |
| | | DataSet ds = oCn.RunProcReturn("Exec h_p_Sc_MaterToSourceBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_Sc_MaterToSourceBill_BeforeSaveCtrl"); |
| | | if (ds == null) |
| | | { |
| | | sReturn = "保存前判断失败!"; |
| | | return false; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | sReturn = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); |
| | | return false; |
| | | } |
| | | //========================================================= |
| | | //更新主表 |
| | | oCn.RunProc("UpDate Sc_MaterToSourceBillMain set " + |
| | | //固定赋值=============== |
| | |
| | | ",HMainSourceBillType=" + omodel.HMainSourceBillType.ToString() + |
| | | ",HMainSourceInterID=" + omodel.HMainSourceInterID.ToString() + |
| | | ",HMainSourceEntryID=" + omodel.HMainSourceEntryID.ToString() + |
| | | ",HMainSourceBillNo=" + omodel.HMainSourceBillNo.ToString() + |
| | | ",HMainSourceBillNo='" + omodel.HMainSourceBillNo.ToString() +"'"+ |
| | | ",HSourceID=" + omodel.HSourceID.ToString() + |
| | | ",HProcID=" + omodel.HProcID.ToString() + |
| | | ",HMaterID=" + omodel.HMaterID.ToString() + |
| | |
| | | ",'" + oSub.HBarCode + "','" + oSub.HBarCode_Pack + "','" + oSub.HBillNo_bak + "'" + |
| | | ") "); |
| | | } |
| | | sReturn = "修改单据成功!"; |
| | | sReturn = omodel.HInterID.ToString(); |
| | | //=========================保存后控制 |
| | | DataSet ds2 = oCn.RunProcReturn("h_p_Sc_MaterToSourceBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_Sc_MaterToSourceBill_AfterSaveCtrl"); |
| | | if (ds2 == null) |
| | | { |
| | | sReturn = "保存后控制判断失败!"; |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | sReturn = "保存失败2!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | //============================ |
| | | oCn.Commit(); |
| | | return true; |
| | | } |
| | |
| | | { |
| | | try |
| | | { |
| | | DataSet ds; |
| | | //得到mainid |
| | | omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //若MAINDI重复则重新获取 |
| | | oCn.BeginTran(); |
| | | //保存前控制========================================= |
| | | string HBillNote = ""; |
| | | ds = oCn.RunProcReturn("Exec h_p_Sc_MaterToSourceBill_BeforeSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "','" + HBillNote + "',1 ", "h_p_Sc_MaterToSourceBill_BeforeSaveCtrl"); |
| | | if (ds == null) |
| | | { |
| | | sReturn = "保存前判断失败!"; |
| | | return false; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | sReturn = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); |
| | | return false; |
| | | } |
| | | //========================================================= |
| | | //主表 |
| | | oCn.RunProc("Insert Into Sc_MaterToSourceBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HDate" + |
| | |
| | | ",'" + oSub.HBarCode + "','" + oSub.HBarCode_Pack + "','" + oSub.HBillNo_bak + "'" + |
| | | ") "); |
| | | } |
| | | //=========================保存后控制 |
| | | DataSet ds2 = oCn.RunProcReturn("h_p_Sc_MaterToSourceBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_Sc_MaterToSourceBill_AfterSaveCtrl"); |
| | | if (ds2 == null) |
| | | { |
| | | sReturn = "保存后控制判断失败!"; |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | sReturn = "保存失败2!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | //============================ |
| | | |
| | | //再次验证 保存是否 合理 |
| | | DataSet ds = oCn.RunProcReturn("exec h_p_Sc_MaterToSourceBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_Sc_MaterToSourceBill_SaveCtrl"); |
| | | ds = oCn.RunProcReturn("exec h_p_Sc_MaterToSourceBill_SaveCtrl @HInterId=" + omodel.HInterID + "", "h_p_Sc_MaterToSourceBill_SaveCtrl"); |
| | | if (ds == null || ds.Tables[0].Rows.Count <= 0) |
| | | { |
| | | sReturn = "无验证数据!"; |
| | |
| | | } |
| | | } |
| | | |
| | | //删除单据 |
| | | public override bool DeleteBill(Int64 lngBillKey, ref string sReturn) |
| | | { |
| | | try |
| | | { |
| | | oCn.BeginTran(); |
| | | //判断是否允许删除 |
| | | DataSet ds = oCn.RunProcReturn("exec h_p_Sc_MaterToSourceBill_DelCtrl @HInterId=" + lngBillKey + "", "h_p_Sc_MaterToSourceBill_DelCtrl"); |
| | | if (ds == null || ds.Tables[0].Rows.Count <= 0) |
| | | { |
| | | sReturn = "无验证数据!"; |
| | | return false; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2") |
| | | { |
| | | sReturn = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); |
| | | return false; |
| | | } |
| | | |
| | | //删除关联关系 |
| | | oCn.RunProc("exec h_p_Sc_MaterToSourceBill_DelRelation @HInterId=" + lngBillKey + ""); |
| | | |
| | | //删除明细表 |
| | | oCn.RunProc("Delete From " + MvarItemKeySub + " where HInterID=" + lngBillKey.ToString()); |
| | | //删除主表 |
| | | oCn.RunProc("Delete From " + MvarItemKey + " where HInterID=" + lngBillKey.ToString()); |
| | | |
| | | sReturn = "删除单据成功!"; |
| | | oCn.Commit(); |
| | | return true; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | sReturn = e.Message; |
| | | oCn.RollBack(); |
| | | throw (e); |
| | | } |
| | | } |
| | | |
| | | //审核 |
| | | public bool CheckBill(Int64 lngBillKey, ref string sReturn) |
| | | { |