Пример #1
0
        public string UpdateWH_BorrowState(string BorrowID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_Borrow SET Status = " + iState.ToString() + " WHERE BorrowID = '" + BorrowID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            //借廖不更新
//			if(sErrorMsg.Length == 0)
//			{
//				if(state == ApproveState.State_Approved)
//				{
//					string sSql = "SELECT a.* , b.* FROM WH_Borrow a left join WH_BorrowMaterial b on a.BorrowID = b.BorrowID WHERE a.BorrowID = '"+BorrowID+"'";
//					DataTable dtBorrow = this.BaseDataAccess.GetDataTable ( sSql );
//
//					foreach(DataRow drBorrowEdit in dtBorrow.Rows)
//					{
//						//借料
//						CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();
//						CInStoreMaterialDetail pOutStore = new CInStoreMaterialDetail();
//						//
//						pOutStore.StoreOperateType = STOREOPERATETYPE.TYPE_OUT ;
//						pOutStore.OperateHistory = true;
//						pOutStore.InStockMaterialID = drBorrowEdit["InStockMaterialID"].ToString() ;
//						//
//						//pOutStore.QuantityInBinSet  =  cen.ChangeFromBaseUON(drBorrowEdit["ItemCode"].ToString(),drBorrowEdit["MaterialUomID"].ToString(),decimal.Parse(drIssueEdit["QuantityInBin"].ToString()));
//
//						pInStoreMaterialDetailAccess.OperateStore(pOutStore);
//					}
//				}
//			}
            return(sErrorMsg);
        }
Пример #2
0
 /// <summary>
 /// 登録選手の新しいインスタンスを生成します。
 /// </summary>
 /// <param name="playerId">選手id。</param>
 /// <param name="teamId">団体id。</param>
 /// <param name="seasonId">年度id。</param>
 /// <param name="reservationNumber">予約番号。</param>
 /// <param name="reservationBranchNumber">予約番号枝番。</param>
 /// <param name="category">カテゴリー。</param>
 /// <param name="requestType">申請種別。</param>
 /// <param name="approveState">受領状態。</param>
 /// <param name="requestedDateTime">申請受付日。</param>
 /// <param name="playerRegistrationFee">選手登録料。</param>
 /// <param name="approveDateTime">受領日。</param>
 public RequestPlayer(
     int playerId,
     int teamId,
     int seasonId,
     ReservationNumber reservationNumber,
     int reservationBranchNumber,
     Category category,
     RequestType requestType,
     ApproveState approveState,
     DateTime requestedDateTime,
     PlayerRegistrationFee playerRegistrationFee,
     DateTime?approveDateTime
     )
 {
     this.PlayerId                = playerId;
     this.TeamId                  = teamId;
     this.SeasonId                = seasonId;
     this.ReservationNumber       = reservationNumber;
     this.ReservationBranchNumber = reservationBranchNumber;
     this.Category                = category;
     this.RequestType             = requestType;
     this.ApproveState            = approveState;
     this.RequestedDateTime       = requestedDateTime;
     this.PlayerRegistrationFee   = playerRegistrationFee;
     this.ApproveDateTime         = approveDateTime;
 }
Пример #3
0
        void InitializeControlState()
        {
            if (PmsService.Instance.CurrentUser.Group.Name == "检测")
            {
                // BindMeasurementControl();

                _ExecuteReportControlState = new ExecuteState();
                _ExecuteReportControlState.Enter(this);
            }
            if (PmsService.Instance.CurrentUser.Group.Name == "评审")
            {
                //BindMeasurementControl();
                //BindAuditControl();
                _ExecuteReportControlState = new AuditState();
                _ExecuteReportControlState.Enter(this);
            }
            if (PmsService.Instance.CurrentUser.Group.Name == "审批")
            {
                // BindMeasurementControl();
                //BindAuditControl();
                //BindApproveControl();

                _ExecuteReportControlState = new ApproveState();
                _ExecuteReportControlState.Enter(this);
            }
        }
Пример #4
0
 public OsuBeatmap(Org.Json.JSONObject obj)
 {
     Approved     = (ApproveState)obj.GetInt("approved");
     ApprovedDate = obj.GetString("approved_date");
     LastUpdate   = obj.GetString("last_update");
     Artist       = obj.GetString("artist");
     Id           = obj.GetString("beatmap_id");
     SetId        = obj.GetString("beatmapset_id");
     Bpm          = obj.GetString("bpm");
     Creator      = obj.GetString("creator");
     obj.GetString("difficultyrating");
     Difficulty     = new Difficulty(obj);
     HitLength      = obj.GetLong("hit_length");
     Source         = obj.GetString("source");
     Genre          = (GenreType)obj.GetInt("genre_id");
     Language       = (LanguageType)obj.GetInt("language_id");
     Title          = obj.GetString("title");
     TotalLength    = obj.GetLong("total_length");
     DifficultyName = obj.GetString("version");
     MD5            = obj.GetString("file_md5");
     Mode           = (GameMode)obj.GetInt("mode");
     m_tags         = obj.GetString("tags");
     FavoriteCount  = obj.GetLong("favourite_count");
     PlayCount      = obj.GetLong("playcount");
     PassCount      = obj.GetLong("passcount");
     //MaxCombo = obj.GetLong("max_combo");
 }
Пример #5
0
        public string UpdateTransferDEP2DEPState(string sTransferDEP2DEPID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_TransferDEP2DEP SET Status = " + iState.ToString() + " WHERE TransferDEP2DEPID = '" + sTransferDEP2DEPID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            return(sErrorMsg);
        }
Пример #6
0
        public string Update_MR_MaterialRequisition_State(string sMRID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE MR_MaterialRequisition SET Status = " + iState.ToString() + " WHERE MRID = '" + sMRID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            return(sErrorMsg);
        }
