Esempio n. 1
0
        /// <summary>
        /// 根据线上仓数据获取线上仓所属的车间。
        /// </summary>
        /// <param name="stores">使用逗号分开的线上仓名称。</param>
        /// <returns>
        /// 包含工厂车间信息的数据集对象。【LOCATION_KEY,LOCATION_NAME】。
        /// </returns>
        /// add by peter 2012-03-19
        public static DataTable GetFactoryRoomByStores(string stores)
        {
            DataSet dsReturn = new DataSet();
            string  errorMsg = string.Empty;

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    dsReturn = serverFactory.CreateILocationEngine().GetFactoryRoomByStores(stores);
                    errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                    if (errorMsg != string.Empty)
                    {
                        throw new Exception(errorMsg);
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn.Tables[0]);
        }
Esempio n. 2
0
        /// <summary>
        /// 根据车间名称获取领料仓库信息。
        /// </summary>
        /// <param name="roomName">车间名称。</param>
        /// <returns>包含领料仓库信息的数据表。</returns>
        public DataTable GetIssueStores(string roomName)
        {
            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                DataSet           dsReturn      = serverFactory.CreateILocationEngine().GetFactory(roomName);
                _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);

                if (string.IsNullOrEmpty(_errorMsg) &&
                    dsReturn.Tables[0].Rows.Count > 0)
                {
                    string   factoryName = Convert.ToString(dsReturn.Tables[0].Rows[0]["FACTORY_NAME"]);
                    string[] columns     = new string[] { "ERPRETURNSTORE" };
                    KeyValuePair <string, string>         category = new KeyValuePair <string, string>("CATEGORY_NAME", BASEDATA_CATEGORY_NAME.MEScontrastERP);
                    List <KeyValuePair <string, string> > lst      = new List <KeyValuePair <string, string> >();
                    lst.Add(new KeyValuePair <string, string>("MESFACTORY", factoryName));
                    return(BaseData.GetBasicDataByCondition(columns, category, lst));
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(null);
        }
Esempio n. 3
0
        /// <summary>
        /// Load Equipment Location Data
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        /// Owner:Andy Gao 2011-07-20 13:07:29
        public DataTable LoadEquipmentLocationData(out string msg)
        {
            #region Call Remoting Interface

            DataSet reqDS = new DataSet();
            DataSet resDS = new DataSet();

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();

                resDS = serverFactory.CreateILocationEngine().GetAllLoactions(reqDS);
            }
            catch (Exception ex)
            {
                msg = ex.Message;

                return(null);
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            msg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(resDS);

            return(resDS.Tables[FMM_LOCATION_FIELDS.DATABASE_TABLE_NAME]);

            #endregion
        }
Esempio n. 4
0
        /// <summary>
        /// 查询结果返回后回去该条数据的信息 modi by chao.pang
        /// </summary>
        /// <returns></returns>
        public DataSet GetLocation()
        {
            DataSet   dsReturn  = new DataSet();
            DataSet   dsFrom    = new DataSet();
            DataTable dataTable = new DataTable();
            Hashtable hashTable = new Hashtable();

            hashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_KEY, _locationKey);
            dataTable           = FanHai.Hemera.Share.Common.CommonUtils.ParseToDataTable(hashTable);
            dataTable.TableName = FMM_LOCATION_FIELDS.DATABASE_TABLE_NAME;
            dsFrom.Tables.Add(dataTable);

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    dsReturn  = serverFactory.CreateILocationEngine().GetLocation(dsFrom);
                    _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            return(dsReturn);
        }
Esempio n. 5
0
        /// <summary>
        /// 调用远程对象的方法,根据区域名称和区域类型进行删除 modi by chao.pang
        /// </summary>
        /// <returns></returns>
        public DataSet DeleteLocation()
        {
            DataSet   dsReturn      = new DataSet();
            DataSet   dataSet       = new DataSet();
            Hashtable mainHashTable = new Hashtable();
            DataTable mainDataTable = new DataTable();

            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_KEY, _locationKey);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_LEVEL, _localLevel);
            mainDataTable           = FanHai.Hemera.Share.Common.CommonUtils.ParseToDataTable(mainHashTable);
            mainDataTable.TableName = FMM_LOCATION_FIELDS.DATABASE_TABLE_NAME;
            dataSet.Tables.Add(mainDataTable);

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    //调用远程对象的方法,根据区域名称和区域类型为参数 modi by chao.pang
                    dsReturn  = serverFactory.CreateILocationEngine().DeleteLocation(dataSet);
                    _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            return(dsReturn);
        }
