新增生产退料(源单:生产投料单)上传生成CLOUD单据方法;全部模块上传生成CLOUD单据新方法中,生成单据后更新自定义字段调用存储过程位置移到提交审核单据方法上方
1个文件已修改
442 ■■■■ 已修改文件
CLOUDWEB/WebService1.asmx.cs 442 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CLOUDWEB/WebService1.asmx.cs
@@ -4531,6 +4531,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PRD_MORPT", sJson }); //调用保存方式
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildICMOReport '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Sc_ICMOReportBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -4560,10 +4563,6 @@
                            {
                                oCn.RunProc("exec h_p_WMS_UpdateSourceByBarCodeBill_ICMOReportBill '" + oMain.HBillNo + "'");
                            }
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildICMOReport '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -6578,6 +6577,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_TransferDirect", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildMove '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_MoveStockBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -6602,9 +6604,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildMove '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -6899,6 +6898,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_TransferDirect", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildMove '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_MoveStockBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -6923,9 +6925,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildMove '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -7268,6 +7267,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_TRANSFEROUT", sJson }); //调用保存方式
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildMoveStockStepOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_MoveStockStepOutBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -7292,9 +7294,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildMoveStockStepOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -7885,6 +7884,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_TRANSFERIN", sJson }); //调用保存方式
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildMoveStockStepIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_MoveStockStepInBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -7909,9 +7911,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildMoveStockStepIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -9253,6 +9252,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "SAL_RETURNSTOCK", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOutBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_SellOutBackBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -9277,9 +9279,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOutBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -9573,6 +9572,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "SAL_RETURNSTOCK", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOutBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_SellOutBackBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -9597,9 +9599,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOutBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -11135,6 +11134,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "SAL_OUTSTOCK", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_SellOutBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -11159,9 +11161,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -11460,6 +11459,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "SAL_OUTSTOCK", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_SellOutBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -11484,9 +11486,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildSellOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -12206,7 +12205,16 @@
            }
            if (oSystemParameter.omodel.Kf_MateOutBackBill_ERPMode.ToUpper() == "CLOUD")  //判断同步模式是金蝶CLOUD
            {
                if (set_SaveMateOutBackBill_CLD_New(oMain, sHSourceType, oSystemParameter.omodel, ref sErrMsg) == true)
                {
                    //"保存成功!";
                    return true;
                }
                else
                {
                    //"保存失败!";
                    return false;
                }
            }
            sErrMsg = "保存生产退料单失败!" + sErrMsg;
