Example #1
0
        private void Processing(int column, int raw, string expression)
        {
            try
            {
                DataCell temp = Data.GetData(raw, column);
                temp.expression_set(expression);
                if ((expression == "") || (expression == null))
                {
                    temp.expression_set(null); temp.value_set(null); temp.related = null; temp.related = new List <string>(); return;
                }
                string temp2 = Preparing(expression, column, raw);

                if (temp2 != "Error")
                {
                    temp.value_set(Parse.Parse(temp2));
                }
                else
                {
                    temp.value_set(temp2);
                }
            }
            catch (Exception) { }
        }
Example #2
0
        public bool IsCycled()
        {
            try
            {
                List <string> temp = new List <string>();
                temp.Add(name);

                int  i    = 0;
                bool flag = false;
                if (related.Count == 1)
                {
                    if (name == related[0])
                    {
                        value = "Error"; return(true);
                    }
                }
                while (true)
                {
                    int m = temp.Count;
                    if (i == (m))
                    {
                        break;
                    }

                    DataCell tempr = Data.GetData(LetterNumberConverter.NameToRaw(temp[i]), LetterNumberConverter.NameToColumn(temp[i]));
                    for (int j = 0; j < tempr.related.Count; j++)
                    {
                        temp.Add(tempr.related[j]);
                    }



                    for (int j = 0; j < temp.Count; j++)
                    {
                        for (int h = j + 1; h < temp.Count; h++)
                        {
                            if (temp[j] == temp[h])
                            {
                                flag = true; break;
                            }
                        }
                        if (flag == true)
                        {
                            break;
                        }
                    }
                    if (flag == true)
                    {
                        break;
                    }
                    i++;
                }


                string k = "";
                for (int j = 0; j < temp.Count; j++)
                {
                    k += temp[j];  //.ToString() + " ";
                }
                Console.WriteLine(k);



                if (flag == false)
                {
                    return(false);
                }

                for (int j = 0; j < temp.Count; j++)
                {
                    DataCell tempr = Data.GetData(LetterNumberConverter.NameToRaw(temp[j]), LetterNumberConverter.NameToColumn(temp[j]));
                    tempr.value_set("Error");
                }
                return(true);
            }
            catch (Exception) { return(true); }
        }