private void btnDbPackage_Click(object sender, EventArgs e) { try { var items = _conn.Apply(@"<Item type='PackageDefinition' action='get' select='id' />").Items(); var refs = new List <ItemReference>(); foreach (var item in items) { refs.Add(ItemReference.FromFullItem(item, true)); } using (var dialog = new FilterSelect <ItemReference>()) { dialog.DataSource = refs; dialog.DisplayMember = "KeyedName"; dialog.Message = resources.Messages.PackageSelect; if (dialog.ShowDialog(this, btnDbPackage.RectangleToScreen(btnDbPackage.Bounds)) == DialogResult.OK && dialog.SelectedItem != null) { txtFind.Text = ""; _findAction = DefaultFindAction; items = _conn.Apply(@"<Item type='PackageElement' action='get' select='element_id,element_type,name' orderBy='element_type,name,element_id'> <source_id condition='in'>(select id from innovator.PACKAGEGROUP where SOURCE_ID = @0)</source_id> </Item>", dialog.SelectedItem.Unique).Items(); _availableRefs.Clear(); ItemReference newRef; foreach (var item in items) { newRef = new ItemReference() { Type = item.Property("element_type").AsString(""), Unique = item.Property("element_id").AsString(""), KeyedName = item.Property("name").AsString("") }; if (!_selectedRefs.Contains(newRef)) { _selectedRefs.Add(newRef); } } _existingScript = _existingScript ?? new InstallScript(); _existingScript.Title = dialog.SelectedItem.KeyedName; EnsureResultsTab(); tbcSearch.SelectedTab = pgResults; txtFind.Focus(); } } } catch (Exception ex) { Utils.HandleError(ex); } }
private void btnDbPackage_Click(object sender, EventArgs e) { try { var items = _conn.GetItems("ApplyAML", Properties.Resources.Aml_Packages); var refs = new List <ItemReference>(); foreach (var item in items) { refs.Add(ItemReference.FromFullItem(item, true)); } using (var dialog = new FilterSelect <ItemReference>()) { dialog.DataSource = refs; dialog.DisplayMember = "KeyedName"; dialog.Message = resources.Messages.PackageSelect; if (dialog.ShowDialog(this) == DialogResult.OK && dialog.SelectedItem != null) { txtFind.Text = ""; _findAction = DefaultFindAction; items = _conn.GetItems("ApplyAML", string.Format(Properties.Resources.Aml_PackageElements, dialog.SelectedItem.Unique)); _availableRefs.Clear(); ItemReference newRef; foreach (var item in items) { newRef = new ItemReference() { Type = item.Element("element_type", ""), Unique = item.Element("element_id", ""), KeyedName = item.Element("name", "") }; if (!_selectedRefs.Contains(newRef)) { _selectedRefs.Add(newRef); } } _existingScript = _existingScript ?? new InstallScript(); _existingScript.Title = dialog.SelectedItem.KeyedName; EnsureResultsTab(); tbcSearch.SelectedTab = pgResults; txtFind.Focus(); } } } catch (Exception ex) { Utils.HandleError(ex); } }