コード例 #1
0
        private void listBoxVariables_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            if (listBoxVariables.SelectedItem is SCBVariable var)
            {
                SCBQueryItem item = _currentQuery._items[var.code];

                if (item.selection.filter.Equals("all"))
                {
                    radioButtonAll.Checked = true;
                }
                else if (item.selection.filter.Equals("item"))
                {
                    radioButtonItem.Checked = true;
                }
                else if (item.selection.filter.Equals("top"))
                {
                    radioButtonTop.Checked = true;
                }
                UpdateSelectedItems(var);
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: StefanFeltenmark/SCB
        private static void QueryTable(SCBMetaData metaData, SCBClient client, SCBNode current)
        {
            SCBQuery query = new SCBQuery();

            foreach (SCBVariable variable in metaData.variables)
            {
                SCBQueryItem qi = new SCBQueryItem
                {
                    code      = variable.code,
                    selection = new SCBSelection {
                        filter = "top"
                    }
                };

                Console.Out.Write($"{variable.code} : ");
                Console.Out.Write("Filter [item,all,top,agg,quit] = ");
                bool ok = false;
                while (!ok)
                {
                    string ans = Console.In.ReadLine();

                    string shortString = (ans.Length < 2) ? String.Empty : (ans ?? string.Empty).Substring(0, 2).ToLower();

                    switch (shortString)
                    {
                    case "it":
                        qi.selection.values.AddRange(GetItems(variable));
                        qi.selection.filter = "item";
                        ok = true;
                        break;

                    case "al":
                        qi.selection.values.Add("*");
                        qi.selection.filter = "all";
                        ok = true;
                        break;

                    case "to":
                        qi.selection.values.Add(GetTop().ToString());
                        qi.selection.filter = "top";
                        ok = true;
                        break;

                    case "ag":
                        qi.selection.filter = "agg";
                        ok = true;
                        break;

                    case "qu":
                        ok = true;
                        break;

                    default:
                        break;
                    }

                    if (!ok)
                    {
                        Console.Out.WriteLine("Invalid input, please try again, or Quit!");
                        Console.Out.Write("Filter [Item,All,Top,Agg,Quit] = ");
                    }

                    ;
                }


                query.query.Add(qi);
            }


            SCBTable table = client.GetTable(current, query);

            PresentTable(table);
        }