Пример #1
0
        public void shoud_manually_clear_one_condition_when_multiple_are_present()
        {
            Event avail = new Event("avail");

            adapter.AddDataItem(avail);
            avail.Value = "AVAILABLE";

            Condition cond = new Condition("cond", true);

            cond.Normal();
            adapter.AddDataItem(cond);
            adapter.SendChanged();

            adapter.addClientStream(stream);

            adapter.Begin();
            cond.Add(Condition.Level.FAULT, "A Fault", "111");
            cond.Add(Condition.Level.FAULT, "Another Fault", "112");
            adapter.SendChanged();
            long pos = stream.Position;

            adapter.Begin();
            cond.Clear("111");
            adapter.SendChanged();

            stream.Seek(pos, SeekOrigin.Begin);
            byte[] buffer = new byte[1024];
            int    count  = stream.Read(buffer, 0, 1024);
            String line   = encoder.GetString(buffer, 0, count);

            Assert.IsTrue(line.EndsWith("cond|NORMAL|111|||\n"));
        }
Пример #2
0
        public void TestMethod5()
        {
            const string P1 = @"##TABLES##";
            const string P2 = @"##";
            const string P3 = @"##";

            const string TEST1 = @"TEST ROW1";
            const string TEST2 = @"TEST ##TABLES## ROW2";
            const string TEST3 = @"TEST ROW3";
            const string TEST4 = @"## TEST ROW4";
            const string TEST5 = @"TEST ROW 5##";

            Condition c = new Condition();

            c.Add(P1, false);
            c.Add(P2, false);
            c.Add(P3, false);
            c.Test(TEST1, 0);
            c.Test(TEST2, 1);
            c.Test(TEST3, 2);
            c.Test(TEST4, 3);
            c.Test(TEST5, 4);

            IList <Match> ret = c.Hit;

            Assert.AreEqual(1, ret.Count);
            Assert.AreEqual(4, ret[0].Hit.Count);
        }
Пример #3
0
        public void TestMethod1()
        {
            Condition c = new Condition();

            c.Add(@"a1\.txt", false);
            c.Add(@"contains", false);
            using (System.IO.StreamReader r = new System.IO.StreamReader(@"./Test1/a1.txt")) {
                int rc = 0;
                while (!r.EndOfStream)
                {
                    c.Test(r.ReadLine(), rc);
                    ++rc;
                }
            }
            IList <Match> ret = c.Hit;

            Assert.AreEqual(1, ret.Count);
            Assert.AreEqual(4, ret[0].Hit.Count);
            Assert.AreEqual(1, ret[0].Start);

            const string L1 = @"a1.txt";
            const string L2 = @"elit, sed do eiusmod tempor incididunt ut labore et";
            const string L3 = @"dolore magna aliqua. Ut enim ad minim veniam, quis";
            const string L4 = @"contains";

            Assert.AreEqual(L1, ret[0].Hit[0]);
            Assert.AreEqual(L2, ret[0].Hit[1]);
            Assert.AreEqual(L3, ret[0].Hit[2]);
            Assert.AreEqual(L4, ret[0].Hit[3]);
        }
Пример #4
0
        private void AddToCondition(Condition cond, Field field, Operator op, ComboBox comboBox)
        {
            if (field == Field.Label)
            {
                if (!string.IsNullOrEmpty(comboBox.Text))
                {
                    cond.Add(new SingleCondition(field, op, comboBox.Text));
                }
                return;
            }

            if (comboBox.SelectedIndex > 0)
            {
                switch (field)
                {
                case Field.Sampler:
                case Field.OriginalCD:
                    cond.Add(new SingleCondition(field, op, comboBox.SelectedIndex - 1));
                    break;

                default:
                    cond.Add(new SingleCondition(field, op, comboBox.Text));
                    break;
                }
            }
        }