Пример #7
0
        public string UpdateWH_IssueState(string IssueID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_Issue SET Status = " + iState.ToString() + "WHERE IssueID = '" + IssueID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            if (sErrorMsg.Length == 0)
            {
                if (state == ApproveState.State_Approved)
                {
                    string    sSql      = "SELECT a.* , b.* FROM WH_Issue a left join WH_IssueMaterial b on a.IssueID = b.IssueID WHERE a.IssueID = '" + IssueID + "'";
                    DataTable IssueEdit = this.BaseDataAccess.GetDataTable(sSql);

                    foreach (DataRow drIssueEdit in IssueEdit.Rows)
                    {
                        //出库
                        CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();
                        CInStoreMaterialDetail       pOutStore = new CInStoreMaterialDetail();
                        pOutStore.StoreOperateType  = STOREOPERATETYPE.TYPE_OUT;
                        pOutStore.OperateHistory    = true;
                        pOutStore.InStockMaterialID = drIssueEdit["InStockMaterialID"].ToString();
                        pOutStore.QuantityInBinSet  = cen.ChangeToBaseUOM(drIssueEdit["ItemCode"].ToString(), drIssueEdit["MaterialUomID"].ToString(), decimal.Parse(drIssueEdit["FactIssuedQuantity"].ToString()));
                        decimal decPreserveQuantityInFact = Convert.ToDecimal(drIssueEdit["PreserveQuantityInFact"] == DBNull.Value ? 0 : drIssueEdit["PreserveQuantityInFact"]);
                        pOutStore.PreserveQuantitySet = cen.ChangeToBaseUOM(drIssueEdit["ItemCode"].ToString(), drIssueEdit["MaterialUomID"].ToString(), decPreserveQuantityInFact);

                        pInStoreMaterialDetailAccess.OperateStore(pOutStore);

                        //把数据写入财务接口
                        CInterfaceOfFinanceAccess  pInterfaceOfFinanceAccess = new CInterfaceOfFinanceAccess();
                        CInterfaceOfFinance pInterfaceOfFinance = new CInterfaceOfFinance();
                        //库房
                        pInterfaceOfFinance.Location = drIssueEdit["WHID"].ToString();
                        //物资编码
                        pInterfaceOfFinance.ItemCode = drIssueEdit["ItemCode"].ToString();
                        //库位
                        pInterfaceOfFinance.BinNo = drIssueEdit["BINID"].ToString();
                        //单据号
                        pInterfaceOfFinance.BillNo = drIssueEdit["IssueNo"].ToString();
                        //操作人
                        pInterfaceOfFinance.Operater = drIssueEdit["CreateBy"].ToString();
                        //是出库还是入库
                        pInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_OUT;
                        //单据类型
                        pInterfaceOfFinance.OperationType = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_Issue);
                        //基本单位的数量
                        pInterfaceOfFinance.Quantity = decimal.Parse(drIssueEdit["FactIssuedQuantity"].ToString());
                        //核算单价
                        pInterfaceOfFinance.UnitPriceStandard = decimal.Parse(drIssueEdit["UnitPriceStandard"].ToString());

                        pInterfaceOfFinanceAccess.OperateInterface(pInterfaceOfFinance);
                    }
                }
            }
            return(sErrorMsg);
        }
Пример #8
0
        public string UpdateAdjustOutState(string sAdjustOutID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_AdjustOut SET Status = " + iState.ToString() + " WHERE AdjustOutID = '" + sAdjustOutID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            if (sErrorMsg.Length == 0)
            {
                if (state == ApproveState.State_Approved)
                {
                    string    sSql             = "SELECT a.* , b.WHID,b.AdjustOutNO,b.CreateBy FROM WH_AdjustOutMaterial a left join WH_AdjustOut b on a.AdjustOutID = b.AdjustOutID WHERE a.AdjustOutID = '" + sAdjustOutID + "'";
                    DataTable dtRejectMaterial = this.BaseDataAccess.GetDataTable(sSql);

                    foreach (DataRow drRejectMaterial in dtRejectMaterial.Rows)
                    {
                        CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();
                        //出库
                        CInStoreMaterialDetail pInStore = new CInStoreMaterialDetail();
                        pInStore.StoreOperateType  = STOREOPERATETYPE.TYPE_OUT;
                        pInStore.OperateHistory    = true;
                        pInStore.InStockMaterialID = drRejectMaterial["InStockMaterialID"].ToString();
                        pInStore.QuantityInBinSet  = decimal.Parse(drRejectMaterial["QuantityReject"].ToString());
                        pInStoreMaterialDetailAccess.OperateStore(pInStore);

                        //把数据写入财务接口
                        CInterfaceOfFinanceAccess  pInterfaceOfFinanceAccess = new CInterfaceOfFinanceAccess();
                        CInterfaceOfFinance pInterfaceOfFinance = new CInterfaceOfFinance();
                        //库房
                        pInterfaceOfFinance.Location = drRejectMaterial["WHID"].ToString();
                        //物资编码
                        pInterfaceOfFinance.ItemCode = drRejectMaterial["ItemCode"].ToString();
                        //库位
                        pInterfaceOfFinance.BinNo = drRejectMaterial["BINID"].ToString();
                        //单据号
                        pInterfaceOfFinance.BillNo = drRejectMaterial["AdjustOutNO"].ToString();
                        //操作人
                        pInterfaceOfFinance.Operater = drRejectMaterial["CreateBy"].ToString();
                        //是出库还是入库
                        pInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_OUT;
                        //单据类型
                        pInterfaceOfFinance.OperationType = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_AdjustOut);
                        //基本单位的数量
                        pInterfaceOfFinance.Quantity = decimal.Parse(drRejectMaterial["QuantityReject"].ToString());
                        //核算单价
                        pInterfaceOfFinance.UnitPriceStandard = decimal.Parse(drRejectMaterial["UnitPriceStandard"].ToString());

                        pInterfaceOfFinanceAccess.OperateInterface(pInterfaceOfFinance);
                    }
                }
            }
            return(sErrorMsg);
        }
Пример #9
0
        private void OnPartTask(object i_Obj)
        {
            BeginInvoke(new MessageHanlderDelegate(i_O =>
            {
                var task = i_O as Task;
                if (task == null)
                {
                    return;
                }
                _ExecuteReportControlState = new ExecuteState();
                _ExecuteReportControlState.Enter(this);
                _Task             = task;
                _ExecutionManager = new ExecutionManager(_Task);
                _CurrentTemplate  = task.Part;
                if (_CurrentTemplate == null)
                {
                    return;
                }
                Mediator.Mediator.Instance.NotifyColleagues(Execution.TaskStarted, task);

                CreateReportModel();

                BindingTextControls();
                RefreshCommentControls();
                if (PmsService.Instance.CurrentUser.Group.Name == "检测")
                {
                    LblTester.Text             = PmsService.Instance.CurrentUser.Name;
                    LblTestDate.Text           = DateTime.Now.ToLongDateString();
                    _ExecuteReportControlState = new ExecuteState();
                    _ExecuteReportControlState.Enter(this);
                }
                if (PmsService.Instance.CurrentUser.Group.Name == "评审")
                {
                    BindMeasurementControl();
                    LblAuditor.Text            = PmsService.Instance.CurrentUser.Name;
                    LblAuditDate.Text          = DateTime.Now.ToLongDateString();
                    _ExecuteReportControlState = new AuditState();
                    _ExecuteReportControlState.Enter(this);
                }
                if (PmsService.Instance.CurrentUser.Group.Name == "审批")
                {
                    BindMeasurementControl();
                    BindAuditControl();
                    LblApprover.Text           = PmsService.Instance.CurrentUser.Name;
                    LblApproveDate.Text        = DateTime.Now.ToLongDateString();
                    _ExecuteReportControlState = new ApproveState();
                    _ExecuteReportControlState.Enter(this);
                }
            }), i_Obj);
        }
