protected override bool ActionGenuine(out string errorInfo) { string itemName = GetInitParamValue(PN_ItemName) as string; bool initVal = Convert.ToBoolean(GetInitParamValue(PN_InitValue)); IJFDataPool sysPool = JFHubCenter.Instance.DataPool; if (sysPool.ContainItem(PN_ItemName)) { if (sysPool.GetItemType(itemName) == typeof(bool)) { errorInfo = "Sucess"; return(true); } else { errorInfo = "系统数据池已存在数据项:\"" + itemName + "\",类型:" + sysPool.GetItemType(itemName).Name; return(false); } } if (!sysPool.RegistItem(PN_ItemName, typeof(bool), initVal)) { errorInfo = "注册bool数据项失败!"; return(false); } errorInfo = "Success"; return(true); }
/// <summary> /// 设置数据池对象 /// </summary> /// <param name="dataPool"></param> public void SetDataPool(IJFDataPool dataPool) { _dataPool = dataPool; if (_isFormLoaded) { timerFlush.Enabled = false; AdjustPoolItem(); } }
private void btSetDataPool_Click(object sender, EventArgs e) { IJFDataPool dp = JFHubCenter.Instance.DataPool; dp.RegistItem("F-ListInt", typeof(List <int>)); dp.RegistItem("List<string>", typeof(List <string>)); dp.RegistItem("ArrayString", typeof(string[])); dp.RegistList("Collect-string", typeof(string)); dp.EnqueList("C-Collect-bool", true); dp.EnqueList("C-Collect-bool", false); dp.RegistList("D-Collect-string", typeof(string)); ucDataPoolEdit1.SetDataPool(JFHubCenter.Instance.DataPool); }
public bool SetCurrRecipeID(string recipeID, out string errorInfo) { if (string.IsNullOrEmpty(recipeID)) { errorInfo = "产品ID为null/空字串"; return(false); } if (!CheckRecipeMgr(out errorInfo)) { return(false); } JFDLAFRecipeManager rm = JFHubCenter.Instance.RecipeManager as JFDLAFRecipeManager; string[] allRecipeIDs = rm.AllRecipeIDsInCategoty(SCN_CategotyProd); if (null == allRecipeIDs || !allRecipeIDs.Contains(recipeID)) { errorInfo = "产品ID:\"" + recipeID + "\"在配方管理器中不存在"; return(false); } if (WorkStatus == JFWorkStatus.Running || WorkStatus == JFWorkStatus.Interactiving || WorkStatus == JFWorkStatus.Pausing) { errorInfo = "正在运行,不能修改产品ID"; return(false); } IJFDataPool dp = JFHubCenter.Instance.DataPool; bool isOK = dp.SetItemValue(SDN_CurrRecipeID, recipeID); if (!isOK) { errorInfo = "写入数据池失败"; } else { //将当前产品信息写入SystemCfg JFXCfg sysCfg = JFHubCenter.Instance.SystemCfg; if (sysCfg.ContainsItem(SCN_CurrentRecipeID)) { sysCfg.SetItemValue(SCN_CurrentRecipeID, recipeID); //将当前产品ID 加到配置项中 sysCfg.Save(); } errorInfo = "Success"; } return(isOK); }
protected override bool ActionGenuine(out string errorInfo) { if (null == _owner) { errorInfo = "Owner MethodFlow is unset/null"; return(false); } if (_station == null) { errorInfo = "工站未设置"; return(false); } IJFDataPool stationDataPool = _station.DataPool; object srcItem = GetMethodInputValue(IN_LocItem); string stationItemName = GetInitParamValue(PN_StationItemName) as string; Type srcItemType = typeof(object); if (srcItem != null) { srcItemType = srcItem.GetType(); } if (!stationDataPool.ContainItem(stationItemName)) { if (!stationDataPool.RegistItem(stationItemName, srcItemType, srcItem)) { errorInfo = "向工站数据池写入/注册 数据项失败 stationItemName = \"" + stationItemName + "\", Type=" + srcItemType + ",Value=" + srcItem.ToString(); return(false); } } else { if (!stationDataPool.SetItemValue(stationItemName, srcItem)) { errorInfo = "向工站数据池写入 数据项失败 stationItemName = \"" + stationItemName + "\", Type=" + srcItemType + ",Value=" + srcItem.ToString(); return(false); } } errorInfo = "Success"; return(true); }
protected override bool ActionGenuine(out string errorInfo) { if (null == _owner) { errorInfo = "Method's owner Flow is null"; //异常 return(false); } string locItemName = GetInitParamValue(PN_LocPoolItemName) as string; if (!_owner.DataPool.ContainsKey(locItemName)) { errorInfo = "动作流数据池中未包含数据项项名:\"" + locItemName + "\""; return(false); } string sysItemName = GetInitParamValue(PN_SysPoolItemName) as string; object locVal = _owner.DataPool[locItemName]; IJFDataPool sysDataPool = JFHubCenter.Instance.DataPool; if (!sysDataPool.ContainItem(sysItemName))//注册并写入新值 { if (!sysDataPool.RegistItem(sysItemName, _owner.TypePool[locItemName], locVal)) { errorInfo = string.Format("向系统数据池写入/注册 失败,SysItemName = {0},Type = {1},Value = {2}", sysItemName, _owner.TypePool[locItemName].Name, locVal.ToString()); return(false); } } else //覆盖写入 { if (!sysDataPool.SetItemValue(sysItemName, locVal)) { errorInfo = string.Format("向系统数据池写入 失败,SysItemName = {0},本地类型 = {1}, 系统类型:{2},Value = {3}", sysItemName, _owner.TypePool[locItemName].Name, sysDataPool.GetItemType(sysItemName).Name, locVal.ToString()); return(false); } } errorInfo = "Success"; return(true); }
public override JFParamDescribe GetInitParamDescribe(string name) { if (name == PN_SysPoolItemName) { IJFDataPool sysDataPool = JFHubCenter.Instance.DataPool; List <string> boolItemNames = new List <string>(); string[] allItemNames = sysDataPool.AllItemKeys; if (null != allItemNames) { foreach (string itName in allItemNames) { if (sysDataPool.GetItemType(itName) == typeof(bool)) { boolItemNames.Add(itName); } } } return(JFParamDescribe.Create(PN_SysPoolItemName, typeof(string), JFValueLimit.Options, boolItemNames.ToArray())); } return(base.GetInitParamDescribe(name)); }
public bool SetCurrLotID(string lotID, out string errorInfo) { if (string.IsNullOrEmpty(lotID)) { errorInfo = "LotID为null/空字串"; return(false); } if (WorkStatus == JFWorkStatus.Running || WorkStatus == JFWorkStatus.Interactiving || WorkStatus == JFWorkStatus.Pausing) { errorInfo = "正在运行,不能修改LotID"; return(false); } IJFDataPool dp = JFHubCenter.Instance.DataPool; bool isOK = dp.SetItemValue(SDN_CurrLotID, lotID); if (!isOK) { errorInfo = "LotID写入数据池失败"; } else { //将当前产品信息写入SystemCfg JFXCfg sysCfg = JFHubCenter.Instance.SystemCfg; if (sysCfg.ContainsItem(SCN_CurrentLotID)) { sysCfg.SetItemValue(SCN_CurrentLotID, lotID); //将当前LotID 保存到配置项中 sysCfg.Save(); } errorInfo = "Success"; } return(isOK); }
protected override bool ActionGenuine(out string errorInfo) { string itemName = GetInitParamValue(PN_SysPoolItemName) as string; IJFDataPool sysDataPool = JFHubCenter.Instance.DataPool; if (!sysDataPool.ContainItem(itemName)) { errorInfo = "系统数据池不包含数据项名:" + itemName; return(false); } object val; if (!sysDataPool.GetItemValue(itemName, out val)) { errorInfo = "获取系统数据项失败:名称:\"" + itemName + "\""; return(false); } SetOutputParamValue(ON_CurrVal, val); errorInfo = "Success"; return(true); }
public void SetDataPool(IJFDataPool dp) { ucDataPoolEdit1.SetDataPool(dp); }