Пример #5
0
        public void TestMethod2()
        {
            Condition c = new Condition();

            c.Add(@"ac1\.txt", false);
            c.Add(@"contains", false);
            using (System.IO.StreamReader r = new System.IO.StreamReader(@"./Test1/ac/ac1.txt")) {
                int rc = 0;
                while (!r.EndOfStream)
                {
                    c.Test(r.ReadLine(), rc);
                    ++rc;
                }
            }
            IList <Match> ret = c.Hit;

            Assert.AreEqual(1, ret.Count);
            Assert.AreEqual(5, ret[0].Hit.Count);
            Assert.AreEqual(2, ret[0].Start);

            const string L1 = @"dolore magna ac1.txt aliqua. Ut enim ad minim veniam, quis";
            const string L2 = @"nostrud exercitation ullamco laboris nisi ut aliquip";
            const string L3 = @"ex ea commodo klm consequat. Duis aute irure dolor in";
            const string L4 = @"reprehenderit in voluptate velit esse cillum dolore";
            const string L5 = @"eu fugiat contains nulla pariatur. Excepteur sint occaecat";

            Assert.AreEqual(L1, ret[0].Hit[0]);
            Assert.AreEqual(L2, ret[0].Hit[1]);
            Assert.AreEqual(L3, ret[0].Hit[2]);
            Assert.AreEqual(L4, ret[0].Hit[3]);
            Assert.AreEqual(L5, ret[0].Hit[4]);
        }
Пример #6
0
        public void TestMethod6()
        {
            const string P1 = @"CREATE";
            const string P2 = @"(OR REPLACE)*";
            const string P3 = @"TRIGGER";
            const string P4 = @"Tr_AfterIns_Accounts";
            const string P5 = @"(BEFORE|AFTER)";
            const string P6 = @"(UPDATE|INSERT|DELETE)";
            const string P7 = @"ON";
            const string P8 = @"(SELECT|UPDATE|INSERT|DELETE)";
            const string P9 = @"Accounts";

            const string TEST1 = @"CREATE OR REPLACE TRIGGER Tr_AfterIns_Accounts ";
            const string TEST2 = @"AFTER INSERT ON Accounts ";

            Condition c = new Condition();

            c.Add(P1, false);
            c.Add(P2, false);
            c.Add(P3, false);
            c.Add(P4, false);
            c.Add(P5, false);
            c.Add(P6, false);
            c.Add(P7, false);
            c.Add(P8, true);
            c.Add(P9, false);
            c.Test(TEST1, 0);
            c.Test(TEST2, 1);

            IList <Match> ret = c.Hit;

            Assert.AreEqual(1, ret.Count);
            Assert.AreEqual(2, ret[0].Hit.Count);
        }