Пример #10
0
        public string UpdateTransferBin2BinState(string sTransferBin2BinID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_TransferBin2Bin SET Status = " + iState.ToString() + " WHERE TransferBin2BinID = '" + sTransferBin2BinID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            if (sErrorMsg.Length == 0)
            {
                if (state == ApproveState.State_Approved)
                {
                    string    sSql = "SELECT a.* , b.WHID,c.VendorID,c.MFG,c.PartNo,c.Comment FROM WH_TransferBin2BinMaterial a left join WH_TransferBin2Bin b on a.TransferBin2BinID = b.TransferBin2BinID join WH_InStoreMaterialDetail c on c.InStockMaterialID = a.InStockMaterialID WHERE a.TransferBin2BinID = '" + sTransferBin2BinID + "'";
                    DataTable dtTransferBin2BinMaterial = this.BaseDataAccess.GetDataTable(sSql);

                    foreach (DataRow drTransferBin2BinMaterial in dtTransferBin2BinMaterial.Rows)
                    {
                        //出库
                        CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();
                        CInStoreMaterialDetail       pOutStore = new CInStoreMaterialDetail();
                        pOutStore.StoreOperateType  = STOREOPERATETYPE.TYPE_OUT;
                        pOutStore.OperateHistory    = false;
                        pOutStore.InStockMaterialID = drTransferBin2BinMaterial["InStockMaterialID"].ToString();
                        pOutStore.QuantityInBinSet  = Decimal.Parse(drTransferBin2BinMaterial["TransferQuantity"].ToString());
                        pInStoreMaterialDetailAccess.OperateStore(pOutStore);

                        //入库
                        CInStoreMaterialDetail pInStore = new CInStoreMaterialDetail();
                        pInStore.StoreOperateType    = STOREOPERATETYPE.TYPE_IN;
                        pInStore.OperateHistory      = false;
                        pInStore.BINID               = drTransferBin2BinMaterial["BINIDNew"].ToString();
                        pInStore.ItemCode            = drTransferBin2BinMaterial["ItemCode"].ToString();
                        pInStore.POID                = drTransferBin2BinMaterial["POID"].ToString();
                        pInStore.WHID                = drTransferBin2BinMaterial["WHID"].ToString();;
                        pInStore.UnitPricePOStandard = Decimal.Parse(drTransferBin2BinMaterial["UnitPriceStandard"].ToString());
                        pInStore.UnitPricePONatural  = Decimal.Parse(drTransferBin2BinMaterial["UnitPriceNatural"].ToString());
                        pInStore.VendorID            = drTransferBin2BinMaterial["VendorID"].ToString();
                        pInStore.MFG              = drTransferBin2BinMaterial["MFG"].ToString();
                        pInStore.PartNo           = drTransferBin2BinMaterial["PartNo"].ToString();
                        pInStore.Comment          = drTransferBin2BinMaterial["Comment"].ToString();
                        pInStore.QuantityInBinSet = Decimal.Parse(drTransferBin2BinMaterial["TransferQuantity"].ToString());
                        pInStoreMaterialDetailAccess.OperateStore(pInStore);
                    }
                }
            }
            return(sErrorMsg);
        }
Пример #11
0
        public string UpdatePreserveState(string sPreserveID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_Preserve SET Status = " + iState.ToString() + " WHERE PreserveID = '" + sPreserveID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);
            if (sErrorMsg.Length == 0)
            {
                if (state == ApproveState.State_Approved)
                {
                    string    sSql = "SELECT a.* , b.WHID,b.IsPreserve FROM WH_PreserveMaterial a left join WH_Preserve b on a.PreserveID = b.PreserveID WHERE a.PreserveID = '" + sPreserveID + "'";
                    DataTable dtPreserveMaterial = this.BaseDataAccess.GetDataTable(sSql);
                    bool      bIsPreserve        = Convert.ToBoolean(dtPreserveMaterial.Rows[0]["IsPreserve"]);
                    foreach (DataRow drPreserveMaterial in dtPreserveMaterial.Rows)
                    {
                        CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();
                        //入库
                        CInStoreMaterialDetail pInStore = new CInStoreMaterialDetail();
                        if (bIsPreserve == true)
                        {
                            pInStore.StoreOperateType    = STOREOPERATETYPE.TYPE_IN;
                            pInStore.PreserveQuantitySet = Decimal.Parse(drPreserveMaterial["QuantityPreserve"].ToString());
                        }
                        else
                        {
                            pInStore.StoreOperateType    = STOREOPERATETYPE.TYPE_OUT;
                            pInStore.PreserveQuantitySet = Decimal.Parse(drPreserveMaterial["QuantityByCanceled"].ToString());
                        }
                        pInStore.OperateHistory    = false;
                        pInStore.InStockMaterialID = drPreserveMaterial["InStockMaterialID"].ToString();
                        pInStore.QuantityInBinSet  = 0;

                        pInStoreMaterialDetailAccess.OperateStore(pInStore);
                    }
                }
            }
            return(sErrorMsg);
        }
