protected override bool WfAppendUpdate() { string updateSql; vw_invi102 masterModel; List <SqlParameter> sqlParmsList; try { masterModel = DrMaster.ToItem <vw_invi102>(); if (masterModel.icp06 == "Y") { updateSql = @" UPDATE icp_tb SET icp06='N' WHERE icp01=@icp01 AND icp02<>@icp02 "; sqlParmsList = new List <SqlParameter>(); sqlParmsList.Add(new SqlParameter("icp01", masterModel.icp01)); sqlParmsList.Add(new SqlParameter("icp02", masterModel.icp02)); if (BoInv.OfExecuteNonquery(updateSql, sqlParmsList.ToArray()) < 0) { WfShowErrorMsg("WfAppendUpdate 更新 icp_tb 失敗!"); return(false); } updateSql = @" UPDATE icp_tb SET icp05=999 WHERE icp01=@icp01 AND icp02<>@icp02 AND icp05=0 "; sqlParmsList = new List <SqlParameter>(); sqlParmsList.Add(new SqlParameter("icp01", masterModel.icp01)); sqlParmsList.Add(new SqlParameter("icp02", masterModel.icp02)); if (BoInv.OfExecuteNonquery(updateSql, sqlParmsList.ToArray()) < 0) { WfShowErrorMsg("WfAppendUpdate 更新 icp_tb 失敗!"); return(false); } } return(true); } catch (Exception ex) { throw ex; } }
protected override bool WfAppendUpdate() { vw_admi611 admi611Model = null; int chkCnts = 0; StringBuilder sbSql = null; List <SqlParameter> sqlParmsList; CommonBLL boAppend; DataTable dtady = null; try { boAppend = new InvBLL(BoMaster.OfGetConntion()); boAppend.TRAN = BoMaster.TRAN; boAppend.OfCreateDao("ady_tb", "*", ""); admi611Model = DrMaster.ToItem <vw_admi611>(); //處理明細--均先刪後新增 if (FormEditMode != YREditType.新增) { sbSql = new StringBuilder(); sqlParmsList = new List <SqlParameter>(); sbSql.AppendLine("DELETE FROM ady_tb WHERE ady01=@ady01"); sqlParmsList.Add(new SqlParameter("@ady01", admi611Model.adx01)); chkCnts = boAppend.OfExecuteNonquery(sbSql.ToString(), sqlParmsList.ToArray()); sbSql = new StringBuilder(); sqlParmsList = new List <SqlParameter>(); sbSql.AppendLine("SELECT * FROM ady_tb"); sbSql.AppendLine("WHERE 1<>1"); dtady = boAppend.OfGetDataTable(sbSql.ToString()); foreach (vw_admi611s detailModel in Admi611sList) { var drady = dtady.NewRow(); drady["ady01"] = detailModel.ady01; drady["ady02"] = detailModel.ady02; drady["ady03"] = detailModel.ady03; drady["ady04"] = detailModel.ady04; drady["ady05"] = detailModel.ady05; drady["ady06"] = detailModel.ady06; drady["ady07"] = detailModel.ady07; drady["adycreu"] = detailModel.adycreu; drady["adycreg"] = detailModel.adycreg; if (detailModel.adycred == null) { drady["adycred"] = DBNull.Value; } else { drady["adycred"] = detailModel.adycred; } drady["adymodu"] = detailModel.adymodu; drady["adymodg"] = detailModel.adymodg; if (detailModel.adymodd == null) { drady["adymodd"] = DBNull.Value; } else { drady["adymodd"] = detailModel.adymodd; } dtady.Rows.Add(drady); } boAppend.OfUpdate(dtady); } return(true); } catch (Exception ex) { throw ex; } }
protected override bool WfExecute() { vw_invb600 invb600Model; sga_tb sgaModel; List <QueryInfo> queryInfoList; QueryInfo queryModel; List <SqlParameter> sqlParmList; string strQueryRange, strWhere; DataTable dtMain; StringBuilder sbSql; int chkCnts = 0; try { //取得交易物件 BoMaster.TRAN = BoMaster.OfGetConntion().BeginTransaction(); BoInv.TRAN = BoMaster.TRAN; invb600Model = DrMaster.ToItem <vw_invb600>(); #region range 查詢條件 queryInfoList = new List <QueryInfo>(); if (!GlobalFn.varIsNull(invb600Model.icc01)) { queryModel = new QueryInfo(); queryModel.TableName = "icc_tb"; queryModel.ColumnName = "icc01"; queryModel.ColumnType = TabMaster.DtSource.Columns["icc01"].DataType.Name; queryModel.Value = invb600Model.icc01; queryInfoList.Add(queryModel); } if (!GlobalFn.varIsNull(invb600Model.icc02)) { queryModel = new QueryInfo(); queryModel.TableName = "icc_tb"; queryModel.ColumnName = "icc02"; queryModel.ColumnType = TabMaster.DtSource.Columns["icc02"].DataType.Name; queryModel.Value = invb600Model.icc02; queryInfoList.Add(queryModel); } sqlParmList = new List <SqlParameter>(); strQueryRange = BoMaster.WfGetQueryString(queryInfoList, out sqlParmList); strWhere = strQueryRange; #endregion var strSecurity = WfGetSecurityString(); //暫時無權限問題,先保留 if (!GlobalFn.varIsNull(strSecurity)) { strWhere += strSecurity; } //取得單頭 sbSql = new StringBuilder(); sbSql.AppendLine("SELECT * FROM sga_tb"); sbSql.AppendLine("WHERE sgaconf='N' "); dtMain = BoMaster.OfGetDataTable(string.Concat(sbSql.ToString(), strWhere), sqlParmList.ToArray()); dtMain.TableName = "Master"; if (dtMain == null || dtMain.Rows.Count == 0) { WfShowErrorMsg("查無資料,請重新過濾條件!"); BoMaster.TRAN.Rollback(); return(false); } foreach (DataRow drIga in dtMain.Rows) { var iccModel = drIga.ToItem <sga_tb>(); //取得ina_tb庫存歷史檔資料! sbSql = new StringBuilder(); chkCnts = BoInv.OfExecuteNonquery(sbSql.ToString(), sqlParmList.ToArray()); //if (chkCnts<=0) //{ // WfShowErrorMsg("查無可異動icc_tb資料表,請檢核!"); // BoMaster.TRAN.Rollback(); // return false; //} } BoMaster.TRAN.Commit(); return(true); } catch (Exception ex) { BoMaster.TRAN.Rollback(); throw ex; } }