Пример #7
0
        private void SetCDCondition()
        {
            SetStringField(Field.ArtistCDName, textBoxArtistCD);
            SetStringField(Field.Title, textBoxTitleCD);
            SetStringField(Field.ComposerCDName, textBoxComposerCD);
            SetStringField(Field.TotalLength, Operator.GreaterEqual, textBoxTotalLengthFromCD);
            SetStringField(Field.TotalLength, Operator.LessEqual, textBoxTotalLengthToCD);
            SetStringField(Field.NumberOfTracks, Operator.GreaterEqual, textBoxNumberOfTracksFromCD);
            SetStringField(Field.NumberOfTracks, Operator.LessEqual, textBoxNumberOfTracksToCD);
            SetStringField(Field.Date, Operator.GreaterEqual, textBoxDateFromCD);
            SetStringField(Field.Date, Operator.LessEqual, textBoxDateToCD);
            SetStringField(Field.YearRecorded, Operator.GreaterEqual, textBoxYearRecordedFromCD);
            SetStringField(Field.YearRecorded, Operator.LessEqual, textBoxYearRecordedToCD);
            SetRatingField(Field.Rating, Operator.GreaterEqual, ratingControlFromCD);
            SetRatingField(Field.Rating, Operator.LessEqual, ratingControlToCD);
            SetStringField(Field.ArchiveNumber, Operator.GreaterEqual, textBoxArchiveNumberFromCD);
            SetStringField(Field.ArchiveNumber, Operator.LessEqual, textBoxArchiveNumberToCD);
            SetStringField(Field.Price, Operator.GreaterEqual, textBoxPriceFromCD);
            SetStringField(Field.Price, Operator.LessEqual, textBoxPriceToCD);

            SetUserField(Field.User1, userFieldsControlCD, 0);
            SetUserField(Field.User2, userFieldsControlCD, 1);
            SetUserField(Field.User3, userFieldsControlCD, 2);
            SetUserField(Field.User4, userFieldsControlCD, 3);
            SetUserField(Field.User5, userFieldsControlCD, 4);

            SetListField(Field.Sampler, comboBoxSamplerCD);
            SetListField(Field.OriginalCD, comboBoxOriginalCD);
            SetListField(Field.Category, comboBoxCategoryCD);
            SetListField(Field.Medium, comboBoxMediumCD);
            SetListField(Field.Label, comboBoxLabelCD);
            SetStringField(Field.UPC, textBoxUPCCD);
            SetStringField(Field.Homepage, textBoxURLCD);
            SetStringField(Field.Copyright, textBoxCopyrightCD);
            SetStringField(Field.Comment, textBoxCommentCD);
            SetStringField(Field.CDCoverFront, textBoxFrontCoverCD);
            SetStringField(Field.CDCoverBack, textBoxBackCoverCD);
            SetStringField(Field.CDCoverLabel, textBoxCDLabelCD);
            SetStringField(Field.Language, textBoxLanguageCD);
            SetStringField(Field.Location, textBoxLocationCD);

            foreach (SingleCondition sc in condition)
            {
                if (sc.Field == Field.Codes)
                {
                    codesCondition.Add(new SingleCondition(sc.Field, sc.Operator, sc.Value, sc.Logical));
                }
                if (sc.Field == Field.TrackCodes)
                {
                    trackCodesCondition.Add(new SingleCondition(sc.Field, sc.Operator, sc.Value, sc.Logical));
                }
            }
        }
Пример #8
0
 private void AddToCondition(Condition cond, Field field, Operator stringOperator, UserFieldsControl userFieldControl, int fieldIndex)
 {
     if (!string.IsNullOrEmpty(userFieldControl.GetValue(fieldIndex)))
     {
         if (dataBase.Master.UserCDFields[fieldIndex].Type == UserFieldType.Text)
         {
             cond.Add(new SingleCondition(field, stringOperator, userFieldControl.GetValue(fieldIndex)));
         }
         else
         {
             cond.Add(new SingleCondition(field, Operator.Equal, userFieldControl.GetValue(fieldIndex)));
         }
     }
 }
Пример #9
0
        private void GetTrackCondition(Condition cond, Operator stringOperator)
        {
            AddToCondition(cond, Field.ArtistTrackName, stringOperator, textBoxArtistTrack);
            AddToCondition(cond, Field.TrackTitle, stringOperator, textBoxTrackname);
            AddToCondition(cond, Field.ComposerTrackName, stringOperator, textBoxComposerTrack);

            AddToCondition(cond, Field.TrackLength, Operator.GreaterEqual, textBoxLengthFromTrack);
            AddToCondition(cond, Field.TrackLength, Operator.LessEqual, textBoxLengthToTrack);
            AddToCondition(cond, Field.TrackBpm, Operator.GreaterEqual, textBoxBPMFromTrack);
            AddToCondition(cond, Field.TrackBpm, Operator.LessEqual, textBoxBPMToTrack);

            AddToCondition(cond, Field.TrackComment, stringOperator, textBoxCommentTrack);
            AddToCondition(cond, Field.TrackLyrics, stringOperator, textBoxLyricsTrack);
            AddToCondition(cond, Field.TrackSoundFile, stringOperator, textBoxSoundfileTrack);

            AddToCondition(cond, Field.TrackYearRecorded, Operator.GreaterEqual, textBoxYearRecordedFromTrack);
            AddToCondition(cond, Field.TrackYearRecorded, Operator.LessEqual, textBoxYearRecordedToTrack);
            AddToCondition(cond, Field.TrackRating, Operator.GreaterEqual, ratingControlFromTrack);
            AddToCondition(cond, Field.TrackRating, Operator.LessEqual, ratingControlToTrack);

            AddToCondition(cond, Field.TrackUser1, stringOperator, userFieldsControlTrack, 0);
            AddToCondition(cond, Field.TrackUser2, stringOperator, userFieldsControlTrack, 1);
            AddToCondition(cond, Field.TrackUser3, stringOperator, userFieldsControlTrack, 2);
            AddToCondition(cond, Field.TrackUser4, stringOperator, userFieldsControlTrack, 3);
            AddToCondition(cond, Field.TrackUser5, stringOperator, userFieldsControlTrack, 4);

            AddToCondition(cond, Field.TrackCategory, Operator.Equal, comboBoxCategoryTrack);
            AddToCondition(cond, Field.TrackLanguage, stringOperator, textBoxLanguageTrack);

            foreach (SingleCondition sc in trackCodesCondition)
            {
                cond.Add(new SingleCondition(sc.Field, sc.Operator, sc.Value, sc.Logical));
            }
        }