Пример #12
0
        /// <summary>
        /// 更新收料单状态
        /// </summary>
        /// <param name="sReceiveID">主键</param>
        /// <param name="state">目标状态</param>
        /// <returns></returns>
        public string UpdateReceiveState(string sReceiveID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_Receive SET Status = " + iState.ToString() + " WHERE ReceiveID = '" + sReceiveID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);

            if (sErrorMsg.Length == 0)
            {
                switch (state)
                {
                case ApproveState.State_Approved:
                {
                    string[]    sParams        = { "ReceiveID" };
                    object[]    objParamValues = { sReceiveID };
                    SqlDbType[] paramTypes     = { SqlDbType.NVarChar };

                    bool bRetVal = this.BaseDataAccess.ExecuteSP("spUpdatePOMaterialANDOperateStoreMaterialDetail", sParams, objParamValues, paramTypes);

                    if (bRetVal == false)
                    {
                        sErrorMsg = "OperateStoreFailed";
                    }

                    // 写入财务接口
                    string sSelectSql = @"SELECT WHID,ItemCode,BINID,ReceiveNo,CreateBy,FactReceivedQuantity,UnitPriceStandard FROM WH_ReceiveMaterial 
											INNER JOIN WH_Receive ON WH_ReceiveMaterial.ReceiveID = WH_Receive.ReceiveID WHERE WH_Receive.ReceiveID = '"                                             + sReceiveID + "'";

                    DataTable dtReceiveMaterial = this.BaseDataAccess.GetDataTable(sSelectSql);

                    foreach (DataRow dr in dtReceiveMaterial.Rows)
                    {
                        // 财务接口处理类
                        CInterfaceOfFinanceAccess pInterfaceOfFinanceAccess = new CInterfaceOfFinanceAccess();

                        // 财务接口实体
                        CInterfaceOfFinance pInterfaceOfFinance = new CInterfaceOfFinance();

                        pInterfaceOfFinance.Location           = dr["WHID"].ToString();
                        pInterfaceOfFinance.ItemCode           = dr["ItemCode"].ToString();
                        pInterfaceOfFinance.BinNo              = dr["BINID"].ToString();
                        pInterfaceOfFinance.BillNo             = dr["ReceiveNo"].ToString();
                        pInterfaceOfFinance.Operater           = dr["CreateBy"].ToString();
                        pInterfaceOfFinance.Quantity           = decimal.Parse(dr["FactReceivedQuantity"].ToString());
                        pInterfaceOfFinance.UnitPriceStandard  = decimal.Parse(dr["UnitPriceStandard"].ToString());
                        pInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_IN;
                        pInterfaceOfFinance.OperationType      = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_Receive);

                        pInterfaceOfFinanceAccess.OperateInterface(pInterfaceOfFinance);
                    }

                    // =========================================== //
                    // Modified By Liujun at 20081230
                    // 更新本次收料相关PO所有的 收料记录中的汇率,并且对更新后单价相同项进行合并

//                        #region 更新汇率



//                        DAEInStoreMaterialDetail dataEntity = new DAEInStoreMaterialDetail();

//                        string UpdateSql = @"UPDATE WH_Receive SET TotalPriceStandardlER = (SELECT TotalPriceStandardlER FROM WH_Receive WHERE ReceiveID = '" + sReceiveID + "') WHERE POID IN (SELECT POID FROM WH_Receive WHERE ReceiveID = '" + sReceiveID + "')";

//                        sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(UpdateSql);

//                        if (sErrorMsg.Length == 0)
//                        {
//                            UpdateSql = "UPDATE WH_Receive SET TotalPriceStandarCUR = TotalPriceStandardlER * TotalPrice WHERE POID IN (SELECT POID FROM WH_Receive WHERE ReceiveID = '" + sReceiveID + "')";

//                            sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(UpdateSql);
//                        }

//                        if (sErrorMsg.Length == 0)
//                        {
//                            UpdateSql = @"UPDATE WH_ReceiveMaterial SET UnitPriceStandard = WH_Receive.TotalPriceStandardlER * UnitPrice
//                            FROM WH_ReceiveMaterial INNER JOIN WH_Receive ON WH_Receive.ReceiveID = WH_ReceiveMaterial.ReceiveID
//                            WHERE POID IN (SELECT POID FROM WH_Receive WHERE ReceiveID = '" + sReceiveID + "')";

//                            sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(UpdateSql);
//                        }

//                        if (sErrorMsg.Length == 0)
//                        {
//                            UpdateSql = @"UPDATE WH_InStoreMaterialDetail SET WH_InStoreMaterialDetail.UnitPricePOStandard = WH_ReceiveMaterial.UnitPriceStandard
//                            FROM WH_InStoreMaterialDetail INNER JOIN WH_ReceiveMaterial ON WH_ReceiveMaterial.ItemCode = WH_InStoreMaterialDetail.ItemCode
//                            INNER JOIN WH_Receive ON WH_Receive.ReceiveID = WH_ReceiveMaterial.ReceiveID AND WH_Receive.POID = WH_InStoreMaterialDetail.POID
//                            WHERE WH_Receive.POID IN (SELECT POID FROM WH_Receive WHERE ReceiveID = '" + sReceiveID + "')";

//                            sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(UpdateSql);
//                        }

//                        // ============================================================= //
//                        // Modified By Liujun at 20081228
//                        // 根据 Warehouse+ItemCode+PO+BinNo+UnitPrice 进行数量合并

//                        // 根据PO选出所有库存物资
//                        string SelectSql = "SELECT * FROM WH_InStoreMaterialDetail WHERE POID IN (SELECT POID FROM WH_Receive WHERE ReceiveID = '" + sReceiveID + "') ORDER BY ReceiveDate";

//                        DataTable dtPOInWarehouse = dataEntity.BaseDataAccess.GetDataTable(SelectSql);

//                        // 待删除列表 放置 InStockMaterialID
//                        System.Collections.ArrayList list = new System.Collections.ArrayList();

//                        for (int i = dtPOInWarehouse.Rows.Count - 1; i >= 0; i--)
//                        {
//                            for (int j = i - 1; j >= 0; j--)
//                            {
//                                if (dtPOInWarehouse.Rows[i]["WHID"].ToString() == dtPOInWarehouse.Rows[j]["WHID"].ToString()
//                                    && dtPOInWarehouse.Rows[i]["ItemCode"].ToString() == dtPOInWarehouse.Rows[j]["ItemCode"].ToString()
//                                    && dtPOInWarehouse.Rows[i]["POID"].ToString() == dtPOInWarehouse.Rows[j]["POID"].ToString()
//                                    && dtPOInWarehouse.Rows[i]["BinID"].ToString() == dtPOInWarehouse.Rows[j]["BinID"].ToString()
//                                    && dtPOInWarehouse.Rows[i]["UnitPricePOStandard"].ToString() == dtPOInWarehouse.Rows[j]["UnitPricePOStandard"].ToString())
//                                {
//                                    dtPOInWarehouse.Rows[j]["QuantityInBin"] = decimal.Parse(dtPOInWarehouse.Rows[i]["QuantityInBin"].ToString()) + decimal.Parse(dtPOInWarehouse.Rows[j]["QuantityInBin"].ToString());

//                                    // 分别对比较行与被比较行修改临时状态
//                                    dtPOInWarehouse.Rows[j]["Status"] = 1;

//                                    // 放入删除列表中
//                                    list.Add(dtPOInWarehouse.Rows[i]["InStockMaterialID"].ToString());

//                                    // 在内存数据表中删除
//                                    dtPOInWarehouse.Rows.RemoveAt(i);

//                                    break;
//                                }
//                            }
//                        }



//                        // 更新数据
//                        foreach (DataRow dr in dtPOInWarehouse.Rows)
//                        {
//                            if (dr["Status"].ToString() == "1")
//                            {
//                                UpdateSql = "UPDATE WH_InStoreMaterialDetail SET QuantityInBin = " + dr["QuantityInBin"].ToString() + " WHERE InStockMaterialID ='" + dr["InStockMaterialID"].ToString() + "'";

//                                sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(UpdateSql);
//                            }
//                        }


//                        // 删除数据(数量变为0)
//                        string DeleteSql = string.Empty;

//                        foreach (string str in list)
//                        {
//                            //DeleteSql = "UPDATE WH_InStoreMaterialDetail SET QuantityInBin = 0 WHERE InStockMaterialID ='" + str + "'";
//                            DeleteSql = "DELETE FROM WH_InStoreMaterialDetail WHERE InStockMaterialID ='" + str + "'";

//                            sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(DeleteSql);
//                        }

//                        #endregion

//                        // =========================================== //

//                        // =========================================== //
//                        // Modified By Liujun at 20030315
//                        // 更新本次收料相关PO的物资Remark。
//                        UpdateSql = @"UPDATE POMaterial
//
//                                    SET POMaterial.Remark = WH_ReceiveMaterial.Comment
//
//                                    FROM POMaterial INNER JOIN WH_Receive ON POMaterial.POID = WH_Receive.POID
//                                    INNER JOIN WH_ReceiveMaterial ON WH_Receive.ReceiveID = WH_ReceiveMaterial.ReceiveID
//                                    AND WH_ReceiveMaterial.ItemCode = POMaterial.ItemCode
//                                    WHERE WH_Receive.ReceiveID = '" + sReceiveID + "' AND WH_ReceiveMaterial.Comment <>  ''";
//                        sErrorMsg = dataEntity.BaseDataAccess.ExecuteDMLSQL(UpdateSql);

//                        // =========================================== //

                    break;
                }
                }
            }

            return(sErrorMsg);
        }
