public void AddFormalParameter(string filename) { if (MainForm.Instance().CurrentUser.LogicExplorer != (int)EXPLORER_ACCESS.Full) { System.Windows.Forms.MessageBox.Show("current user cannot add any Contrller"); } if (!File.Exists(filename)) { DCS.Forms.MainForm.Instance().WriteToOutputWindows("File " + filename + " does not exist"); return; } int ret = 0; string str; string _log = ""; int FunctionNameCol = -1; string functionname; bool headerline = true; tblFunction tblfunction; tblFormalParameter tblformalparameter = new tblFormalParameter(); using (StreamReader reader = new StreamReader(filename)) { while ((str = reader.ReadLine()) != null) { str.Replace(",,", ", ,"); if (str.StartsWith("!")) { continue; } if (headerline) { tblformalparameter.headerString = str; headerline = false; FunctionNameCol = tblformalparameter.ColumnExistInHeader("FunctionName"); if (FunctionNameCol == -1) { DCS.Forms.MainForm.Instance().WriteToOutputWindows("Formalparameter add error: FunctionName column does not exist in " + filename); break; } } else { tblformalparameter = new tblFormalParameter(); string[] _strs = str.Split(new Char[] { ',' }); functionname = _strs[FunctionNameCol].ToLower(); tblfunction = tblSolution.m_tblSolution().functionbyName[functionname.ToUpper()]; if (tblfunction != null) { tblformalparameter.AddFromString(_strs, functionname, ref _log); tblformalparameter.FunctionID = tblSolution.m_tblSolution().functionbyName[functionname.ToUpper()].FunctionID;; if ((ret = tblformalparameter.Insert()) != 0) { if (ret == 19) { DCS.Forms.MainForm.Instance().WriteToOutputWindows(_log + " Already exist in database"); } } else { tblfunction.m_tblFormalParameterCollection.Add(tblformalparameter); } } else { DCS.Forms.MainForm.Instance().WriteToOutputWindows("Function Name " + functionname + " doesn't exist in database"); } } } reader.Close(); } }
void RowExistIntblFormalparamter(string pinname, string pindescription, string pintype, string pinclass, string pininitialvalue, ref int oIndex) { foreach (tblFormalParameter tblformalparameter in _tblfunction.m_tblFormalParameterCollection) { if (tblformalparameter.PinName.ToUpper() == pinname.ToUpper()) { tblformalparameter.Description = pindescription; tblformalparameter.Type = (int)tblSolution.m_tblSolution().functionbyName[pintype.ToUpper()].Type; if (pinclass == "Input") { tblformalparameter.Class = (int)VarClass.Input; tblformalparameter.Reference = false; } if (pinclass == "InOut") { tblformalparameter.Class = (int)VarClass.InOut; tblformalparameter.Reference = false; } if (pinclass == "Reference") { tblformalparameter.Class = (int)VarClass.Input; tblformalparameter.Reference = true; } if (pinclass == "Output") { tblformalparameter.Class = (int)VarClass.Output; tblformalparameter.Reference = false; } if (pinclass == "Local") { tblformalparameter.Class = (int)VarClass.Local; tblformalparameter.Reference = false; } tblformalparameter.InitializeValue = pininitialvalue; tblformalparameter.oIndex = oIndex++; tblformalparameter.Update(); return; } } { tblFormalParameter tblformalparameter = new tblFormalParameter(); tblformalparameter.FunctionID = _tblfunction.FunctionID; tblformalparameter.PinName = pinname.ToUpper(); tblformalparameter.Description = pindescription; tblformalparameter.Type = (int)tblSolution.m_tblSolution().functionbyName[pintype.ToUpper()].Type; if (pinclass == "Input") { tblformalparameter.Class = (int)VarClass.Input; tblformalparameter.Reference = false; } if (pinclass == "InOut") { tblformalparameter.Class = (int)VarClass.InOut; tblformalparameter.Reference = false; } if (pinclass == "Reference") { tblformalparameter.Class = (int)VarClass.Input; tblformalparameter.Reference = true; } if (pinclass == "Output") { tblformalparameter.Class = (int)VarClass.Output; tblformalparameter.Reference = false; } if (pinclass == "Local") { tblformalparameter.Class = (int)VarClass.Local; tblformalparameter.Reference = false; } tblformalparameter.InitializeValue = pininitialvalue; tblformalparameter.oIndex = oIndex++; tblformalparameter.Insert(); } _tblfunction.m_tblFormalParameterCollection = null; }