Пример #10
0
 private void AddToCondition(Condition cond, Field field, Operator op, RatingControl ratingControl)
 {
     if (ratingControl.Value > 0)
     {
         cond.Add(new SingleCondition(field, op, ratingControl.Value));
     }
 }
Пример #11
0
        private Condition CreateConditionFromSingleLine(string line, List <string> variables)
        {
            logger.Info(line);
            var splitted      = line.Split(':');
            var conditionName = splitted[0].Trim().Substring(1); // line is like $Conditions1 so i skip $

            splitted = splitted[1].Split('{')[1].Split('}');     // todo: change to regex;

            var rules = splitted[0].Split(new[] { "and" }, StringSplitOptions.None).ToList();

            var row = new Condition()
            {
                Name = conditionName
            };

            variables.ForEach(v => row.Add(v, null));

            rules.ForEach(r =>
            {
                if (!string.IsNullOrWhiteSpace(r))
                {
                    var s     = r.Split('=');
                    var name  = s[0].Trim();
                    var value = s[1].Trim() == "1";
                    row[name] = value;
                }
                else
                {
                    logger.Info("Skip " + conditionName);
                }
            });

            return(row);
        }
Пример #12
0
    private Condition FetchPatterns(IList <string> patterns, bool startsWithTag)
    {
        Condition ret = new Condition();

        for (int i = 0; patterns.Count > i; ++i)
        {
            if (0 == i && startsWithTag)
            {
                ret.Tag = patterns[i];
                continue;
            }
            bool negative = false;
            if (patterns[i].StartsWith(@"[N]"))
            {
                negative    = true;
                patterns[i] = patterns[i].Substring(3);
            }
            if (patterns[i].StartsWith(@"(-)"))
            {
                negative    = true;
                patterns[i] = patterns[i].Substring(3);
            }
            ret.Add(patterns[i], negative);
        }
        return(ret);
    }
Пример #13
0
        public void should_not_clear_a_simple_condition()
        {
            Event avail = new Event("avail");

            adapter.AddDataItem(avail);
            avail.Value = "AVAILABLE";

            Condition cond = new Condition("cond", true);

            cond.Normal();
            adapter.AddDataItem(cond);
            adapter.SendChanged();

            adapter.addClientStream(stream);

            adapter.Begin();
            cond.Add(Condition.Level.FAULT, "A Fault", "111");
            adapter.SendChanged();
            long pos = stream.Position;

            adapter.Begin();
            adapter.SendChanged();

            Assert.AreEqual(pos, stream.Position);
        }
Пример #14
0
        public void should_send_normal_when_fault_is_not_reasserted()
        {
            Event avail = new Event("avail");

            adapter.AddDataItem(avail);
            avail.Value = "AVAILABLE";

            Condition cond = new Condition("cond");

            cond.Normal();
            adapter.AddDataItem(cond);
            adapter.SendChanged();

            adapter.addClientStream(stream);

            adapter.Begin();
            cond.Add(Condition.Level.FAULT, "A Fault", "111");
            adapter.SendChanged();
            long pos = stream.Position;

            adapter.Begin();
            adapter.SendChanged();

            stream.Seek(pos, SeekOrigin.Begin);
            byte[] buffer = new byte[1024];
            int    count  = stream.Read(buffer, 0, 1024);
            String line   = encoder.GetString(buffer, 0, count);

            Assert.IsTrue(line.EndsWith("cond|NORMAL||||\n"));
        }
        public void should_include_newly_added_activations()
        {
            c.Begin();
            c.Add(Condition.Level.WARNING, "text", "code", "HIGH", "1123");
            c.Prepare();
            List <DataItem> list = c.ItemList();

            Assert.AreEqual(1, list.Count);
            Assert.AreEqual("c|WARNING|code|1123|HIGH|text", list[0].ToString());
        }
