| | |
| | | |
| | | #region 单据同步 |
| | | |
| | | #region 采购订单同步 根据单据号同步 |
| | | |
| | | [WebMethod] |
| | | public bool GetWebAPIToLocal_POOrder(string HBillNo, string HBillType, string HMaker, ref string sErrMsg) |
| | | { |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | |
| | | //从配置文件获取 CLOUD网址、账套信息、登录用户、登录密码 |
| | | if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo)) |
| | | { |
| | | sErrMsg = Pub_Class.ClsPub.sExeReturnInfo; |
| | | return false; |
| | | } |
| | | |
| | | //获取CLOUD账号密码 |
| | | string HReturn; |
| | | string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName; |
| | | string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd; |
| | | string dbId = Pub_Class.ClsPub.sCLOUDAcc; |
| | | ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl); |
| | | bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052); |
| | | |
| | | if (bLogin) |
| | | { |
| | | //查看单据 |
| | | string sJson = "{\"CreateOrgId\":0,\"Number\":\"" + HBillNo + "\"}"; |
| | | var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View", |
| | | new object[] { "PUR_PurchaseOrder", sJson }); |
| | | var _saveObj = JObject.Parse(result); |
| | | |
| | | //判断数据是否获取成功 |
| | | if (_saveObj.SelectToken("Result.ResponseStatus.IsSuccess")?.ToString().ToUpper() != "TRUE") |
| | | { |
| | | HReturn = result.ToString(); |
| | | //反序列化json数据 |
| | | var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn); |
| | | //接收金蝶报错信息 |
| | | var strErrorMsg = string.Empty; |
| | | //遍历获取报错信息 |
| | | foreach (var item in retModel.Result.ResponseStatus.Errors) |
| | | { |
| | | strErrorMsg += item.Message + "\r\n"; |
| | | }; |
| | | sErrMsg = "同步单据失败!" + strErrorMsg; |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | //主表数据赋值 |
| | | var MainData = new |
| | | { |
| | | HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0", |
| | | HYear = DateTime.Now.Year, |
| | | HPeriod = DateTime.Now.Month, |
| | | HBillType = HBillType, |
| | | HBillSubType = HBillType, |
| | | HDate = _saveObj.SelectToken("Result.Result.Date")?.ToString(), |
| | | HBillNo = _saveObj.SelectToken("Result.Result.BillNo")?.ToString() ?? "", |
| | | HBillStatus = _saveObj.SelectToken("Result.Result.ApproverId_Id")?.ToString() == "0" ? 1 : 2, |
| | | HAddress = "", |
| | | HSSID = 0, |
| | | HSSDate = _saveObj.SelectToken("Result.Result.Date")?.ToString(), |
| | | HPSStyleID = 0, |
| | | HSupID = _saveObj.SelectToken("Result.Result.SupplierId_Id")?.ToString() ?? "0", |
| | | HCurID = 0, |
| | | HExRate = 0, |
| | | HEmpID = _saveObj.SelectToken("Result.Result.PurchaserId_Id")?.ToString() ?? "0", |
| | | HPURCHASERNumber = _saveObj.SelectToken("Result.Result.PurchaserId.Number")?.ToString() ?? "", |
| | | HManagerID = 0, |
| | | HDeptID = _saveObj.SelectToken("Result.Result.PurchaseDeptId_Id")?.ToString() ?? "0", |
| | | HExplanation = "WebAPI导入", |
| | | HRemark = "", |
| | | HInnerBillNo = _saveObj.SelectToken("Result.Result.BillNo")?.ToString() ?? "", |
| | | HMaker = _saveObj.SelectToken("Result.Result.CreatorId.Name")?.ToString() ?? "", |
| | | HMakeDate = _saveObj.SelectToken("Result.Result.CreateDate")?.ToString(), |
| | | HChecker = _saveObj.SelectToken("Result.Result.ApproverId.Name")?.ToString() ?? "", |
| | | HCheckDate = _saveObj.SelectToken("Result.Result.ApproveDate")?.ToString(), |
| | | HUpDater = _saveObj.SelectToken("Result.Result.ModifierId.Name")?.ToString() ?? "", |
| | | HUpDateDate = _saveObj.SelectToken("Result.Result.ModifyDate")?.ToString(), |
| | | HDeleteMan = _saveObj.SelectToken("Result.Result.CancellerId.Name")?.ToString() ?? "", |
| | | HDeleteDate = _saveObj.SelectToken("Result.Result.CancelDate")?.ToString(), |
| | | HCloseMan = _saveObj.SelectToken("Result.Result.CloserId.Name")?.ToString() ?? "", |
| | | HCloseDate = _saveObj.SelectToken("Result.Result.CloseDate")?.ToString(), |
| | | HCloseType = _saveObj.SelectToken("Result.Result.CloseStatus")?.ToString() == "A" ? 0 : 1, |
| | | HERPInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0", |
| | | HERPBillType = _saveObj.SelectToken("Result.Result.BillTypeId_Id")?.ToString() ?? "", |
| | | HPURCHASEORGID = _saveObj.SelectToken("Result.Result.PurchaseOrgId_Id")?.ToString() ?? "0", |
| | | HPURCHASERGROUPID = _saveObj.SelectToken("Result.Result.PurchaserGroupId_Id")?.ToString() ?? "0", |
| | | HPURCHASERGROUPNumber = _saveObj.SelectToken("Result.Result.PurchaserGroupId.Number")?.ToString() ?? "", |
| | | HPROVIDERID = _saveObj.SelectToken("Result.Result.ProviderId_Id")?.ToString() ?? "0", |
| | | HSETTLEID = _saveObj.SelectToken("Result.Result.SettleId_Id")?.ToString() ?? "0", |
| | | HCHARGEID = _saveObj.SelectToken("Result.Result.ChargeId_Id")?.ToString() ?? "0", |
| | | HBUSINESSTYPE = _saveObj.SelectToken("Result.Result.BusinessType")?.ToString() ?? "", |
| | | HPROVIDERADDRESS = _saveObj.SelectToken("Result.Result.ProviderAddress")?.ToString() ?? "", |
| | | HCORRESPONDORGID = _saveObj.SelectToken("Result.Result.CorrespondOrgId_Id")?.ToString() ?? "0", |
| | | HPROVIDERCONTACTID = _saveObj.SelectToken("Result.Result.ProviderContactId_Id")?.ToString() ?? "0", |
| | | HPROVIDERCONTACTNumber = _saveObj.SelectToken("Result.Result.ProviderContactId.CONTACTNUMBER")?.ToString() ?? "", |
| | | HSETTLEMODEID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleModeId_Id")?.ToString() ?? "0", |
| | | HSETTLEMODENumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleModeId.Number")?.ToString() ?? "", |
| | | HSETTLECURRID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleCurrId_Id")?.ToString() ?? "0", |
| | | HSETTLECURRNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].SettleCurrId.Number")?.ToString() ?? "", |
| | | HEXCHANGETYPEID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeTypeId_Id")?.ToString() ?? "0", |
| | | HEXCHANGETYPENumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeTypeId.Number")?.ToString() ?? "", |
| | | HPAYCONDITIONID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].PayConditionId_Id")?.ToString() ?? "0", |
| | | HPAYCONDITIONNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].PayConditionId.Number")?.ToString() ?? "", |
| | | HEXCHANGERATE = _saveObj.SelectToken("Result.Result.POOrderFinance[0].ExchangeRate")?.ToString() ?? "0", |
| | | HLOCALCURRID = _saveObj.SelectToken("Result.Result.POOrderFinance[0].LocalCurrId_Id")?.ToString() ?? "0", |
| | | HLOCALCURRNumber = _saveObj.SelectToken("Result.Result.POOrderFinance[0].LocalCurrId.Number")?.ToString() ?? "", |
| | | HISINCLUDEDTAX = _saveObj.SelectToken("Result.Result.POOrderFinance[0].IsIncludedTax")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HISPRICEEXCLUDETAX = _saveObj.SelectToken("Result.Result.POOrderFinance[0].FISPRICEEXCLUDETAX")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | }; |
| | | |
| | | //根据单据ID,删除本地数据 |
| | | oCn.RunProc("Delete from Cg_POOrderBillMain where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo); |
| | | oCn.RunProc("Delete from Cg_POOrderBillSub where HInterID=" + MainData.HInterID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo); |
| | | |
| | | //插入主表 |
| | | oCn.RunProc("Insert Into Cg_POOrderBillMain " + |
| | | "(HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate" + |
| | | ",HBillNo,HBillStatus,HAddress,HSSID,HSSDate,HPSStyleID" + |
| | | ",HSupID,HCurID,HExRate,HEmpID,HManagerID,HDeptID" + |
| | | ",HExplanation,HRemark,HInnerBillNo" + |
| | | ",HMaker,HMakeDate,HChecker,HCheckDate" + |
| | | ",HUpDater,HUpDateDate,HDeleteMan,HDeleteDate" + |
| | | ",HCloseMan,HCloseDate,HCloseType" + |
| | | ",HERPInterID,HERPBillType,HPURCHASEORGID,HPURCHASERGROUPID,HPURCHASERGROUPNumber" + |
| | | ",HPROVIDERID,HSETTLEID,HCHARGEID,HBUSINESSTYPE,HPROVIDERADDRESS" + |
| | | ",HCORRESPONDORGID,HPROVIDERCONTACTID,HPROVIDERCONTACTNumber,HPURCHASERNumber,HSETTLEMODENumber" + |
| | | ",HSETTLECURRNumber,HEXCHANGETYPENumber,HPAYCONDITIONNumber,HLOCALCURRNumber" + |
| | | ") " + |
| | | " values(" + MainData.HInterID.ToString() + "," + MainData.HYear.ToString() + "," + MainData.HPeriod.ToString() + ",'" + MainData.HBillType + "','" + MainData.HBillSubType + "','" + MainData.HDate + "'" + |
| | | ",'" + MainData.HBillNo + "'," + MainData.HBillStatus.ToString() + ",'" + MainData.HAddress + "'," + MainData.HSSID.ToString() + ",'" + MainData.HSSDate + "'," + MainData.HPSStyleID.ToString() + |
| | | ", " + MainData.HSupID.ToString() + "," + MainData.HCurID.ToString() + "," + MainData.HExRate.ToString() + "," + MainData.HEmpID.ToString() + "," + MainData.HManagerID.ToString() + "," + MainData.HDeptID.ToString() + |
| | | ",'" + MainData.HExplanation + "','" + MainData.HRemark + "','" + MainData.HInnerBillNo + "'" + |
| | | ",'" + MainData.HMaker + "','" + MainData.HMakeDate + "','" + MainData.HChecker + "'," + (MainData.HCheckDate == "" ? "NULL" : "'" + MainData.HCheckDate + "'") + |
| | | ",'" + MainData.HUpDater + "'," + (MainData.HUpDateDate == "" ? "NULL" : "'" + MainData.HUpDateDate + "'") + ",'" + MainData.HDeleteMan + "'," + (MainData.HDeleteDate == "" ? "NULL" : "'" + MainData.HDeleteDate + "'") + |
| | | ",'" + MainData.HCloseMan + "'," + (MainData.HCloseDate == "" ? "NULL" : "'" + MainData.HCloseDate + "'") + "," + DBUtility.ClsPub.BoolToString(MainData.HCloseType) + |
| | | ", " + MainData.HERPInterID.ToString() + ",'" + MainData.HERPBillType + "'," + MainData.HPURCHASEORGID.ToString() + "," + MainData.HPURCHASERGROUPID.ToString() + ",'" + MainData.HPURCHASERGROUPNumber + "'" + |
| | | ", " + MainData.HPROVIDERID.ToString() + "," + MainData.HSETTLEID.ToString() + "," + MainData.HCHARGEID.ToString() + ",'" + MainData.HBUSINESSTYPE + "','" + MainData.HPROVIDERADDRESS + "'" + |
| | | ", " + MainData.HCORRESPONDORGID.ToString() + "," + MainData.HPROVIDERCONTACTID.ToString() + ",'" + MainData.HPROVIDERCONTACTNumber + "','" + MainData.HPURCHASERNumber + "','" + MainData.HSETTLEMODENumber + "'" + |
| | | ",'" + MainData.HSETTLECURRNumber + "','" + MainData.HEXCHANGETYPENumber + "','" + MainData.HPAYCONDITIONNumber + "','" + MainData.HLOCALCURRNumber + "'" + |
| | | ") "); |
| | | |
| | | //子表数据赋值 |
| | | var dataArr = _saveObj.SelectToken("Result.Result.POOrderEntry") as JArray; |
| | | |
| | | if (dataArr != null) |
| | | { |
| | | foreach (var oSub in dataArr) |
| | | { |
| | | var SubData = new |
| | | { |
| | | HInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0", |
| | | HEntryID = oSub.SelectToken("Id")?.ToString() ?? "0", |
| | | HMaterID = oSub.SelectToken("MaterialId_Id")?.ToString() ?? "0", |
| | | HUnitID = oSub.SelectToken("UnitId_Id")?.ToString() ?? "0", |
| | | HQty = oSub.SelectToken("Qty")?.ToString() ?? "0", |
| | | HPrice = oSub.SelectToken("Price")?.ToString() ?? "0", |
| | | HTaxPrice = oSub.SelectToken("TaxPrice")?.ToString() ?? "0", |
| | | HDiscountRate = oSub.SelectToken("DiscountRate")?.ToString() ?? "0", |
| | | HRelTaxPrice = 0, |
| | | HMoney = oSub.SelectToken("Amount")?.ToString() ?? "0", |
| | | HTaxRate = oSub.SelectToken("TaxRate")?.ToString() ?? "0", |
| | | HTaxMoney = oSub.SelectToken("TaxAmount")?.ToString() ?? "0", |
| | | HLineTotal = 0, |
| | | HlineTotalBB = 0, |
| | | HDate = oSub.SelectToken("DeliveryDate")?.ToString() ?? "", |
| | | HInStockQty = 0, |
| | | HInvoiceQty = 0, |
| | | HRemark = oSub.SelectToken("Note")?.ToString() ?? "", |
| | | HSeOrderBillNo = "", |
| | | HSeOrderInterID = 0, |
| | | HSeOrderEntryID = 0, |
| | | HSourceInterID = 0, |
| | | HSourceEntryID = 0, |
| | | HSourceBillNo = "", |
| | | HSourceBillType = "", |
| | | HRelationQty = oSub.SelectToken("JOINQTY")?.ToString() ?? "0", |
| | | HBackRelationQty = oSub.SelectToken("STOCKRETQTY")?.ToString() ?? "0", |
| | | HPropertyID = oSub.SelectToken("AuxPropId_Id")?.ToString() ?? "0", |
| | | HBatChNo = oSub.SelectToken("FLot_Text")?.ToString() ?? "", |
| | | HAuxPropID = oSub.SelectToken("AuxPropId_Id")?.ToString() ?? "0", |
| | | HMTONo = oSub.SelectToken("MtoNo")?.ToString() ?? "", |
| | | HERPInterID = _saveObj.SelectToken("Result.Result.Id")?.ToString() ?? "0", |
| | | HERPEntryID = oSub.SelectToken("Id")?.ToString() ?? "0", |
| | | HSEQ = oSub.SelectToken("Seq")?.ToString() ?? "0", |
| | | HRECEIVEDEPTID = oSub.SelectToken("ReceiveDeptId_Id")?.ToString() ?? "0", |
| | | HSUPPLIERLOT = oSub.SelectToken("SupplierLot")?.ToString() ?? "", |
| | | HBOMID = oSub.SelectToken("BomId_Id")?.ToString() ?? "0", |
| | | HSTOCKUNITID = oSub.SelectToken("StockUnitID_Id")?.ToString() ?? "0", |
| | | HBASEUNITID = oSub.SelectToken("BaseUnitId_Id")?.ToString() ?? "0", |
| | | HBFLOWID = oSub.SelectToken("FBFLowId_Id")?.ToString() ?? "", |
| | | HGIVEAWAY = oSub.SelectToken("GiveAway")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HROWTYPE = oSub.SelectToken("RowType")?.ToString() ?? "", |
| | | HBASEUNITQTY = oSub.SelectToken("BaseUnitQty")?.ToString() ?? "0", |
| | | HSTOCKBASEQTY = oSub.SelectToken("StockBaseQty")?.ToString() ?? "0", |
| | | HREQTRACENO = oSub.SelectToken("ReqTraceNo")?.ToString() ?? "", |
| | | HMATERIALDESC = oSub.SelectToken("MaterialDesc[0].Value")?.ToString() ?? "", |
| | | HRECEIVEORGID = oSub.SelectToken("ReceiveOrgId_Id")?.ToString() ?? "0", |
| | | HREQUIREORGID = oSub.SelectToken("RequireOrgId_Id")?.ToString() ?? "0", |
| | | HTAXNETPRICE = oSub.SelectToken("TaxNetPrice")?.ToString() ?? "0", |
| | | HPRICECOEFFICIENT = oSub.SelectToken("PriceCoefficient")?.ToString() ?? "0", |
| | | HTAXCOMBINATION = oSub.SelectToken("FTaxCombination_Id")?.ToString() ?? "0", |
| | | HTAXCOMBINATIONNumber = oSub.SelectToken("FTaxCombination.Number")?.ToString() ?? "", |
| | | HPRICEUNITID = oSub.SelectToken("PriceUnitId_Id")?.ToString() ?? "0", |
| | | HPRICELISTENTRY = oSub.SelectToken("PriceListEntry_Id")?.ToString() ?? "0", |
| | | HPRICELISTENTRYNumber = oSub.SelectToken("PriceListEntry.Number")?.ToString() ?? "", |
| | | HPAYORGID = oSub.SelectToken("PayOrgId_Id")?.ToString() ?? "0", |
| | | HSETTLEORGID = oSub.SelectToken("SettleOrgId_Id")?.ToString() ?? "0", |
| | | HTaxRate_TAX = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRate")?.ToString() ?? "0", |
| | | HTaxMoney_TAX = oSub.SelectToken("POORDERENTRY_TAX[0].TaxAmount")?.ToString() ?? "0", |
| | | HTAXRATEID = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRateId_Id")?.ToString() ?? "0", |
| | | HTAXRATENumber = oSub.SelectToken("POORDERENTRY_TAX[0].TaxRateId.Number")?.ToString() ?? "", |
| | | HCOSTPERCENT = oSub.SelectToken("POORDERENTRY_TAX[0].CostPercent")?.ToString() ?? "0", |
| | | HCOSTAMOUNT = oSub.SelectToken("POORDERENTRY_TAX[0].CostAmount")?.ToString() ?? "0", |
| | | HVAT = oSub.SelectToken("POORDERENTRY_TAX[0].VAT")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HSELLERWITHHOLDING = oSub.SelectToken("POORDERENTRY_TAX[0].SellerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HBUYERWITHHOLDING = oSub.SelectToken("POORDERENTRY_TAX[0].BuyerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | }; |
| | | |
| | | //插入子表 |
| | | oCn.RunProc("Insert Into Cg_POOrderBillSub " + |
| | | "(HInterID,HEntryID,HMaterID,HUnitID,HQty,HPrice" + |
| | | ",HTaxPrice,HDiscountRate,HRelTaxPrice,HMoney,HTaxRate,HTaxMoney" + |
| | | ",HLineTotal,HlineTotalBB,HDate,HInStockQty,HInvoiceQty,HRemark" + |
| | | ",HSeOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType" + |
| | | ",HRelationQty,HBackRelationQty,HPropertyID,HBatChNo,HAuxPropID,HMTONo" + |
| | | ",HERPInterID,HERPEntryID,HSEQ,HRECEIVEDEPTID,HSUPPLIERLOT,HBOMID" + |
| | | ",HSTOCKUNITID,HBASEUNITID,HBFLOWID,HGIVEAWAY,HROWTYPE,HBASEUNITQTY" + |
| | | ",HSTOCKBASEQTY,HREQTRACENO,HMATERIALDESC,HRECEIVEORGID,HREQUIREORGID,HTAXNETPRICE" + |
| | | ",HPRICECOEFFICIENT,HTAXCOMBINATION,HTAXCOMBINATIONNumber,HPRICEUNITID,HPRICELISTENTRY,HPRICELISTENTRYNumber" + |
| | | ",HPAYORGID,HSETTLEORGID,HTaxRate_TAX,HTaxMoney_TAX,HTAXRATEID,HTAXRATENumber" + |
| | | ",HCOSTPERCENT,HCOSTAMOUNT,HVAT,HSELLERWITHHOLDING,HBUYERWITHHOLDING" + |
| | | ",HSETTLEMODEID,HSETTLECURRID,HEXCHANGETYPEID,HPAYCONDITIONID,HEXCHANGERATE,HLOCALCURRID" + |
| | | ",HISINCLUDEDTAX,HISPRICEEXCLUDETAX" + |
| | | ") " + |
| | | " values(" + SubData.HInterID.ToString() + "," + SubData.HEntryID.ToString() + "," + SubData.HMaterID.ToString() + "," + SubData.HUnitID.ToString() + "," + SubData.HQty.ToString() + "," + SubData.HPrice.ToString() + |
| | | ", " + SubData.HTaxPrice.ToString() + "," + SubData.HDiscountRate.ToString() + "," + SubData.HRelTaxPrice.ToString() + "," + SubData.HMoney.ToString() + "," + SubData.HTaxRate.ToString() + "," + SubData.HTaxMoney.ToString() + |
| | | ", " + SubData.HLineTotal.ToString() + "," + SubData.HlineTotalBB.ToString() + ",'" + SubData.HDate + "'," + SubData.HInStockQty.ToString() + "," + SubData.HInvoiceQty.ToString() + ",'" + SubData.HRemark + "'" + |
| | | ",'" + SubData.HSeOrderBillNo + "'," + SubData.HSeOrderInterID.ToString() + "," + SubData.HSeOrderEntryID.ToString() + "," + SubData.HSourceInterID.ToString() + "," + SubData.HSourceEntryID.ToString() + ",'" + SubData.HSourceBillNo + "','" + SubData.HSourceBillType + "'" + |
| | | ", " + SubData.HRelationQty.ToString() + "," + SubData.HBackRelationQty.ToString() + "," + SubData.HPropertyID.ToString() + ",'" + SubData.HBatChNo + "'," + SubData.HAuxPropID.ToString() + ",'" + SubData.HMTONo + "'" + |
| | | ", " + SubData.HERPInterID.ToString() + "," + SubData.HERPEntryID.ToString() + "," + SubData.HSEQ.ToString() + "," + SubData.HRECEIVEDEPTID.ToString() + ",'" + SubData.HSUPPLIERLOT + "'," + SubData.HBOMID.ToString() + |
| | | ", " + SubData.HSTOCKUNITID.ToString() + "," + SubData.HBASEUNITID.ToString() + ",'" + SubData.HBFLOWID + "'," + DBUtility.ClsPub.BoolToString(SubData.HGIVEAWAY) + ",'" + SubData.HROWTYPE + "'," + SubData.HBASEUNITQTY.ToString() + |
| | | ", " + SubData.HSTOCKBASEQTY.ToString() + ",'" + SubData.HREQTRACENO + "','" + SubData.HMATERIALDESC + "'," + SubData.HRECEIVEORGID.ToString() + "," + SubData.HREQUIREORGID.ToString() + "," + SubData.HTAXNETPRICE.ToString() + |
| | | ", " + SubData.HPRICECOEFFICIENT.ToString() + "," + SubData.HTAXCOMBINATION.ToString() + ",'" + SubData.HTAXCOMBINATIONNumber + "'," + SubData.HPRICEUNITID.ToString() + "," + SubData.HPRICELISTENTRY.ToString() + ",'" + SubData.HPRICELISTENTRYNumber + "'" + |
| | | ", " + SubData.HPAYORGID.ToString() + "," + SubData.HSETTLEORGID.ToString() + "," + SubData.HTaxRate_TAX.ToString() + "," + SubData.HTaxMoney_TAX.ToString() + "," + SubData.HTAXRATEID.ToString() + ",'" + SubData.HTAXRATENumber + "'" + |
| | | ", " + SubData.HCOSTPERCENT.ToString() + "," + SubData.HCOSTAMOUNT.ToString() + "," + DBUtility.ClsPub.BoolToString(SubData.HVAT) + "," + DBUtility.ClsPub.BoolToString(SubData.HSELLERWITHHOLDING) + "," + DBUtility.ClsPub.BoolToString(SubData.HBUYERWITHHOLDING) + |
| | | ", " + MainData.HSETTLEMODEID.ToString() + "," + MainData.HSETTLECURRID.ToString() + "," + MainData.HEXCHANGETYPEID.ToString() + "," + MainData.HPAYCONDITIONID.ToString() + "," + MainData.HEXCHANGERATE.ToString() + "," + MainData.HLOCALCURRID.ToString() + |
| | | ", " + DBUtility.ClsPub.BoolToString(MainData.HISINCLUDEDTAX) + "," + DBUtility.ClsPub.BoolToString(MainData.HISPRICEEXCLUDETAX) + |
| | | ") "); |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | sErrMsg = "同步单据失败!金蝶云登录失败!"; |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 采购入库单同步 根据单据号同步 |
| | | |
| | | [WebMethod] |
| | |
| | | HSNUNITID = oSub.SelectToken("SNUnitID_Id")?.ToString() ?? "0", |
| | | HREMAININSTOCKUNITID = oSub.SelectToken("RemainInStockUnitId_Id")?.ToString() ?? "0", |
| | | HEXTAUXUNITID = oSub.SelectToken("ExtAuxUnitId_Id")?.ToString() ?? "0", |
| | | HTAXRATEID = oSub.SelectToken("STK_INSTOCKENTRY_TAX.TaxRateId_Id")?.ToString() ?? "0", |
| | | HTAXRATENumber = oSub.SelectToken("STK_INSTOCKENTRY_TAX.TaxRateId.Number")?.ToString() ?? "", |
| | | HTAXRATE_TAX = oSub.SelectToken("STK_INSTOCKENTRY_TAX.TaxRate")?.ToString() ?? "0", |
| | | HTAXAMOUNT = oSub.SelectToken("STK_INSTOCKENTRY_TAX.TaxAmount")?.ToString() ?? "0", |
| | | HCOSTPERCENT = oSub.SelectToken("STK_INSTOCKENTRY_TAX.CostPercent")?.ToString() ?? "0", |
| | | HCOSTAMOUNT = oSub.SelectToken("STK_INSTOCKENTRY_TAX.CostAmount")?.ToString() ?? "0", |
| | | HVAT = oSub.SelectToken("STK_INSTOCKENTRY_TAX.VAT")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HSELLERWITHHOLDING = oSub.SelectToken("STK_INSTOCKENTRY_TAX.SellerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HBUYERWITHHOLDING = oSub.SelectToken("STK_INSTOCKENTRY_TAX.BuyerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HTAXRATEID = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].TaxRateId_Id")?.ToString() ?? "0", |
| | | HTAXRATENumber = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].TaxRateId.Number")?.ToString() ?? "", |
| | | HTAXRATE_TAX = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].TaxRate")?.ToString() ?? "0", |
| | | HTAXAMOUNT = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].TaxAmount")?.ToString() ?? "0", |
| | | HCOSTPERCENT = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].CostPercent")?.ToString() ?? "0", |
| | | HCOSTAMOUNT = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].CostAmount")?.ToString() ?? "0", |
| | | HVAT = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].VAT")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HSELLERWITHHOLDING = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].SellerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | HBUYERWITHHOLDING = oSub.SelectToken("STK_INSTOCKENTRY_TAX[0].BuyerWithholding")?.ToString().ToUpper() == "TRUE" ? 1 : 0, |
| | | }; |
| | | |
| | | //插入子表 |
| | |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | Model.ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS(); |
| | | Int64 sMulSourceFlag = 0; //多源单标志(0为非多源单模式,1为多源单模式) |
| | | Int64 sHSourceFlag = 1; //是否重新同步源单信息(1为同步,0为不同步) |
| | | |
| | | if (oSystemParameterMain.Kf_POStockInBill_MulSourceBill.ToUpper() == "Y") //系统参数 采购入库单-多源单模式 |
| | | { |
| | | sMulSourceFlag = 1; |
| | | |
| | | //判断源单是否已存在缓存列表中 |
| | | DataSet dsSource = oCn.RunProcReturn(" select 1 from KF_PonderationBillMain_Temp with(nolock) where HInterID= " + HInterID.ToString() + " and HBillType= '" + HBillType + "' and HSourceBillNo= '" + HSourceBillNo + "' and HQtyMust<>0 ", "KF_PonderationBillMain_Temp"); |
| | | if (dsSource == null || dsSource.Tables[0].Rows.Count == 0) |
| | | { |
| | | sHSourceFlag = 1; |
| | | } |
| | | else |
| | | { |
| | | sHSourceFlag = 0; |
| | | } |
| | | } |
| | | |
| | | //重新同步源单信息 |
| | | if (sHSourceFlag == 1) |
| | | { |
| | | if (oSystemParameterMain.WMS_CloudMode.ToUpper() == "N") //系统参数 是否为私有云模式(N为公有云模式,Y为私有云模式) |
| | | { |
| | | if (HSourceBillType == "1102") |
| | | { |
| | | //采购订单 |
| | | GetWebAPIToLocal_POOrder(HSourceBillNo, HSourceBillType, HMaker, ref sErrMsg); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | //私有云模式 |
| | | oCn.RunProc("exec h_p_WMS_ERPSourceBillToLocal '" + HSourceBillNo + "','" + HSourceBillType + "'"); |
| | | } |
| | | } |
| | | |
| | | //将源单信息存入条码出入库临时表 |