Esempio n. 6
0
        /// <summary>
        /// 获取数据返回表集 modi by chao.pang
        /// </summary>
        /// <param name="level">值为0初始值,1工厂,2楼层,5车间 modi by chao.pang</param>
        /// <returns></returns>
        #region GetWorkshopBindData
        public DataSet GetWorkshopBindData(int level)
        {
            DataSet   dsReturn  = new DataSet();                          //创建表集,返回值  modi by chao.pang
            DataSet   dsFrom    = new DataSet();                          //创建表集 modi by chao.pang
            DataTable dataTable = new DataTable();                        //创建表 modi by chao.pang
            Hashtable hashTable = new Hashtable();                        //创建Hash表 modi by chao.pang

            try
            {
                //远程调用技术 modi by chao.pang
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    //结果表集,获取相关数据 modi by chao.pang
                    dsReturn = serverFactory.CreateILocationEngine().GetWorkshopBindData(level);
                    //返回错误信息 modi by chao.pang
                    _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            return(dsReturn);
        }
Esempio n. 7
0
        public DataSet SaveLocationLineRelation(DataSet dataset)
        {
            #region variable define
            DataSet dsReturn = new DataSet();
            #endregion

            #region detail deal
            try
            {
                //远程调用技术 modi by chao.pang
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    dsReturn  = serverFactory.CreateILocationEngine().SaveLocationLineRelation(dataset);
                    _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            return(dsReturn);

            #endregion
        }
Esempio n. 8
0
        private void LoadParentLocationData(int parentLevel)
        {
            #region Variables

            DataSet resDS = new DataSet();

            #endregion

            #region Call Remoting Interface

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();

                if (serverFactory != null)
                {
                    resDS = serverFactory.CreateILocationEngine().GetParentLocations(parentLevel);
                }
            }
            catch (Exception ex)
            {
                MessageService.ShowError(ex);

                return;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            #endregion

            #region Process Output Parameters

            string returnMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(resDS);

            if (string.IsNullOrEmpty(returnMsg))
            {
                BindDataToParentLocationList(resDS.Tables[FMM_LOCATION_FIELDS.DATABASE_TABLE_NAME]);
            }
            else
            {
                MessageService.ShowError(returnMsg);
            }

            #endregion
        }
Esempio n. 9
0
        /// <summary>
        /// 调用远程对象的方法,根据区域名称和区域类型查询区域信息
        /// </summary>
        /// <returns>区域信息</returns>
        public DataSet SearchLocation()
        {
            DataSet   dsReturn  = new DataSet();
            DataSet   dsFrom    = new DataSet();
            DataTable dataTable = new DataTable();
            Hashtable hashTable = new Hashtable();

            hashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_NAME, _locationName);                    //将区域名称添加到LOCATION_NAME列下  modi by chao.pang
            hashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_LEVEL, _localLevel);                     //将类型添加到LOCATION_LEVEL列下  modi by chao.pang
            dataTable           = FanHai.Hemera.Share.Common.CommonUtils.ParseToDataTable(hashTable); //根据哈希表创建一个数据表对象,数据表的名称为"param",数据表包含两个列"name"和"value"。列name存放哈希表的键名,列value存放哈希表键对应的键值。  modi by chao.pang
            dataTable.TableName = FMM_LOCATION_FIELDS.DATABASE_TABLE_NAME;                            //表名为FMM_LOCATION modi by chao.pang
            //若区域名称不为空获取区域类型不为空
            if (_locationName != "" || _localLevel != "")
            {
                //将dataTable添加到表集dsfrom中 modi by chao.pang
                dsFrom.Tables.Add(dataTable);
            }
            try
            {
                //远程调用技术 modi by chao.pang
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    //调用远程对象的方法,根据区域名称和区域类型查询区域信息
                    dsReturn  = serverFactory.CreateILocationEngine().SearchLocation(dsFrom);
                    _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            return(dsReturn);
        }
Esempio n. 10
0
        /// <summary>
        /// 根据名称获取车间信息。
        /// </summary>
        /// <param name="name">车间名称。</param>
        /// <returns>包含车间信息的数据集。</returns>
        public DataSet GetFactoryRoom(string name)
        {
            DataSet dsReturn = new DataSet();

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    dsReturn  = serverFactory.CreateILocationEngine().GetFactoryRoom(name);
                    _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }
            return(dsReturn);
        }
Esempio n. 11
0
        public DataSet SaveUpdateLocation()
        {
            #region variable define
            DataSet   DSReceveServer    = new DataSet();
            DataSet   dataSet           = new DataSet();
            Hashtable mainHashTable     = new Hashtable();
            Hashtable relationHashTable = new Hashtable();
            DataTable mainTable         = new DataTable();
            DataTable relationTable     = new DataTable();
            #endregion

            #region add main table  of location to dataset
            //add main table  of location to dataset
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_KEY, _locationKey);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_NAME, _locationName);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_DESCRIPTIONS, _descriptions);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_LOCATION_LEVEL, _localLevel);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_EDITOR, base.Editor);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_EDIT_TIME, base.EditTime);
            mainHashTable.Add(FMM_LOCATION_FIELDS.FIELD_EDIT_TIMEZONE, base.EditTimeZone);

            mainTable           = FanHai.Hemera.Share.Common.CommonUtils.ParseToDataTable(mainHashTable);
            mainTable.TableName = FMM_LOCATION_FIELDS.DATABASE_TABLE_NAME;
            dataSet.Tables.Add(mainTable);
            #endregion

            #region add relation table to dataset
            //if the location is "area"
            if (_localLevel == "9" || _localLevel == "5" || _localLevel == "2")
            {
                //add relation table to dataset
                relationHashTable.Add(FMM_LOCATION_RET_FIELDS.FIELD_PARENT_LOC_KEY, _parentLocationKey);
                relationHashTable.Add(FMM_LOCATION_RET_FIELDS.FIELD_PARENT_LOC_LEVEL, _parentLocationLevel);
                relationHashTable.Add(FMM_LOCATION_RET_FIELDS.FIELD_LOCATION_KEY, _locationKey);
                relationHashTable.Add(FMM_LOCATION_RET_FIELDS.FIELD_LOCATION_LEVEL, _localLevel);

                relationTable           = FanHai.Hemera.Share.Common.CommonUtils.ParseToDataTable(relationHashTable);
                relationTable.TableName = FMM_LOCATION_RET_FIELDS.DATABASE_TABLE_NAME;
                dataSet.Tables.Add(relationTable);
            }
            #endregion

            try
            {
                IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject();
                if (null != serverFactory)
                {
                    DSReceveServer = serverFactory.CreateILocationEngine().UpdateLocation(dataSet);
                    _errorMsg      = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(DSReceveServer);
                }
            }
            catch (Exception ex)
            {
                _errorMsg = ex.Message;
            }
            finally
            {
                CallRemotingService.UnregisterChannel();
            }

            return(DSReceveServer);
        }