Пример #16
0
        public void Read(string path)
        {
            FileEntity f = new FileEntity(path, "UTF-8");

            f.Read();
            Condition c_function = new Condition();

            c_function.Add(PATTERN_LABEL_FUNCTIONS, false);
            c_function.Add(PATTERN_LABEL, false);
            Condition c_packageBody = new Condition();

            c_packageBody.Add(PATTERN_LABEL_PACKAGEBODIES, false);
            c_packageBody.Add(PATTERN_LABEL, false);
            Condition c_package = new Condition();

            c_package.Add(PATTERN_LABEL_PACKAGES, false);
            c_package.Add(PATTERN_LABEL, false);
            Condition c_procedure = new Condition();

            c_procedure.Add(PATTERN_LABEL_PROCEDURES, false);
            c_procedure.Add(PATTERN_LABEL, false);
            Condition c_trigger = new Condition();

            c_trigger.Add(PATTERN_LABEL_TRIGGERS, false);
            c_trigger.Add(PATTERN_LABEL, false);
            Condition c_view = new Condition();

            c_view.Add(PATTERN_LABEL_VIEWS, false);
            c_view.Add(PATTERN_LABEL, false);
            for (int i = 0; f.RowCount > i; ++i)
            {
                c_function.Test(f.Get[i], i);
                c_packageBody.Test(f.Get[i], i);
                c_package.Test(f.Get[i], i);
                c_procedure.Test(f.Get[i], i);
                c_trigger.Test(f.Get[i], i);
                c_view.Test(f.Get[i], i);
            }
            Pick(Functions, c_function);
            Pick(PackageBodies, c_packageBody);
            Pick(Packages, c_package);
            Pick(Procedures, c_procedure);
            Pick(Triggers, c_trigger);
            Pick(Views, c_view);
        }
        public void simple_conditions_should_not_mark_and_sweep()
        {
            s.Begin();
            s.Add(Condition.Level.WARNING, "text", "code");
            s.Prepare();
            s.Cleanup();

            s.Begin();
            s.Prepare();
            List <DataItem> list = s.ItemList();

            s.Cleanup();

            Assert.AreEqual(0, list.Count);

            list = s.ItemList(true);
            Assert.AreEqual(1, list.Count);
            Assert.AreEqual("s|WARNING|code|||text", list[0].ToString());
        }
Пример #18
0
        public void TestMethod4()
        {
            Condition c = new Condition();

            c.Add(@"ConditionTest::TestMethod4 start", false);
            c.Add(@"contains", false);
            c.Add(@"ConditionTest::TestMethod4 end", false);
            using (System.IO.StreamReader r = new System.IO.StreamReader(@"./Test1/a3.txt")) {
                int rc = 0;
                while (!r.EndOfStream)
                {
                    c.Test(r.ReadLine(), rc);
                    ++rc;
                }
            }
            IList <Match> ret = c.Hit;

            Assert.AreEqual(0, ret.Count);
        }
Пример #19
0
 private void ScanMachineState()
 {
     mExecution.Value = "ACTIVE";
     // make up a constantly changing value for the 'block' event
     // on a CNC machine this would be the current block (line of G-code)
     mServoBlock.Value = DateTime.Now.Second.ToString();
     // simulate varying load and temp
     coolantLevel        = coolantLevel * 0.90 + random.NextDouble();
     mCoolantLevel.Value = coolantLevel.ToString("F1");
     temperature         = (temperature * 5 + random.Next(44)) / 6;
     mTemp.Value         = temperature;
     // turn some alarms on and off
     if (coolantLevel < 5)
     {
         mSystem.Add(Condition.Level.WARNING, "coolant press. low", "CP001");
     }
     if (temperature > 22)
     {
         mSystem.Add(Condition.Level.WARNING, "overtemp warning", "OT77");
     }
 }