Пример #13
0
        /// <summary>
        /// 更新直达收料单状态
        /// </summary>
        /// <param name="sReceiveID">主键</param>
        /// <param name="state">目标状态</param>
        /// <returns></returns>
        public string UpdateDirectState(string sIssueID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_Receive SET Status = " + iState.ToString() + " WHERE ReceiveID = '" + sIssueID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);

            sUpdateSql = "UPDATE WH_Issue SET Status = " + iState.ToString() + " WHERE IssueID = '" + sIssueID + "' ";
            sErrorMsg  = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);

            switch (state)
            {
            case ApproveState.State_Approved:
            {
                // 收料更新(库存,入库)
                string[]    sParams        = { "ReceiveID" };
                object[]    objParamValues = { sIssueID };
                SqlDbType[] paramTypes     = { SqlDbType.NVarChar };

                bool bRetVal = this.BaseDataAccess.ExecuteSP("spUpdatePOMaterialANDOperateStoreMaterialDetail", sParams, objParamValues, paramTypes);

                if (bRetVal == false)
                {
                    sErrorMsg = "OperateStoreFailed";
                }


                string    sSql = "SELECT a.* , b.WHID,b.POID,b.ReceiveNo,b.CreateBy FROM WH_ReceiveMaterial a left join WH_Receive b on a.ReceiveID = b.ReceiveID WHERE a.ReceiveID = '" + sIssueID + "'";
                DataTable dtReceiveMaterial = this.BaseDataAccess.GetDataTable(sSql);
                CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();

                // 财务接口处理类
                CInterfaceOfFinanceAccess pInterfaceOfFinanceAccess = new CInterfaceOfFinanceAccess();

                foreach (DataRow drReceiveMaterial in dtReceiveMaterial.Rows)
                {
                    // 财务接口实体
                    CInterfaceOfFinance pInStoreInterfaceOfFinance = new CInterfaceOfFinance();

                    pInStoreInterfaceOfFinance.Location           = drReceiveMaterial["WHID"].ToString();
                    pInStoreInterfaceOfFinance.ItemCode           = drReceiveMaterial["ItemCode"].ToString();
                    pInStoreInterfaceOfFinance.BinNo              = drReceiveMaterial["BINID"].ToString();
                    pInStoreInterfaceOfFinance.BillNo             = drReceiveMaterial["ReceiveNo"].ToString();
                    pInStoreInterfaceOfFinance.Operater           = drReceiveMaterial["CreateBy"].ToString();
                    pInStoreInterfaceOfFinance.Quantity           = decimal.Parse(drReceiveMaterial["FactReceivedQuantity"].ToString());
                    pInStoreInterfaceOfFinance.UnitPriceStandard  = decimal.Parse(drReceiveMaterial["UnitPriceStandard"].ToString());
                    pInStoreInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_IN;
                    pInStoreInterfaceOfFinance.OperationType      = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_Receive);

                    pInterfaceOfFinanceAccess.OperateInterface(pInStoreInterfaceOfFinance);



                    // 出库
                    CInStoreMaterialDetail pOutStore = new CInStoreMaterialDetail();
                    pOutStore.StoreOperateType = STOREOPERATETYPE.TYPE_OUT;
                    pOutStore.OperateHistory   = true;

                    pOutStore.BINID    = drReceiveMaterial["BINID"].ToString();
                    pOutStore.ItemCode = drReceiveMaterial["ItemCode"].ToString();
                    pOutStore.POID     = drReceiveMaterial["POID"].ToString();
                    pOutStore.WHID     = drReceiveMaterial["WHID"].ToString();

                    pOutStore.UnitPricePONatural  = Decimal.Parse(drReceiveMaterial["UnitPriceNatural"].ToString());
                    pOutStore.UnitPricePOStandard = Decimal.Parse(drReceiveMaterial["UnitPriceStandard"].ToString());
                    pOutStore.QuantityInBinSet    = Decimal.Parse(drReceiveMaterial["FactReceivedQuantity"].ToString());

                    pInStoreMaterialDetailAccess.OperateStore(pOutStore);


                    // 财务接口实体
                    CInterfaceOfFinance pOutStoreInterfaceOfFinance = new CInterfaceOfFinance();

                    pOutStoreInterfaceOfFinance.Location           = drReceiveMaterial["WHID"].ToString();
                    pOutStoreInterfaceOfFinance.ItemCode           = drReceiveMaterial["ItemCode"].ToString();
                    pOutStoreInterfaceOfFinance.BinNo              = drReceiveMaterial["BINID"].ToString();
                    pOutStoreInterfaceOfFinance.BillNo             = drReceiveMaterial["ReceiveNo"].ToString();
                    pOutStoreInterfaceOfFinance.Operater           = drReceiveMaterial["CreateBy"].ToString();
                    pOutStoreInterfaceOfFinance.Quantity           = decimal.Parse(drReceiveMaterial["FactReceivedQuantity"].ToString());
                    pOutStoreInterfaceOfFinance.UnitPriceStandard  = decimal.Parse(drReceiveMaterial["UnitPriceStandard"].ToString());
                    pOutStoreInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_OUT;
                    pOutStoreInterfaceOfFinance.OperationType      = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_Issue);

                    pInterfaceOfFinanceAccess.OperateInterface(pOutStoreInterfaceOfFinance);
                }

                break;
            }
            }

            return(sErrorMsg);
        }
