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); } }
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); }