Пример #20
0
 private void coolant_CheckedChanged(object sender, EventArgs e)
 {
     if (coolant.Checked)
     {
         mFillLevel.Add(Condition.Level.WARNING, "Coolant Low", "COOL", "LOW");
     }
     else
     {
         mFillLevel.Clear("COOL");
     }
     mAdapter.SendChanged();
 }
Пример #21
0
        private void ComboBoxAndOr_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ComboBox cb = e.OriginalSource as ComboBox;

            SingleCondition sc = cb.DataContext as SingleCondition;

            // Prüfen, ob wir in der letzten Zeile sind.
            if (Condition[Condition.Count - 1] == sc)
            {
                Condition.Add(new DataBaseEngine.SingleCondition());
            }
        }
 private void OnDestroy()
 {
     if (target != null)
     {
         Condition con = condition.Exist(target);
         if (con == null)
         {
             con           = Instantiate(condition, target.conditionDisplay);
             con.character = target;
         }
         con.Add(value);
     }
 }
Пример #23
0
        public void TestMethod3()
        {
            Condition c = new Condition();

            c.Add(@"ConditionTest::TestMethod3 start", false);
            c.Add(@"contains", false);
            c.Add(@"ConditionTest::TestMethod3 end", false);
            using (System.IO.StreamReader r = new System.IO.StreamReader(@"./Test1/a2.txt")) {
                int rc = 0;
                while (!r.EndOfStream)
                {
                    c.Test(r.ReadLine(), rc);
                    ++rc;
                }
            }
            IList <Match> ret = c.Hit;

            Assert.AreEqual(1, ret.Count);
            Assert.AreEqual(7, ret[0].Hit.Count);
            Assert.AreEqual(1, ret[0].Start);

            const string L1 = @"ConditionTest::TestMethod3 start";
            const string L2 = @"elit, sed do eiusmod tempor incididunt ut labore et";
            const string L3 = @"dolore magna aliqua. Ut enim ad minim veniam, quis";
            const string L4 = @"contains";
            const string L5 = @"nostrud exercitation ullamco laboris nisi ut aliquip";
            const string L6 = @"ex ea commodo consequat. Duis aute irure dolor in";
            const string L7 = @"ConditionTest::TestMethod3 end";

            Assert.AreEqual(L1, ret[0].Hit[0]);
            Assert.AreEqual(L2, ret[0].Hit[1]);
            Assert.AreEqual(L3, ret[0].Hit[2]);
            Assert.AreEqual(L4, ret[0].Hit[3]);
            Assert.AreEqual(L5, ret[0].Hit[4]);
            Assert.AreEqual(L6, ret[0].Hit[5]);
            Assert.AreEqual(L7, ret[0].Hit[6]);
        }