Пример #14
0
        /// <summary>
        /// 刷新工具栏
        /// </summary>
        protected virtual void RefreshTool()
        {
            switch (BillState)
            {
            case State.None:
                this.toolStripNew.Enabled          = true;
                this.toolStripDelete.Enabled       = false;
                this.toolStripEdit.Enabled         = false;
                this.toolStripCancel.Enabled       = false;
                this.toolStripSave.Enabled         = false;
                this.toolStripApprove.Enabled      = false;
                this.toolStripReApprove.Enabled    = false;
                this.toolStripPrint.Enabled        = false;
                this.toolStripExport.Enabled       = false;
                this.toolStripCancellation.Enabled = false;
                this.picFlag.Image = null;
                break;

            case State.New:
                goto case State.Edit;

            case State.Edit:
                this.toolStripNew.Enabled          = false;
                this.toolStripDelete.Enabled       = false;
                this.toolStripEdit.Enabled         = false;
                this.toolStripCancel.Enabled       = true;
                this.toolStripSave.Enabled         = true;
                this.toolStripApprove.Enabled      = false;
                this.toolStripReApprove.Enabled    = false;
                this.toolStripPrint.Enabled        = false;
                this.toolStripExport.Enabled       = false;
                this.toolStripCancellation.Enabled = false;
                if (billState == State.New)
                {
                    this.picFlag.Image = Resource1.Adding;
                }
                else
                {
                    this.picFlag.Image = Resource1.Editing;
                }
                break;

            case State.Query:
                bool canEdit = CanEdit();
                this.toolStripNew.Enabled    = true;
                this.toolStripDelete.Enabled = CanDelete();
                this.toolStripEdit.Enabled   = canEdit;
                this.toolStripCancel.Enabled = false;
                this.toolStripSave.Enabled   = false;
                ApproveState      approveState      = IsApprove();
                CancellationState cancellationState = IsCancelled();
                this.picFlag.Image = Resource1.Saved;
                switch (approveState)
                {
                case ApproveState.No:
                    this.toolStripApprove.Enabled   = true;
                    this.toolStripReApprove.Enabled = false;
                    break;

                case ApproveState.Yes:
                    this.toolStripApprove.Enabled   = false;
                    this.toolStripReApprove.Enabled = true;
                    this.picFlag.Image = Resource1.Approved;
                    break;

                case ApproveState.Error:
                    this.toolStripApprove.Enabled   = false;
                    this.toolStripReApprove.Enabled = false;
                    break;
                }

                this.toolStripPrint.Enabled  = true;
                this.toolStripExport.Enabled = true;
                switch (cancellationState)
                {
                case CancellationState.No:
                    //如果单据未审核并且可以修改 才能被取消,否则不能再取消
                    if (approveState != ApproveState.Yes && canEdit)
                    {
                        this.toolStripCancellation.Enabled = true;
                    }
                    else
                    {
                        this.toolStripCancellation.Enabled = false;
                    }
                    break;

                case CancellationState.Yes:
                    //取消了不能再修改,也不能再做其它操作
                    this.toolStripNew.Enabled          = true;
                    this.toolStripDelete.Enabled       = false;
                    this.toolStripEdit.Enabled         = false;
                    this.toolStripCancel.Enabled       = false;
                    this.toolStripSave.Enabled         = false;
                    this.toolStripApprove.Enabled      = false;
                    this.toolStripReApprove.Enabled    = false;
                    this.toolStripPrint.Enabled        = false;
                    this.toolStripExport.Enabled       = false;
                    this.toolStripCancellation.Enabled = false;
                    this.picFlag.Image = Resource1.Cancelled;
                    break;

                case CancellationState.Error:
                    this.toolStripCancellation.Enabled = false;
                    break;
                }



                break;
            }
        }