@@ -12376,6 +12384,328 @@
                return false;
            }
        }
        #endregion
        #region 生产退料CLOUD   生产领料(红字)   *New
        //生成生产退料单
        [WebMethod]
        public bool set_SaveMateOutBackBill_CLD_New(Model.ClsKf_ICStockBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
        {
            if (sHSourceType == "3720")   //生产用料清单
            {
                if (SaveMateOutBackBill_PPBom_CLD(oMain, sHSourceType, oSystemParameterMain, ref sErrMsg))
                {
                    //"保存成功!";
                    sErrMsg = "保存成功!" + oMain.HBillNo;
                    return true;
                }
                else
                {
                    //"保存失败!";
                    sErrMsg = "单据号:" + oMain.HBillNo + ",单据ID:" + oMain.HInterID + ";" + sErrMsg;
                    return false;
                }
            }
            //else if (sHSourceType == "1204")   //生产领料单
            //{
            //    if (SaveMateOutBackBill_MateOut_CLD(oMain, sHSourceType, oSystemParameterMain, ref sErrMsg))
            //    {
            //        //"保存成功!";
            //        sErrMsg = "保存成功!" + oMain.HBillNo;
            //        return true;
            //    }
            //    else
            //    {
            //        //"保存失败!";
            //        sErrMsg = "单据号:" + oMain.HBillNo + ",单据ID:" + oMain.HInterID + ";" + sErrMsg;
            //        return false;
            //    }
            //}
            else
            {
                sErrMsg = "单据号:" + oMain.HBillNo + ",单据ID:" + oMain.HInterID + ";错误的源单类型";
                return false;
            }
        }
        /// <summary>
        /// 生产退料单   (源单:生产用料清单)
        /// </summary>
        /// <param name="oMain"></param>
        /// <param name="sErrMsg"></param>
        /// <returns></returns>
        public bool SaveMateOutBackBill_PPBom_CLD(Model.ClsKf_ICStockBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
        {
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
            try
            {
                //判断会计期是否合理
                string s = "";
                int sYear = 0;
                int sPeriod = 0;
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(oMain.HDate, ref sYear, ref sPeriod, ref s) == false)
                {
                    sErrMsg = s;
                    return false;
                }
                oMain.HYear = sYear;
                oMain.HPeriod = sPeriod;
                oCn.BeginTran();
                //生成出入库单据
                //插入子表
                oCn.RunProc("EXEC h_p_Kf_MateOutBackBillSub_Insert_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + sHSourceType + "'");
                //插入主表
                oCn.RunProc("Insert Into Kf_ICStockBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMainSourceBillType" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" +
                ",HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" +
                ",HSTOCKORGID,HOWNERID" +
                ") " +
                " values('1244','1244'," + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "',convert(varchar(10),getdate(),120),'" + oMain.HMainSourceBillType + "'" +
                ", " + oMain.HYear.ToString() + "," + oMain.HPeriod.ToString() + ",'" + oMain.HRemark + "','" + oMain.HMaker + "',convert(varchar(10),getdate(),120)" +
                ", " + oMain.HSupID.ToString() + "," + oMain.HWHID.ToString() + "," + oMain.HSCWHID.ToString() + "," + oMain.HEmpID.ToString() + "," + oMain.HManagerID.ToString() + "," + oMain.HSecManagerID.ToString() +
                ", " + oMain.HKeeperID.ToString() + "," + oMain.HDeptID.ToString() + ",'" + oMain.HExplanation + "','" + oMain.HInnerBillNo + "'," + DBUtility.ClsPub.BoolToString(oMain.HRedBlueFlag) +
                ", " + oMain.HSTOCKORGID.ToString() + "," + oMain.HOWNERID.ToString() +
                ") ");
                //更新关联数量
                oCn.RunProc("exec h_p_Sc_UpDateRelation_PPBomToMateOutBack_Add " + oMain.HInterID.ToString());
                if (oSystemParameterMain.Kf_MateOutBackBill_AutoCheck == "Y") //系统参数  自动审核
                {
                    //审核单据
                    oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120) where HInterID= " + oMain.HInterID.ToString());
                }
                //根据TMP表 返回 子表信息
                DataSet Ds;
                Ds = oCn.RunProcReturn("exec h_p_Kf_GetMateOutBackBill_PPBom_CLD_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "'", "h_p_Kf_GetMateOutBackBill_PPBom_CLD_New");
                if (Ds == null || Ds.Tables[0].Rows.Count == 0 || Ds.Tables[1].Rows.Count == 0)
                {
                    sErrMsg = "获取子表信息失败!";
                    oCn.RollBack();
                    return false;
                }
                else
                {
                    string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\", " +
                    "\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\"," +
                    "\"Model\": { \"FBILLNO\":\"" + oMain.HBillNo + "\"," +
                    //\"FID\":\"0\",
                    "\"FBillType\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillType"]) + "\"}," +
                    "\"FDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDate"]) + "\"," +
                    "\"FStockOrgId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockOrgId"]) + "\"}," +
                    "\"FPrdOrgId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FPrdOrgId"]) + "\"}," +
                    "\"FOwnerTypeId0\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOwnerTypeId0"]) + "\"," +
                    //\"FOwnerId0\":{\"FNumber\":\"\"},
                    "\"FReturnerId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FReturnerId"]) + "\"}," +
                    "\"FSTOCKERID\":{\"FNAME\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSTOCKERID"]) + "\"}," +
                    //\"FDescription\":\"\",
                    //\"FCurrId\":{\"FNumber\":\"\"},
                    "\"FIsCrossTrade\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsCrossTrade"]) + "\"," +
                    "\"FVmiBusiness\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FVmiBusiness"]) + "\"," +
                    //\"FScanBox\":\"\",
                    //\"FSourceType\":\"\",
                    "\"FEntity\": [  ";
                    string sJson_Entry = "";
                    for (int i = 0; i < Ds.Tables[1].Rows.Count; i++)
                    {
                        if (sJson_Entry != "")
                        {
                            sJson_Entry = sJson_Entry + " , ";
                        }
                        string sJson_BatchNo = "";
                        string sJson_StockPlace = "";
                        if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["HISBATCHMANAGE"]) == "1") //是否启用批次管理
                        {
                            sJson_BatchNo = "  \"FLOT\": {\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLOT"]) + "\"},    \"FLOT_TEXT\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLOT"]) + "\"  , ";
                        }
                        else
                        {
                            sJson_BatchNo = "";
                        }
                        if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockLocId"]) == "")  //仓位
                        {
                            sJson_StockPlace = "";
                        }
                        else
                        {
                            sJson_StockPlace = Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockLocId"]) + "\"}},";
                        }
                        sJson_Entry = sJson_Entry + "{" +
                        //\"FEntryID\":\"0\",
                        "\"FMaterialId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMaterialId"]) + "\"}," +
                        "\"FUnitID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FUnitID"]) + "\"}," +
                        "\"FAPPQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAPPQty"]) + "\"," +
                        "\"FQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FQty"]) + "\"," +
                        "\"FReturnType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReturnType"]) + "\"," +
                        //\"FReturnReason\":{\"FNumber\":\"\"},
                        "\"FStockId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockId"]) + "\"}," +
                        sJson_StockPlace +
                        sJson_BatchNo +
                        //\"FEntrtyMemo\":\"\",
                        "\"FSrcBillType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSrcBillType"]) + "\"," +
                        "\"FSrcBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSrcBillNo"]) + "\"," +
                        "\"FEntrySrcEntrySeq\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntrySrcEntrySeq"]) + "\"," +
                        "\"FPPBomBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPPBomBillNo"]) + "\"," +
                        "\"FProcessId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProcessId"]) + "\"}," +
                        "\"FParentMaterialId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FParentMaterialId"]) + "\"}," +
                        "\"FPPBOMEntryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FPPBOMEntryId"]) + "\"," +
                        "\"FMoId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMoId"]) + "\"," +
                        //\"FConsome\":\"\",
                        "\"FReserveType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReserveType"]) + "\"," +
                        "\"FBASESTOCKQTY\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBASESTOCKQTY"]) + "\"," +
                        "\"FMoBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMoBillNo"]) + "\"," +
                        "\"FEntryVmiBusiness\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntryVmiBusiness"]) + "\"," +
                        //\"FOptQueue\":\"\",
                        //\"FOptPlanBillNo\":\"\",
                        //\"FOptPlanBillId\":\"0\",
                        //\"FWorkCenterId\":{\"FNUMBER\":\"\"},
                        //\"FOptDetailId\":\"0\",
                        "\"FMoEntryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMoEntryId"]) + "\"," +
                        //\"FEquipmentId\":{\"FNUMBER\":\"\"},
                        "\"FMoEntrySeq\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMoEntrySeq"]) + "\"," +
                        "\"FAuxPropId\":{\"FAUXPROPID__FF100002\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAuxPropId"]) + "\"}}," +
                        "\"FStockUnitId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockUnitId"]) + "\"}," +
                        //\"FStockAppQty\":\"0\",
                        "\"FSecUnitId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSecUnitId"]) + "\"}," +
                        //\"FSecStockQty\":\"0\",
                        "\"FStockQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockQty"]) + "\"," +
                        "\"FMtoNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FMtoNo"]) + "\"," +
                        "\"FProjectNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProjectNo"]) + "\"," +
                        "\"FStockStatusId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FStockStatusId"]) + "\"}," +
                        "\"FKeeperTypeId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FKeeperTypeId"]) + "\"," +
                        "\"FKeeperId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FKeeperId"]) + "\"}," +
                        "\"FOperId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FOperId"]) + "\"," +
                        "\"FBomId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBomId"]) + "\"}," +
                        //\"FSelRePickedQty\":\"0\",
                        "\"FBaseUnitId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBaseUnitId"]) + "\"}," +
                        "\"FBaseAppQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBaseAppQty"]) + "\"," +
                        //\"FBaseSelRePickedQty\":\"0\",
                        "\"FBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBaseQty"]) + "\"," +
                        "\"FOwnerTypeId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FOwnerTypeId"]) + "\"," +
                        "\"FOwnerId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FOwnerId"]) + "\"}," +
                        "\"FEntrySrcEnteryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntrySrcEnteryId"]) + "\"," +
                        "\"FEntrySrcInterId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntrySrcInterId"]) + "\"," +
                        //\"FProduceDate\":\"1900-01-01\",
                        //\"FExpiryDate\":\"1900-01-01\",
                        "\"FWorkShopId1\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FWorkShopId1"]) + "\"}," +
                        "\"FParentOwnerTypeId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FParentOwnerTypeId"]) + "\"," +
                        "\"FParentOwnerId\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FParentOwnerId"]) + "\"}," +
                        //\"FSrcBizBillType\":{\"FNAME\":\"\"},
                        //\"FSrcBizBillNo\":\"\",
                        //\"FSrcBizInterId\":\"0\",
                        //\"FSrcBizEntryId\":\"0\",
                        //\"FSrcBizEntrySeq\":\"0\",
                        //
                        "\"FSNUnitID\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSNUnitID"]) + "\"}," +
                        "\"FReqSrc\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReqSrc"]) + "\"," +
                        "\"FReqBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReqBillNo"]) + "\"," +
                        "\"FReqBillId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReqBillId"]) + "," +
                        "\"FReqEntrySeq\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReqEntrySeq"]) + "," +
                        "\"FReqEntryId\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FReqEntryId"]) + "," +
                        //\"FSerialSubEntity\":[{\"FDetailID\":\"0\",
                        //\"FSerialNo\":\"\",
                        //\"FSerialId\":{\"FNumber\":\"\"},
                        //\"FSerialNote\":\"\"}]
                        "\"FEntity_Link\": [ {  " +
                        "\"FEntity_Link_FFlowId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FFlowId"]) + "\"," +
                        "\"FEntity_Link_FFlowLineId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FFlowLineId"]) + "\"," +
                        "\"FEntity_Link_FRuleId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FRuleId"]) + "\"," +
                        "\"FEntity_Link_FSTableName\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FSTableName"]) + "\"," +
                        "\"FEntity_Link_FSBillId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FSBillId"]) + "\"," +
                        "\"FEntity_Link_FBASEQTYOLD\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FBASEQTYOLD"]) + "\"," +
                        "\"FEntity_Link_FSId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FEntity_Link_FSId"]) + "\"" +
                        " } ]," +
                        " \"FBFLowId\":{\"FID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FBFLowId"]) + "\"}}";
                    }
                    string sJson_End = "  ]  }}";
                    string sJson = sJson_Main + sJson_Entry + sJson_End;
                    //从配置文件获取 CLOUD网址、账套信息、登录用户、登录密码
                    if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
                    {
                        sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
                        return false;
                    }
                    //获取CLOUD账号密码
                    string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName;
                    string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd;
                    DataSet ds11 = get_SaveCLOUDUseNameandPsd(oMain.HInterID);
                    if (ds11 == null || ds11.Tables[0].Rows.Count == 0)
                    {
                    }
                    else
                    {
                        sCLOUDUseName = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserName"]);
                        sCLOUDPsd = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserPsd"]);
                    }
                    //生成生产退料单
                    string HReturn;
                    ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
                    string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
                    bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052);
                    if (bLogin)
                    {
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PRD_ReturnMtrl", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildMateOutBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_MateOutBackBill_AutoCheck == "Y") //系统参数  自动审核
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
                            var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
                            new object[] { "PRD_ReturnMtrl", sJson2 });
                            string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
                            var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
                            new object[] { "PRD_ReturnMtrl", sJson3 });
                            HReturn = result.ToString() + "," + result2.ToString() + "," + result3.ToString();
                        }
                        else
                        {
                            HReturn = result.ToString();
                        }
                        if (HReturn.Contains("\"IsSuccess\":false") == true)
                        {
                            sErrMsg = "生成生产退料单失败!" + HReturn + sJson;
                            oCn.RollBack();
                            return false;
                        }
                        else
                        {
                            oCn.Commit();
                            return true;
                        }
                    }
                    else
                    {
                        sErrMsg = "生成生产退料单失败!登录失败!";
                        oCn.RollBack();
                        return false;
                    }
                }
            }
            catch (Exception e)
            {
                sErrMsg = "生成生产退料单失败!" + e.Message;
                oCn.RollBack();
                return false;
            }
        }
        #endregion