Пример #24
0
        private void ButtonDelete_Click(object sender, RoutedEventArgs e)
        {
            Button btn = e.OriginalSource as Button;

            SingleCondition sc = btn.DataContext as SingleCondition;

            Condition.Remove(sc);

            if (Condition.Count == 0)
            {
                Condition.Add(new SingleCondition());
            }

            StartSearchNowTimer();
        }
    private void OnGetDamage(object sender, System.EventArgs e)
    {
        DamageEventArgs args = e as DamageEventArgs;

        if (args.from != null && args.damage >= damage)
        {
            Condition con = bleeding.Exist(args.from);
            if (con == null)
            {
                con           = Instantiate(bleeding, args.from.conditionDisplay);
                con.character = args.from;
            }
            con.Add(bleeding_stack);
        }
        Settlement();
        text.text = stack.ToString();
        if (stack <= 0)
        {
            Destroy(gameObject);
        }
    }
        public string Check()   // calculate if in error, fill Result with what is valid. Empty string if ok
        {
            Result = new ConditionLists();

            string errorlist = "";

            foreach (Group g in groups)
            {
                string innerc = g.innercond.Text;
                string outerc = g.outercond.Text;
                string evt    = (eventlist != null) ? g.evlist.Text : "Default";

                //System.Diagnostics.Debug.WriteLine("Event {0} inner {1} outer {2} action {3} data '{4}'", evt, innerc, outerc, actionname, actiondata );

                Condition fe = new Condition();

                if (evt.Length == 0)        // must have name
                {
                    errorlist += "Ignored group with empty name" + Environment.NewLine;
                }
                else
                {
                    if (fe.Create(evt, "", "", innerc, outerc)) // create must work
                    {
                        for (int i = 0; i < g.condlist.Count; i++)
                        {
                            Group.Conditions c      = g.condlist[i];
                            string           fieldn = c.fname.Text;
                            string           condn  = c.cond.Text;
                            string           valuen = c.value.Text;

                            if (fieldn.Length > 0 || ConditionEntry.IsNullOperation(condn))
                            {
                                ConditionEntry f = new ConditionEntry();

                                if (f.Create(fieldn, condn, valuen))
                                {
                                    if (valuen.Length == 0 && !ConditionEntry.IsUnaryOperation(condn) && !ConditionEntry.IsNullOperation(condn))
                                    {
                                        errorlist += "Do you want filter '" + fieldn + "' in group '" + fe.eventname + "' to have an empty value" + Environment.NewLine;
                                    }

                                    fe.Add(f);
                                }
                                else
                                {
                                    errorlist += "Cannot create filter '" + fieldn + "' in group '" + fe.eventname + "' check value" + Environment.NewLine;
                                }
                            }
                            else
                            {
                                errorlist += "Ignored empty filter " + (i + 1).ToString(System.Globalization.CultureInfo.InvariantCulture) + " in " + fe.eventname + Environment.NewLine;
                            }
                        }

                        if (fe.fields != null)
                        {
                            Result.Add(fe);
                        }
                        else
                        {
                            errorlist += "No valid filters found in group '" + fe.eventname + "'" + Environment.NewLine;
                        }
                    }
                    else
                    {
                        errorlist += "Cannot create " + evt + " not a normal error please report" + Environment.NewLine;
                    }
                }
            }

            return(errorlist);
        }
Пример #27
0
        private void gather_Tick(object sender, EventArgs e)
        {
            mAdapter.Begin();

            if (estop.Checked)
            {
                mEStop.Value = "TRIGGERED";
            }
            else
            {
                mEStop.Value = "ARMED";
            }

            if (automatic.Checked)
            {
                mMode.Value = "AUTOMATIC";
            }
            else if (mdi.Checked)
            {
                mMode.Value = "MANUAL_DATA_INPUT";
            }
            else if (edit.Checked)
            {
                mMode.Value = "EDIT";
            }
            else
            {
                mMode.Value = "MANUAL";
            }

            if (running.Checked)
            {
                mExec.Value = "ACTIVE";
            }
            else if (feedhold.Checked)
            {
                mExec.Value = "FEED_HOLD";
            }
            else if (stopped.Checked)
            {
                mExec.Value = "STOPPED";
            }
            else if (ready.Checked)
            {
                mExec.Value = "READY";
            }

            mFunctionalMode.Value = functionalMode.Text;
            mProgram.Value        = program.Text;

            if (messageCode.Text.Length > 0)
            {
                mMessage.Code  = messageCode.Text;
                mMessage.Value = messageText.Text;
            }

            mxLoad.Value = xLoad.Value;
            mcLoad.Value = cLoad.Value;

            if (flazBat.Checked)
            {
                mSystem.Add(Condition.Level.FAULT, "Yur Flaz Bat is flapping", "FLAZBAT");
            }
            if (something.Checked)
            {
                mSystem.Add(Condition.Level.WARNING, "Something went wrong", "AKAK");
            }
            if (noProgram.Checked)
            {
                mSystem.Add(Condition.Level.FAULT, "No program loaded", "PROG");
            }

            if (overtemp.Checked)
            {
                mTemp.Add(Condition.Level.WARNING, "Temperature is too high", "OT");
            }
            if (overload.Checked)
            {
                mOverload.Add(Condition.Level.FAULT, "Axis overload", "OL");
            }
            if (travel.Checked)
            {
                mTravel.Add(Condition.Level.FAULT, "Travel outside boundaries", "OP");
            }

            DataGridViewColumnCollection headers = commonVariables.Columns;
            DataGridViewCellCollection   cells   = commonVariables.Rows[0].Cells;
            string result = "";

            for (int i = 0; i < cells.Count; i++)
            {
                result += headers[i].HeaderText + ":" + cells[i].Value + " ";
            }

            mCommonVariable.Value = result;

            mAdapter.SendChanged();
        }