Пример #15
0
        public string UpdateReturnState(string sReturnID, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_Return SET Status = " +
                                iState.ToString() + " WHERE ReturnID = '" + sReturnID + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);

            if (sErrorMsg.Length == 0)
            {
                if (state == ApproveState.State_Approved)
                {
                    string sSql = @"
							SELECT
								WH_ReturnMaterial.ItemCode , 
								WH_ReturnMaterial.POID , 
								WH_ReturnMaterial.BINID , 
								WH_ReturnMaterial.UnitPriceNatural , 
								WH_ReturnMaterial.UnitPriceStandard , 
								WH_ReturnMaterial.FactReturnQuantity , 
								WH_ReturnMaterial.depreciationRate , 
								WH_InStoreMaterialDetail.VendorID,
								WH_Return.WHIDReceive ,WH_Return.CreateBy ,WH_Return.ReturnNo 
							FROM
								WH_Return inner join WH_ReturnMaterial
								on WH_Return.ReturnID = WH_ReturnMaterial.ReturnID	
								inner join WH_IssueMaterial on WH_ReturnMaterial.IssueMaterialID = WH_IssueMaterial.IssueMaterialID
								inner join WH_InStoreMaterialDetail on WH_IssueMaterial.InStockMaterialID = WH_InStoreMaterialDetail.InStockMaterialID
							WHERE
								WH_ReturnMaterial.ReturnID = '"                                 + sReturnID + "'";

                    DataTable dt = _da.GetDataTable(sSql);

                    foreach (DataRow dr in dt.Rows)
                    {
                        //入库
                        CInStoreMaterialDetailAccess pInStoreMaterialDetailAccess = new CInStoreMaterialDetailAccess();
                        CInStoreMaterialDetail       pInStore = new CInStoreMaterialDetail();
                        pInStore.StoreOperateType = STOREOPERATETYPE.TYPE_IN;
                        pInStore.OperateHistory   = true;
                        pInStore.BINID            = dr["BINID"].ToString();
                        pInStore.VendorID         = dr["VendorID"].ToString();
                        pInStore.ItemCode         = dr["ItemCode"].ToString();
                        pInStore.POID             = dr["POID"].ToString();
                        pInStore.WHID             = dr["WHIDReceive"].ToString();
                        decimal dUnitPriceNatural  = Decimal.Parse(dr["UnitPriceNatural"].ToString());
                        decimal dUnitPriceStandard = Decimal.Parse(dr["UnitPriceStandard"].ToString());
                        decimal dDepreciationRate  = Decimal.Parse(dr["depreciationRate"].ToString());
                        pInStore.UnitPricePONatural  = dUnitPriceNatural * dDepreciationRate;
                        pInStore.UnitPricePOStandard = dUnitPriceStandard * dDepreciationRate;
                        pInStore.QuantityInBinSet    = Decimal.Parse(dr["FactReturnQuantity"].ToString());
                        pInStoreMaterialDetailAccess.OperateStore(pInStore);

                        //把数据写入财务接口
                        CInterfaceOfFinanceAccess  pInterfaceOfFinanceAccess = new CInterfaceOfFinanceAccess();
                        CInterfaceOfFinance pInterfaceOfFinance = new CInterfaceOfFinance();
                        //库房
                        pInterfaceOfFinance.Location = dr["WHIDReceive"].ToString();
                        //物资编码
                        pInterfaceOfFinance.ItemCode = dr["ItemCode"].ToString();
                        //库位
                        pInterfaceOfFinance.BinNo = dr["BINID"].ToString();
                        //单据号
                        pInterfaceOfFinance.BillNo = dr["ReturnNo"].ToString();
                        //操作人
                        pInterfaceOfFinance.Operater = dr["CreateBy"].ToString();
                        //是出库还是入库
                        pInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_IN;
                        //单据类型
                        pInterfaceOfFinance.OperationType = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_Return);
                        //基本单位的数量
                        pInterfaceOfFinance.Quantity = decimal.Parse(dr["FactReturnQuantity"].ToString());
                        //核算单价
                        pInterfaceOfFinance.UnitPriceStandard = decimal.Parse(dr["UnitPriceStandard"].ToString());

                        pInterfaceOfFinanceAccess.OperateInterface(pInterfaceOfFinance);
                    }
                }
            }

            return(sErrorMsg);
        }
Пример #16
0
        private void OnPartReportSpecified(object i_Obj)
        {
            BeginInvoke(new Mediator.MessageHanlderDelegate(i_O =>
            {
                var partReport = i_O as PartReport;
                if (partReport == null)
                {
                    return;
                }
                _Task            = partReport.Task;
                _PartReport      = partReport;
                _CurrentTemplate = partReport.Task.Part;
                if (_CurrentTemplate == null)
                {
                    return;
                }

                _DataSource = new List <ExecuteDimensionEntityViewModel>();

                PmsService.Instance.PopulateDimensionsForReport(_PartReport);

                foreach (var en in _PartReport.Dimensions)
                {
                    _DataSource.Add(new ExecuteDimensionEntityViewModel(en));
                }

                if (_CurrentTemplate.Dimensions.Count > 0)
                {
                    _SeletedDimension = _PartReport.Dimensions[0];
                }

                dataGridView1.DataSource = _DataSource;
                btnCreateReport.Text     = @"保存报告";
                BindingTextControls();
                // RefreshCommentControls();
                if (PmsService.Instance.CurrentUser.Group.Name == "检测")
                {
                    BindMeasurementControl();
                    LblTester.Text             = PmsService.Instance.CurrentUser.Name;
                    LblTestDate.Text           = DateTime.Now.ToLongDateString();
                    _ExecuteReportControlState = new ExecuteState();
                    _ExecuteReportControlState.Enter(this);
                }
                if (PmsService.Instance.CurrentUser.Group.Name == "评审")
                {
                    BindMeasurementControl();
                    BindAuditControl();
                    LblAuditor.Text            = PmsService.Instance.CurrentUser.Name;
                    LblAuditDate.Text          = DateTime.Now.ToLongDateString();
                    _ExecuteReportControlState = new AuditState();
                    _ExecuteReportControlState.Enter(this);
                }
                if (PmsService.Instance.CurrentUser.Group.Name == "审批")
                {
                    BindMeasurementControl();
                    BindAuditControl();
                    BindApproveControl();
                    LblApprover.Text           = PmsService.Instance.CurrentUser.Name;
                    LblApproveDate.Text        = DateTime.Now.ToLongDateString();
                    _ExecuteReportControlState = new ApproveState();
                    _ExecuteReportControlState.Enter(this);
                }
            }), i_Obj);
        }
