| | |
| | | //保存完毕后处理 |
| | | bool bResult; |
| | | |
| | | oCn.BeginTran(); //开始事物 |
| | | //oCn.BeginTran(); //开始事物 |
| | | |
| | | if (HOpType.ToString() == "edit"/*oBill.omodel.HInterID != 0 && oBill.omodel.HInterID.ToString() != null && oBill.omodel.HInterID.ToString() != "undefined"*/) |
| | | { |
| | |
| | | } |
| | | if (bResult) |
| | | { |
| | | oCn.Commit(); //提交事物 |
| | | //oCn.Commit(); //提交事物 |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | |
| | | } |
| | | else |
| | | { |
| | | oCn.RollBack(); //回滚事物 |
| | | //oCn.RollBack(); //回滚事物 |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | oCn.RollBack(); //回滚事物 |
| | | //oCn.RollBack(); //回滚事物 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + e.ToString(); |
| | |
| | | //送货单列表 |
| | | public object GetPOInStockBill([FromBody] JObject msg) |
| | | { |
| | | string HSupNo = msg["HSupNo"].ToString(); string sqlWhere = msg["sqlWhere"].ToString(); |
| | | string HSupIDs = msg["HSupIDs"].ToString(); string sqlWhere = msg["sqlWhere"].ToString(); |
| | | try |
| | | { |
| | | Stopwatch sw = new Stopwatch(); |
| | |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | //其他过滤 |
| | | string sql = " Where hsupid in (select HSupID from h_v_Gy_UserSupplierList where 用户 =^^" + HSupNo.Trim() + "^^) " + sqlWhere; |
| | | string sql = " Where hsupid in (" + HSupIDs.Trim() + ")" + sqlWhere; |
| | | //转换特殊字符 |
| | | if (Common.SQLtoChange(sql, ref VsWhere, ref PcWhere) == false) |
| | | { |
| | |
| | | return objjson; |
| | | } |
| | | //获取总行数 |
| | | Int64 RowTotal = Common.GetRowTotal("H_v_SRM_POInStockBillList", VsWhere, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //Int64 RowTotal = Common.GetRowTotal("H_v_SRM_POInStockBillList", VsWhere, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //获取返回数据 |
| | | ds = oCn.RunProcReturn("exec H_p_SRM_POInStockBillList '" + PcWhere + "'", "H_p_SRM_POInStockBillList"); |
| | | |
| | |
| | | /// <returns></returns> |
| | | public object TestSaverPOInStock(string ids, string entryids) |
| | | { |
| | | List<string> mylist = new List<string>(ids.Split(','));//.Distinct() |
| | | List<string> entryList = new List<string>(entryids.Split(','));//.Distinct() |
| | | //List<string> mylist = new List<string>(ids.Split(',').Distinct()); |
| | | //List<string> entryList = new List<string>(entryids.Split(',').Distinct()); |
| | | //List<string> mylist = new List<string>(ids.Split(','));//.Distinct() |
| | | //List<string> entryList = new List<string>(entryids.Split(','));//.Distinct() |
| | | |
| | | List<string> mylist = new List<string>(ids.Split(',').Distinct()); |
| | | List<string> entryList = new List<string>(entryids.Split(',').Distinct()); |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (FCusName == "夏宝电器" && mylist.Count > 1) |
| | |
| | | if (objJsonResult.code == "0") |
| | | return objJsonResult; |
| | | |
| | | if (mylist.Count != entryList.Count) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "主内码与子内码数量不一致!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //if (mylist.Count != entryList.Count) |
| | | //{ |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "主内码与子内码数量不一致!"; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | //} |
| | | for (int i = 0;i < mylist.Count;i++) |
| | | { |
| | | //采购订单下推生成送货单前控制 |
| | |
| | | |
| | | var kdTbaleName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName"); |
| | | |
| | | string sql2 = string.Format(@"select T1.hqty - T1.hrelationqty + q.FMRBQTY as hqty, q.FRemainReceiveQty as 剩余收料数量, T1.hrelationqty as 已发货数量, T1.hqty as 订单数量, 单据号, 物料编码 from H_v_SRM_POOrderBillList t1 left join {0}..T_PUR_POORDERENTRY_R q on q.FENTRYID = t1.HEntryID where hentryid in ({1})", kdTbaleName, string.Join(", ", entryList)); |
| | | string sql2 = string.Format(@"select T1.hqty - T1.hrelationqty + q.FMRBQTY as hqty, q.FRemainReceiveQty as 剩余收料数量, T1.hrelationqty as 已发货数量, T1.hqty as 订单数量, 单据号, 物料编码 from H_v_SRM_POOrderBillList_JY t1 left join {0}.T_PUR_POORDERENTRY_R q with(nolock) on q.FENTRYID = t1.HEntryID where hentryid in ({1})", kdTbaleName, string.Join(", ", entryList)); |
| | | |
| | | DataSet ds = oCn.RunProcReturn(sql2, "H_v_SRM_POOrderBillList"); |
| | | |
| | |
| | | DataRow[] dr = dt.Select("hqty <=" + 0); |
| | | if (dr.Count() > 0) |
| | | { |
| | | oCn.RollBack();//回滚事务 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = $"请检查数据,单据号:{dr[0]["单据号"]},物料编码:{dr[0]["物料编码"]},可以发货数量为0,已全部生成送货单!,订单数量:{Convert.ToDouble(dr[0]["订单数量"]).ToString("f2")},已发货数量:{Convert.ToDouble(dr[0]["已发货数量"]).ToString("f2")},剩余收料数量:{Convert.ToDouble(dr[0]["剩余收料数量"]).ToString("f2")}"; |
| | |
| | | { |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | LEFT JOIN {1}.T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | FROM Cg_POOrderBillSub B with(nolock) |
| | | JOIN Cg_POOrderBillMAIN M with(nolock) ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E with(nolock) ON B.HMaterID = E.HItemID |
| | | LEFT JOIN {1}.T_PUR_POORDERENTRY C with(nolock) ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | WHERE ISNULL(C.FENTRYID,0) = 0 |
| | | AND B.HEntryID in ({0})" |
| | | , entryids, kdTbaleName); |
| | |
| | | { |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | LEFT JOIN {1}..T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | FROM Cg_POOrderBillSub B with(nolock) |
| | | JOIN Cg_POOrderBillMAIN M with(nolock) ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E with(nolock) ON B.HMaterID = E.HItemID |
| | | LEFT JOIN {1}..T_PUR_POORDERENTRY C with(nolock) ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | WHERE ISNULL(C.FENTRYID,0) = 0 |
| | | AND B.HEntryID in ({0})" |
| | | , entryids, kdTbaleName); |
| | |
| | | { |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName,F.FBILLNO |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | JOIN {1}.T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}.T_PUR_POCHANGEENTRY D ON C.FENTRYID = D.FOFENTRYID |
| | | LEFT join {1}.T_PUR_POCHANGE F ON D.FID = F.FID |
| | | FROM Cg_POOrderBillSub B with(nolock) |
| | | JOIN Cg_POOrderBillMAIN M with(nolock) ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E with(nolock) ON B.HMaterID = E.HItemID |
| | | JOIN {1}.T_PUR_POORDERENTRY C with(nolock) ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}.T_PUR_POCHANGEENTRY D with(nolock) ON C.FENTRYID = D.FOFENTRYID |
| | | LEFT join {1}.T_PUR_POCHANGE F with(nolock) ON D.FID = F.FID |
| | | where b.HEntryID in ({0}) |
| | | and F.FDOCUMENTSTATUS <> 'C'" |
| | | , entryids, kdTbaleName); |
| | |
| | | { |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName,F.FBILLNO |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | JOIN {1}..T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}..T_PUR_POCHANGEENTRY D ON C.FENTRYID = D.FOFENTRYID |
| | | LEFT join {1}..T_PUR_POCHANGE F ON D.FID = F.FID |
| | | FROM Cg_POOrderBillSub B with(nolock) |
| | | JOIN Cg_POOrderBillMAIN M with(nolock) ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E with(nolock) ON B.HMaterID = E.HItemID |
| | | JOIN {1}..T_PUR_POORDERENTRY C with(nolock) ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}..T_PUR_POCHANGEENTRY D with(nolock) ON C.FENTRYID = D.FOFENTRYID |
| | | LEFT join {1}..T_PUR_POCHANGE F with(nolock) ON D.FID = F.FID |
| | | where b.HEntryID in ({0}) |
| | | and F.FDOCUMENTSTATUS <> 'C'" |
| | | , entryids, kdTbaleName); |
| | |
| | | { |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName,F.FBILLNO |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | JOIN {1}.T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}.t_PUR_XPOOrderENTRY D ON C.FENTRYID = D.FPKIDX |
| | | LEFT join {1}.t_PUR_XPOOrder F ON D.FID = F.FID |
| | | FROM Cg_POOrderBillSub B with(nolock) |
| | | JOIN Cg_POOrderBillMAIN M with(nolock) ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E with(nolock) ON B.HMaterID = E.HItemID |
| | | JOIN {1}.T_PUR_POORDERENTRY C with(nolock) ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}.t_PUR_XPOOrderENTRY D with(nolock) ON C.FENTRYID = D.FPKIDX |
| | | LEFT join {1}.t_PUR_XPOOrder F with(nolock) ON D.FID = F.FID |
| | | where F.FDOCUMENTSTATUS <> 'C' and b.HEntryID in ({0}) " |
| | | , entryids, kdTbaleName); |
| | | } |
| | |
| | | { |
| | | sql = string.Format(@" |
| | | select M.HBillNo,B.HMaterID,E.HNumber,E.HName,F.FBILLNO |
| | | FROM Cg_POOrderBillSub B |
| | | JOIN Cg_POOrderBillMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E ON B.HMaterID = E.HItemID |
| | | JOIN {1}..T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}..t_PUR_XPOOrderENTRY D ON C.FENTRYID = D.FPKIDX |
| | | LEFT join {1}..t_PUR_XPOOrder F ON D.FID = F.FID |
| | | FROM Cg_POOrderBillSub B with(nolock) |
| | | JOIN Cg_POOrderBillMAIN M with(nolock) ON B.HINTERID = M.HINTERID |
| | | JOIN Gy_Material E with(nolock) ON B.HMaterID = E.HItemID |
| | | JOIN {1}..T_PUR_POORDERENTRY C with(nolock) ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID |
| | | LEFT join {1}..t_PUR_XPOOrderENTRY D with(nolock) ON C.FENTRYID = D.FPKIDX |
| | | LEFT join {1}..t_PUR_XPOOrder F with(nolock) ON D.FID = F.FID |
| | | where F.FDOCUMENTSTATUS <> 'C' and b.HEntryID in ({0}) " |
| | | , entryids, kdTbaleName); |
| | | } |