Пример #28
0
        private void gather_Tick(object sender, EventArgs e)
        {
            mAdapter.Begin();

            if (estop.Checked)
            {
                mEStop.Value = "TRIGGERED";
            }
            else
            {
                mEStop.Value = "ARMED";
            }

            if (automatic.Checked)
            {
                mMode.Value = "AUTOMATIC";
            }
            else if (mdi.Checked)
            {
                mMode.Value = "MANUAL_DATA_INPUT";
            }
            else // edit & manual
            {
                mMode.Value = "MANUAL";
            }

            if (running.Checked)
            {
                mExec.Value = "ACTIVE";
            }
            else if (feedhold.Checked)
            {
                mExec.Value = "FEED_HOLD";
            }
            else
            {
                mExec.Value = "READY";
            }

            mProgram.Value = program.Text;

            if (messageCode.Text.Length > 0)
            {
                mMessage.Code  = messageCode.Text;
                mMessage.Value = messageText.Text;
            }

            mLoad.Value     = load.Value;
            mPosition.Value = position.Value;

            if (flazBat.Checked)
            {
                mSystem.Add(Condition.Level.FAULT, "Yur Flaz Bat is flapping", "FLAZBAT");
            }
            if (something.Checked)
            {
                mSystem.Add(Condition.Level.WARNING, "Something went wrong", "AKAK");
            }

            if (overtemp.Checked)
            {
                mTemp.Add(Condition.Level.WARNING, "Temperature is too high", "OT");
            }
            if (overload.Checked)
            {
                mOverload.Add(Condition.Level.FAULT, "Axis overload", "OL");
            }
            if (travel.Checked)
            {
                mTravel.Add(Condition.Level.FAULT, "Travel outside boundaries", "OP");
            }

            mAdapter.SendChanged();
        }
Пример #29
0
        private void AddToCondition(Condition cond, Field field, Operator op, TextBox textBox)
        {
            if (!string.IsNullOrEmpty(textBox.Text))
            {
                switch (field)
                {
                case Field.TotalLength:
                case Field.TrackLength:
                    cond.Add(new SingleCondition(field, op, Misc.ParseTimeString(textBox.Text)));
                    break;

                case Field.Date:
                    cond.Add(new SingleCondition(field, op, ((TextBoxDate)textBox).Value));
                    break;

                case Field.Price:
                    cond.Add(new SingleCondition(field, op, ((TextBoxCurrency)textBox).Value));
                    break;

                case Field.ArchiveNumber:
                {
                    if (Settings.Current.SortArchiveNumberNumeric)
                    {
                        int number = 0;
                        Int32.TryParse(textBox.Text, out number);
                        cond.Add(new SingleCondition(field, op, number));
                    }
                    else
                    {
                        cond.Add(new SingleCondition(field, op, textBox.Text));
                    }

                    break;
                }

                case Field.NumberOfTracks:
                {
                    int number = 0;
                    Int32.TryParse(textBox.Text, out number);
                    cond.Add(new SingleCondition(field, op, number));
                    break;
                }

                case Field.TrackBpm:
                {
                    int bpm = 0;
                    Int32.TryParse(textBox.Text, out bpm);
                    cond.Add(new SingleCondition(field, op, bpm));
                    break;
                }

                case Field.YearRecorded:
                {
                    int year = 0;
                    Int32.TryParse(textBox.Text, out year);
                    cond.Add(new SingleCondition(field, op, year));
                    break;
                }

                default:
                    cond.Add(new SingleCondition(field, op, textBox.Text));
                    break;
                }
            }
        }