Пример #17
0
        /// <summary>
        /// 更新库间转料状态
        /// </summary>
        /// <param name="PkValue"></param>
        /// <param name="state"></param>
        /// <returns></returns>
        public string UpdateWH_TransferWH2WHState(string PkValue, ApproveState state)
        {
            int    iState     = Convert.ToInt32(state);
            string sErrorMsg  = string.Empty;
            string sUpdateSql = "UPDATE WH_TransferWH2WH SET Status = " + iState.ToString() + " WHERE TransferWH2WHID = '" + PkValue + "' ";

            sErrorMsg = this.BaseDataAccess.ExecuteDMLSQL(sUpdateSql);

            if (sErrorMsg.Length == 0)
            {
                switch (state)
                {
                case ApproveState.State_Approved:
                {
                    string sql = @"SELECT a.* , b.* ,c.VendorID,d.PartNo,d.MFG
							FROM 
		WH_TransferWH2WHMaterial a 
		left join WH_TransferWH2WH b on a.TransferWH2WHID = b.TransferWH2WHID 
		left join PurchaseOrder c on a.POID = c.POID 
		left join Material as d on d.ItemCode = a.ItemCode
		WHERE a.TransferWH2WHID = '"         + PkValue + "'";

                    DataTable dt = this.BaseDataAccess.GetDataTable(sql);

                    #region

                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        //出库
                        // 构造库存操作实体
                        DataEntity.CInStoreMaterialDetail Out_entity = new DataEntity.CInStoreMaterialDetail();
                        // 调用库存操作连接类
                        DataEntity.CInStoreMaterialDetailAccess storeAccess = new CInStoreMaterialDetailAccess();

                        Out_entity.StoreOperateType  = DataEntity.STOREOPERATETYPE.TYPE_OUT;
                        Out_entity.BINID             = dt.Rows[i]["BINIDOld"].ToString();
                        Out_entity.InStockMaterialID = dt.Rows[i]["InStockMaterialID"].ToString();;
                        Out_entity.ItemCode          = dt.Rows[i]["ItemCode"].ToString();
                        Out_entity.POID                = dt.Rows[i]["POID"].ToString();
                        Out_entity.QuantityInBinSet    = Decimal.Parse(dt.Rows[i]["TransferQuantity"].ToString());                             //库位数量 = 原库位数量 - 转料数量
                        Out_entity.UnitPricePONatural  = Decimal.Parse(dt.Rows[i]["UnitPriceNatural"].ToString());
                        Out_entity.UnitPricePOStandard = Decimal.Parse(dt.Rows[i]["UnitPriceStandard"].ToString());
                        Out_entity.WHID                = dt.Rows[i]["WHIDOld"].ToString();
                        Out_entity.VendorID            = dt.Rows[i]["VendorID"].ToString();                             //供应商ID
                        Out_entity.PartNo              = dt.Rows[i]["PartNo"].ToString();                               //制造编号
                        Out_entity.MFG = dt.Rows[i]["MFG"].ToString();                                                  //制造商
                        //Out_entity.PreserveQuantitySet = 0;						//预留数量
                        Out_entity.OperateHistory = true;

                        //把数据写入财务接口
                        CInterfaceOfFinanceAccess  pInterfaceOfFinanceAccess = new CInterfaceOfFinanceAccess();
                        CInterfaceOfFinance pInterfaceOfFinance = new CInterfaceOfFinance();
                        //库房
                        pInterfaceOfFinance.Location = dt.Rows[i]["WHIDOld"].ToString();
                        //物资编码
                        pInterfaceOfFinance.ItemCode = dt.Rows[i]["ItemCode"].ToString();
                        //库位
                        pInterfaceOfFinance.BinNo = dt.Rows[i]["BINIDOld"].ToString();
                        //单据号
                        pInterfaceOfFinance.BillNo = dt.Rows[i]["TransferWH2WHNO"].ToString();
                        //操作人
                        pInterfaceOfFinance.Operater = dt.Rows[i]["CreateBy"].ToString();
                        //是出库还是入库
                        pInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_OUT;
                        //单据类型
                        pInterfaceOfFinance.OperationType = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_TransferWH2WH);
                        //基本单位的数量
                        pInterfaceOfFinance.Quantity = decimal.Parse(dt.Rows[i]["TransferQuantity"].ToString());
                        //核算单价
                        pInterfaceOfFinance.UnitPriceStandard = decimal.Parse(dt.Rows[i]["UnitPriceStandard"].ToString());

                        pInterfaceOfFinanceAccess.OperateInterface(pInterfaceOfFinance);

                        bool IsOK = storeAccess.OperateStore(Out_entity);

                        //入库
                        DataEntity.CInStoreMaterialDetail In_entity = new DataEntity.CInStoreMaterialDetail();

                        In_entity.StoreOperateType    = DataEntity.STOREOPERATETYPE.TYPE_IN;
                        In_entity.BINID               = dt.Rows[i]["BINIDNew"].ToString();
                        In_entity.ItemCode            = dt.Rows[i]["ItemCode"].ToString();
                        In_entity.POID                = dt.Rows[i]["POID"].ToString();
                        In_entity.QuantityInBinSet    = Decimal.Parse(dt.Rows[i]["TransferQuantity"].ToString());                             //库位数量 = 原库位数量 - 转料数量
                        In_entity.UnitPricePONatural  = Decimal.Parse(dt.Rows[i]["UnitPriceNatural"].ToString());
                        In_entity.UnitPricePOStandard = Decimal.Parse(dt.Rows[i]["UnitPriceStandard"].ToString());
                        In_entity.WHID                = dt.Rows[i]["WHIDNew"].ToString();
                        In_entity.VendorID            = dt.Rows[i]["VendorID"].ToString();                              //供应商ID
                        In_entity.PartNo              = dt.Rows[i]["PartNo"].ToString();                                //制造编号
                        In_entity.MFG            = dt.Rows[i]["MFG"].ToString();                                        //制造商
                        In_entity.OperateHistory = true;

                        //把数据写入财务接口
                        //库房
                        pInterfaceOfFinance.Location = dt.Rows[i]["WHIDNew"].ToString();
                        //物资编码
                        pInterfaceOfFinance.ItemCode = dt.Rows[i]["ItemCode"].ToString();
                        //库位
                        pInterfaceOfFinance.BinNo = dt.Rows[i]["BINIDNew"].ToString();
                        //单据号
                        pInterfaceOfFinance.BillNo = dt.Rows[i]["TransferWH2WHNO"].ToString();
                        //操作人
                        pInterfaceOfFinance.Operater = dt.Rows[i]["CreateBy"].ToString();
                        //是出库还是入库
                        pInterfaceOfFinance.OperationDirection = DIRECTIONTYPE.TYPE_IN;
                        //单据类型
                        pInterfaceOfFinance.OperationType = pInterfaceOfFinanceAccess.GetBillType(BILLTYPE.TYPE_TransferWH2WH);
                        //基本单位的数量
                        pInterfaceOfFinance.Quantity = decimal.Parse(dt.Rows[i]["TransferQuantity"].ToString());
                        //核算单价
                        pInterfaceOfFinance.UnitPriceStandard = decimal.Parse(dt.Rows[i]["UnitPriceStandard"].ToString());

                        pInterfaceOfFinanceAccess.OperateInterface(pInterfaceOfFinance);

                        IsOK = storeAccess.OperateStore(In_entity);
                    }

                    #endregion

                    break;
                }
                }
            }

            return(sErrorMsg);
        }