@@ -13087,6 +13417,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PRD_PickMtrl", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildMateOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_MateOutBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -13111,9 +13444,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildMateOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -14589,6 +14919,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "SUB_PickMtrl", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildEntrustOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_EntrustOutBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -14613,9 +14946,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildEntrustOut '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -16817,6 +17147,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PUR_MRB", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockInBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_POStockInBackBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -16841,9 +17174,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockInBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -17123,6 +17453,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PUR_MRB", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockInBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_POStockInBackBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -17147,9 +17480,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockInBack '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -18460,6 +18790,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_InStock", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_POStockInBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -18484,9 +18817,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -18775,6 +19105,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_InStock", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_POStockInBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -18799,9 +19132,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -20811,6 +21141,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PRD_INSTOCK", sJson }); //调用保存方式
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildProductIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -20835,9 +21168,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildProductIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -21079,6 +21409,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "PRD_INSTOCK", sJson }); //调用保存方式
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildProductIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -21103,9 +21436,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildProductIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }
@@ -22451,6 +22781,9 @@
                        var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
                        new object[] { "STK_InStock", sJson });
                        //生成单据后更新自定义字段
                        oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                        if (oSystemParameterMain.Kf_EntrustInBill_AutoCheck == "Y") //系统参数  自动审核 
                        {
                            string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
@@ -22475,9 +22808,6 @@
                        }
                        else
                        {
                            //生成单据后更新自定义字段
                            oCn.RunProc("exec h_p_Sc_UpDateSelfFildPOStockIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
                            oCn.Commit();
                            return true;
                        }