コード例 #1
0
        /// <summary>
        /// 获得服务器时间
        /// </summary>
        /// <returns></returns>
        public DateTime GetSysdate()
        {
            DateTime          dtime         = new DateTime();
            IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();

            dtime = serverFactory.CreateILotEngine().GetSysdate();
            CallRemotingService.UnregisterChannel();
            return(dtime);
        }
コード例 #2
0
 /// <summary>
 /// 获取当前日期。
 /// </summary>
 /// <returns>返回当期日期时间</returns>
 public static DateTime GetCurrentDateTime()
 {
     try
     {
         IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
         return(serverFactory.CreateILotEngine().GetSysdate());
     }
     catch
     {
         return(DateTime.Now);
     }
     finally
     {
         CallRemotingService.UnregisterChannel();
     }
 }
コード例 #3
0
        /// <summary>
        /// 查询包含批次信息的数据集。
        /// </summary>
        /// <param name="dsSearch">
        /// 包含查询条件的数据集。
        /// </param>
        /// <param name="pconfig">
        /// 分页查询的配置对象。
        /// </param>
        /// <returns>包含批次信息的数据集。</returns>
        public DataSet Query(DataSet dsParams, ref PagingConfig pconfig)
        {
            DataSet dsReturn = null;

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().SearchLotList(dsParams, ref pconfig);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #4
0
        /// <summary>
        /// 根据托盘号获取批次信息。
        /// </summary>
        /// <param name="pallet_no">托盘号</param>
        /// <returns>包含批次信息的数据集</returns>
        public DataSet GetLotInfoByPallet_No(string pallet_no)
        {
            DataSet dsReturn = null;

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetLotInfoByPallet_No(pallet_no);
                _errorMsg = ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #5
0
        /// <summary>
        /// 根据厂别获取组件录入卡控信息
        /// </summary>
        /// <param name="sFactoryName">厂别。</param>
        /// <returns>
        /// 根据厂别获取组件录入卡控信息
        /// </returns>
        public DataSet GetCheckbarcodeInputType(string sFactoryName)
        {
            DataSet dsReturn = null;

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetCheckbarcodeInputType(sFactoryName);
                _errorMsg = ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #6
0
        /// <summary>
        /// 根据批次主键获取批次报废不良信息。
        /// </summary>
        /// <param name="lotKey">批次主键。</param>
        /// <returns>
        /// 包含批次报废不良信息的数据集。
        /// [LOT_NUMBER,ROUTE_OPERATION_NAME,SCRAP_QUANTITY,DEFECT_QUANTITY]
        /// </returns>
        public DataSet GetScrapAndDefectQty(string lotKey)
        {
            DataSet dsReturn = null;

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetScrapAndDefectQty(lotKey);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #7
0
        /// <summary>
        /// 更新批次号打印状态。
        /// </summary>
        /// <param name="lotNumber">批次号。</param>
        /// <returns>true:更新成功。false:更新失败。</returns>
        public bool UpdatePrintFlag(IList <string> lotNumbers)
        {
            bool bResult = false;

            try
            {
                IServerObjFactory obj = CallRemotingService.GetRemoteObject();
                obj.CreateILotEngine().UpdatePrintFlag(lotNumbers);
                bResult = true;
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(bResult);
        }
コード例 #8
0
        /// <summary>
        /// 为批次号打印获取批次信息。
        /// </summary>
        /// <param name="dtParams">包含查询条件的数据表。
        /// 键值对数据集。键值<see cref="POR_WORK_ORDER_FIELDS.FIELD_ORDER_NUMBER"/>,
        /// <see cref="POR_LOT_FIELDS.FIELD_IS_PRINT"/>,<see cref="POR_LOT_FIELDS.FIELD_IS_REWORKED"/>
        /// </param>
        /// <returns>包含批次信息的数据集。
        /// [LOT_KEY,LOT_NUMBER,IS_PRINT,REWORK_FLAG,QUANTITY,ORDER_NUMBER]
        /// </returns>
        public DataSet GetLotNumberForPrint(DataTable dtParams)
        {
            DataSet dsReturn = null;

            try
            {
                IServerObjFactory serverobj = CallRemotingService.GetRemoteObject();
                dsReturn = serverobj.CreateILotEngine().GetLotNumberForPrint(dtParams);
                string msg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                this._errorMsg = msg;
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #9
0
        /// <summary>
        /// 根据批次号获取工单产品数据。
        /// </summary>
        /// <param name="s_lot">批次号。</param>
        /// <param name="roomkey">车间主键。</param>
        /// <returns>包含工单产品数据的数据集对象。</returns>
        public DataSet GetWOProductByLotNum(string s_lot, string roomkey)
        {
            DataSet dsReturn = null;

            try
            {
                _errorMsg = string.Empty;
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetWOProductByLotNum(s_lot, roomkey);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #10
0
        /// <summary>
        /// 根据工单号获取工单对应的属性信息
        /// </summary>
        /// <param name="orderNumber">工单号</param>
        /// <returns>工单对应的属性信息</returns>
        public DataSet GetOrderAttrByOrderNumber(string orderNumber)
        {
            DataSet dsReturn = null;

            try
            {
                _errorMsg = string.Empty;
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetOrderAttrByOrderNumber(orderNumber);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #11
0
        /// <summary>
        /// 根据批次号及指定等级。获取批次对应工单中符合指定等级条件的推荐产品数据。
        /// </summary>
        /// <param name="lotNo">批次号。</param>
        /// <param name="grade">等级。</param>
        /// <returns>包含产品数据的数据集对象。</returns>
        public DataSet GetLotProductData(string lotNo, string grade)
        {
            DataSet dsReturn = null;

            try
            {
                _errorMsg = string.Empty;
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetLotProductData(lotNo, grade);
                _errorMsg = ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #12
0
        public DataSet GetTestRulePackageLevel(Hashtable hstable)
        {
            DataSet dsReturn = null;

            try
            {
                _errorMsg = string.Empty;
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().GetTestRulePackageLevel(hstable);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #13
0
        public DataSet SaveToWarehouseCheckData(DataSet dsSave)
        {
            DataSet dsReturn = null;

            try
            {
                _errorMsg = string.Empty;
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().SaveToWarehouseCheckData(dsSave);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #14
0
        /// <summary>
        /// 根据批次号查询未删除、未完成、未终结的批次数据。
        /// </summary>
        /// <param name="lotNo">左右匹配模糊查询。</param>
        /// <param name="lotNo">工厂车间主键。</param>
        /// <returns>包含批次数据的数据集对象。</returns>
        public DataSet QueryUsingLotData(string lotNo, string roomKey)
        {
            Hashtable htParams = new Hashtable();

            if (!string.IsNullOrEmpty(lotNo))
            {
                htParams.Add(POR_LOT_FIELDS.FIELD_LOT_NUMBER, lotNo);
            }
            htParams.Add(POR_LOT_FIELDS.FIELD_DELETED_TERM_FLAG, "0");
            htParams.Add(POR_LOT_FIELDS.FIELD_LOT_TYPE, "N");
            if (!string.IsNullOrEmpty(roomKey))
            {
                htParams.Add(POR_LOT_FIELDS.FIELD_FACTORYROOM_KEY, roomKey);
            }
            DataTable dtParams = FanHai.Hemera.Share.Common.CommonUtils.ParseToDataTable(htParams);

            dtParams.TableName = TRANS_TABLES.TABLE_MAIN_DATA;
            DataSet dsParams = new DataSet();

            dsParams.Merge(dtParams, false, MissingSchemaAction.Add);

            DataSet dsReturn = null;

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                dsReturn  = serverFactory.CreateILotEngine().SearchLotList(dsParams);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
コード例 #15
0
        /// <summary>
        /// 根据获得的数据,判定批次是否为E工单(实验批次)
        /// </summary>
        /// <param name="hstable"></param>
        /// <param name="InputMarkForCustCheck">出站不良及备注,是否为必输项</param>
        /// <returns></returns>
        public bool IsExperimentLot(Hashtable hstable, out bool InputMarkForCustCheck)
        {
            bool blBack = false;

            InputMarkForCustCheck = true;
            try
            {
                _errorMsg = string.Empty;
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                DataSet           dsReturn      = serverFactory.CreateILotEngine().GetLotWoProAttribute(hstable);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                DataTable dtAttribute          = dsReturn.Tables[POR_WORK_ORDER_FIELDS.DATABASE_TABLE_NAME];
                DataRow[] drsAttribute         = null;
                string[]  l_s                  = new string[] { "Check_Name", "Is_Checked" };
                string    category             = BASEDATA_CATEGORY_NAME.Uda_Setting_ExperimentWo;
                DataTable dtCheckForExperiment = BaseData.Get(l_s, category);
                //混合检验
                DataRow[] drs01 = dtCheckForExperiment.Select("Check_Name='MinCheck_WoId' and Is_Checked='true'");
                //只检工单
                DataRow[] drs02 = dtCheckForExperiment.Select("Check_Name='OnlyCheck_Wo' and Is_Checked='true'");
                //只检产品ID
                DataRow[] drs03 = dtCheckForExperiment.Select("Check_Name='OnlyCheck_Id' and Is_Checked='true'");
                //检验E工单出站作业是否必输备注原因
                DataRow[] drs04 = dtCheckForExperiment.Select("Check_Name='InputMarkForCustCheck'");

                //工单,产品ID都检验
                if (drs01 != null && drs01.Length > 0)
                {
                    drsAttribute = dtAttribute.Select(string.Format(@"ISEXPERIMENT=1 and ATTRIBUTE_NAME='{0}'", WORKORDER_SETTING_ATTRIBUTE.IsExperimentWo));
                }
                else if (drs02 != null && drs02.Length > 0)
                {
                    drsAttribute = dtAttribute.Select(string.Format(@" ATTRIBUTE_NAME='{0}'", WORKORDER_SETTING_ATTRIBUTE.IsExperimentWo));
                }
                else if (drs03 != null && drs03.Length > 0)
                {
                    drsAttribute = dtAttribute.Select(string.Format(@"ISEXPERIMENT=1 "));
                }


                if (drsAttribute != null && drsAttribute.Length > 0)
                {
                    if (drs04 != null && drs04.Length > 0)
                    {
                        InputMarkForCustCheck = bool.Parse(Convert.ToString(drs04[0]["Is_Checked"]));
                    }

                    blBack = true;
                }
                else
                {
                    blBack = false;
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(blBack);
        }