private void _LoadList() { const int ConstDisplayName = 0; const int ConstProfileStateProduction = 1; const int ConstProfileStateShadow = 2; const int ConstChgNumber = 3; using (new UpdateHelper(m_TreeList)) { m_Proxy.Clear(); // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } var runner = Session.Resolve <IStatementRunner>(); using (IDataReader reader = new CachedDataReader(runner.SqlExecute("SDL-FormAppServerDriverProfile", new List <QueryParameter>() { new QueryParameter("UID_ApplicationServer", ValType.String, FormTool.GetValueSafe(dbobject, "UID_ApplicationServer", "")) }))) { while (reader.Read()) { ITreeListNode node = m_Proxy.AddNode(reader.GetString(ConstDisplayName), (int)StockImage.DriverProfile); m_Proxy.AddItem(node, reader.GetString(ConstProfileStateProduction)); m_Proxy.AddItem(node, reader.GetString(ConstProfileStateShadow)); m_Proxy.AddItem(node, reader.GetString(ConstChgNumber)); } } } }
/// <summary> /// /// </summary> private void MainActivator_OnDiscarded(object sender, System.EventArgs e) { try { foreach (TreeListNode node in m_TreeList.Nodes) { if (!node.SubItemsContentChanged) { continue; } ISingleDbObject dbobject = node.Tag as ISingleDbObject; node.SubItems[0].Data = FormTool.GetValueSafe(dbobject, "CountLimit", 0).ToString(); node.SubItems[0].ForeColor = SystemColors.ControlText; } } catch (Exception ex) { // Fehler melden HandleException(ex); } finally { m_TreeList.Invalidate(); } }
/// <summary> /// /// </summary> private void TreeComboBox3_OnSelectionChangeCommitted(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null || !m_BInitialised || FormTool.GetValueSafe(dbobject, "UID_SDLDomain", "") == "") { return; } // das reicht völlig aus dbobject.GetFK("UID_ParentApplicationServer").SetParent(null); m_TreeComboBoxUIDParentApplicationServer.WhereClause = !FormTool.CanSee(dbobject, "UID_ApplicationServer", "UID_SDLDomain") ? "1=2" : // ReSharper disable once UseStringInterpolation string.Format("{0} and not {1}", SqlFormatter.UidComparison("UID_SDLDomain", dbobject["UID_SDLDomain"].New.String), SqlFormatter.InClause("UID_Applicationserver", ValType.String, FormTool.GetChildUuids(Connection, "Applicationserver", "UID_Applicationserver", dbobject["UID_ApplicationServer"].New.String, "UID_ParentApplicationserver"))); } catch (Exception ex) { // Fehler melden HandleException(ex); } }
/// <summary> /// Wird aufgerufen, bevor der MainActivator aktiviert wird. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Aktivierung mit <null> verhindern if (m_MainActivator.DbObject == null) { return; } // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } m_ListViewProfiles.ListItems.Clear(); if (!FormTool.CanSee(dbobject, "UID_SDLDomainRD", "DisplayName", "OrderNumber", "UID_OS")) { return; } IColDbObject profiles = Connection.CreateCol("ApplicationProfile"); profiles.Prototype.WhereClause = SqlFormatter.AndRelation( SqlFormatter.UidComparison("UID_SDLDomainRD", FormTool.GetValueSafe(dbobject, "UID_SDLDomainRD", "")), SqlFormatter.OrRelation( SqlFormatter.UidComparison("UID_OS", FormTool.GetValueSafe(dbobject, "UID_OS", "")), string.Format("UID_Profile in (select UID_Profile from ProfileCanUsedAlso where {0})", SqlFormatter.UidComparison("UID_OS", FormTool.GetValueSafe(dbobject, "UID_OS", ""))) ) ); profiles.Prototype.Columns["OrderNumber"].IsDisplayItem = true; profiles.Prototype.Columns["DisplayName"].IsDisplayItem = true; profiles.Prototype.OrderBy = "OrderNumber"; profiles.Load(); string uidprofile = FormTool.GetValueSafe(dbobject, "UID_Profile", ""); foreach (IColElem profile in profiles) { ListViewItem item = new ListViewItem(new string[] { profile["DisplayName"].ToString(), profile["OrderNumber"].ToString() }); item.ForeColor = string.Equals(uidprofile, profile["UID_Profile"].ToString(), StringComparison.OrdinalIgnoreCase) ? Color.Red : Color.Black; item.UseItemStyleForSubItems = true; m_ListViewProfiles.ListItems.Add(item); } // TODO Whereklauseln setzen } finally { } }
/// <summary> /// /// </summary> private void ActivatorCombo_OnSelectionChangeCommitted(object sender, System.EventArgs e) { try { if (m_ActivatorCombo.SelectedItem == null) { return; } ISingleDbObject dbobject = (m_ActivatorCombo.SelectedItem as IColElem).Create(); m_RichTextBox1.Text = FormTool.GetValueSafe(dbobject, "LogContent", ""); } catch (Exception ex) { // Fehler melden ExceptionMgr.Instance.HandleException(ex, this, 100); } }
/// <summary> /// Wird aufgerufen, bevor der MainActivator aktiviert wird. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } m_MemberRelationLicenceSubstitute.WhereClause = SqlFormatter.UidComparison("UID_Licence", FormTool.GetValueSafe(dbobject, "UID_Licence", ""), CompareOperator.NotEqual); } finally { } }
/// <summary> /// /// </summary> private void MainActivator_OnActivated(object sender, System.EventArgs e) { try { m_BInitialised = true; // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject != null) { var SDLDomaiDef = FormTool.GetValueSafe(dbobject, "UID_SDLDomain", "") != ""; m_TreeComboBoxUIDSDLDomain.EnabledByUser = !SDLDomaiDef; if (SDLDomaiDef) { m_TreeComboBoxUIDParentApplicationServer.WhereClause = !FormTool.CanSee(dbobject, "UID_ApplicationServer") ? "1=2" : // ReSharper disable once UseStringInterpolation string.Format("{0} and not {1}", SqlFormatter.UidComparison("UID_SDLDomain", dbobject["UID_SDLDomain"].New.String), SqlFormatter.InClause("UID_ApplicationServer", ValType.String, FormTool.GetChildUuids(Connection, "Applicationserver", "UID_Applicationserver", dbobject["UID_ApplicationServer"].New.String, "UID_ParentApplicationserver"))); } else { m_TreeComboBoxUIDParentApplicationServer.WhereClause = SqlFormatter.EmptyClause("UID_SDLDomain", ValType.String); } } if (m_EditIdentApplicationServer.Enabled && m_EditIdentApplicationServer.Visible) { m_EditIdentApplicationServer.Select(); } } catch (Exception ex) { // Fehler melden HandleException(ex); } }
/// <summary> /// /// </summary> private void TreeComboBox1_OnSelectionChangeCommitted(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } m_FormMethodEnableOSEnabled = FormTool.GetValueSafe(dbobject, "UID_Driver", "") != ""; } catch (Exception ex) { // Fehler melden HandleException(ex); } }
private void SetUpNewSectionNameObjectAction(ISingleDbObject targetDbObject) { FormTool.SetValueSafe(targetDbObject, "AppsNotDriver", true); var sourceDbObject = m_MainActivator.DbObject; if (sourceDbObject == null || Session == null) { return; } var prefix = Session.Config().GetConfigParm(@"Software\Driver\Section\Prefix") ?? ""; var identDriver = prefix + FormTool.GetValueSafe(sourceDbObject, "Ident_Driver", ""); var targetMaxLen = targetDbObject.GetEntity().Columns["Ident_SectionName"].MaxLen; if (!string.IsNullOrEmpty(identDriver) && targetMaxLen > 0) { identDriver = identDriver.Substring(0, Math.Min(targetMaxLen, identDriver.Length)).Trim(); } FormTool.SetValueSafe(targetDbObject, "Ident_SectionName", identDriver); }
/// <summary> /// Wird aufgerufen, bevor der MainActivator mit der Aktivierung beginnt. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. Das Formular besitzt zu diesem Zeitpunkt die Connection /// und alle davon abhängigen Komponenten (SqlFormatter, Preprocessor-Auswertung, ...) /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Aktivierung mit <null> verhindern ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } // Inaktive dürfen nicht mehr zugeordnet werden m_MemberRelation1.WhereClause = string.Format("{0} or {1} in (select {2} from {4} where {3})", SqlFormatter.Comparison("IsInActive", false, ValType.Bool), SqlFormatter.FormatColumnname("UID_Application", true, ValType.String, FormatterOptions.None), SqlFormatter.FormatColumnname("UID_ApplicationParent", true, ValType.String, FormatterOptions.None), SqlFormatter.UidComparison("UID_ApplicationChild", FormTool.GetValueSafe(dbobject, "UID_Application", "")), "ApplicationDependsOnApp"); m_MemberRelation2.WhereClause = string.Format("{0} or {1} in (select {2} from {4} where {3})", SqlFormatter.Comparison("IsInActive", false, ValType.Bool), SqlFormatter.FormatColumnname("UID_Application", true, ValType.String, FormatterOptions.None), SqlFormatter.FormatColumnname("UID_ApplicationChild", true, ValType.String, FormatterOptions.None), SqlFormatter.UidComparison("UID_ApplicationParent", FormTool.GetValueSafe(dbobject, "UID_Application", "")), "ApplicationDependsOnApp"); m_MemberRelation3.WhereClause = string.Format("{0} or {1} in (select {2} from {4} where {3})", SqlFormatter.Comparison("IsInActive", false, ValType.Bool), SqlFormatter.FormatColumnname("UID_Driver", true, ValType.String, FormatterOptions.None), SqlFormatter.FormatColumnname("UID_DriverParent", true, ValType.String, FormatterOptions.None), SqlFormatter.UidComparison("UID_ApplicationChild", FormTool.GetValueSafe(dbobject, "UID_Application", "")), "ApplicationDependsOnDriver"); m_MemberRelationApplicationExcludeAppUIDApplication.WhereClause = m_MemberRelationApplicationExcludeDriverUIDApplication.WhereClause = SqlFormatter.Comparison("IsInActive", false, ValType.Bool); } finally { } }
private void _LoadProtocols() { ITreeListProxy proxy = m_TreeListProtocols.Proxy; using (new UpdateHelper(m_TreeListProtocols)) { proxy.Clear(); // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } IColDbObject col = Connection.CreateCol("ADSAccountAppsInfo"); col.Prototype["displayname"].IsDisplayItem = true; col.Prototype["CurrentlyActive"].IsDisplayItem = true; col.Prototype["Installdate"].IsDisplayItem = true; col.Prototype["deinstalldate"].IsDisplayItem = true; col.Prototype["revision"].IsDisplayItem = true; col.Prototype["UID_OS"].IsDisplayItem = true; col.Prototype["UID_InstallationType"].IsDisplayItem = true; col.Prototype.WhereClause = !FormTool.CanSee(dbobject, "UID_ADSAccount") ? "1=2" : SqlFormatter.UidComparison("UID_ADSAccount", FormTool.GetValueSafe(dbobject, "UID_ADSAccount", "")); col.Prototype.OrderBy = "displayname"; col.Load(CollectionLoadType.ForeignDisplays); foreach (IColElem elem in col) { ITreeListNode node = proxy.AddNode(elem.GetDisplayValue("displayname"), (int)VI.ImageLibrary.StockImage.ApplicationProfile); ITreeListItemSmall item = proxy.CreateCheckBoxItem(elem.GetValue("CurrentlyActive").Bool); item.Enabled = false; proxy.AddItem(node, item); proxy.AddItem(node, elem["Installdate"]); proxy.AddItem(node, elem["deinstalldate"]); proxy.AddItem(node, elem["Revision"]); proxy.AddItem(node, elem.GetDisplayValue("UID_OS")); proxy.AddItem(node, elem.GetDisplayValue("UID_InstallationType")); } } }
/// <summary> /// Wird aufgerufen, bevor der MainActivator aktiviert wird. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } // Inaktive dürfen nicht mehr zugeordnet werden string isinactiveclause = string.Format("{0} or {1} in (select {1} from MachineHasDriver where {2})", SqlFormatter.Comparison("IsInActive", false, ValType.Bool), SqlFormatter.FormatColumnname("UID_Driver", true, ValType.String), SqlFormatter.UidComparison("UID_Hardware", FormTool.GetValueSafe(dbobject, "UID_Hardware", ""))); if (Connection.GetConfigParm(@"Software\Driver\ShowWithoutProfile") == "1") { m_MemberRelation1.WhereClause = isinactiveclause; } else { m_MemberRelation1.WhereClause = SqlFormatter.AndRelation( isinactiveclause, string.Format("{0} and {1} in (select {1} from driverprofile where {2} AND {3})", SqlFormatter.UidComparison("UID_OS", FormTool.GetValueSafe(dbobject, "UID_OS", "")), SqlFormatter.FormatColumnname("uid_driver", false, ValType.String), SqlFormatter.UidComparison("UID_SDLDomainRD", FormTool.GetValueSafe(dbobject, "UID_SDLDomainRD", "")), SqlFormatter.Comparison("ChgTest", 0, ValType.Int, CompareOperator.GreaterThan))); } } finally { } }
/// <summary> /// Wird aufgerufen, bevor der MainActivator aktiviert wird. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } string mnbasecolumn = m_MemberRelation1.MNBaseColumnName; // Inaktive dürfen nicht mehr zugeordnet werden string isinactiveclause = SqlFormatter.Comparison("IsInActive", false, ValType.Bool); string osclause = dbobject.Columns.Contains("UID_OS") ? (FormTool.CanSee(dbobject, "UID_OS") ? SqlFormatter.UidComparison("UID_OS", FormTool.GetValueSafe(dbobject, "UID_OS", "")) : "1=2") : ""; if (Connection.GetConfigParm(@"Software\Driver\ShowWithoutProfile") == "1") { m_MemberRelation1.WhereClause = SqlFormatter.AndRelation(isinactiveclause, osclause); } else { m_MemberRelation1.WhereClause = SqlFormatter.AndRelation( isinactiveclause, string.Format("{0} in (select {0} from Driverprofile where {1})", SqlFormatter.FormatColumnname("UID_Driver", true, ValType.String), SqlFormatter.Comparison("ChgNumber", 0, ValType.Int, CompareOperator.GreaterThan)), osclause ); } // and all already assigned ones. m_MemberRelation1.WhereClause = SqlFormatter.OrRelation(m_MemberRelation1.WhereClause, string.Format("UID_Driver in (select UID_Driver from {0} where {1})", m_MemberRelation1.MNTableName, SqlFormatter.Comparison(mnbasecolumn, dbobject[mnbasecolumn].New.String, ValType.String, CompareOperator.Equal, FormatterOptions.None) )); } finally { } }
/// <summary> /// Wird aufgerufen, bevor der MainActivator aktiviert wird. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } // Inaktive dürfen nicht mehr zugeordnet werden string isinactiveclause = string.Format("{0} or {1} in (select {1} from MachineTypeHasDriver where {2})", SqlFormatter.Comparison("IsInActive", false, ValType.Bool), SqlFormatter.FormatColumnname("UID_MachineType", true, ValType.String, FormatterOptions.None), SqlFormatter.UidComparison("UID_Driver", FormTool.GetValueSafe(dbobject, "UID_Driver", ""))); m_MemberRelation1.WhereClause = SqlFormatter.AndRelation( isinactiveclause, string.Format("{0} and ((not {1}) or {2})", SqlFormatter.Comparison("ChgNumber", 0, ValType.Int, CompareOperator.GreaterThan), SqlFormatter.Comparison("netcard", "dummy%", ValType.String, CompareOperator.Like), SqlFormatter.EmptyClause("netcard", ValType.String))); } finally { } }
private void LoadData() { using (new VI.FormBase.UpdateHelper(m_TreeList)) { m_TreeList.Nodes.Clear(); // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null || !dbobject.TableDef.CanSee) { return; } IColDbObject col = Connection.CreateCol(m_DataStore.String1); col.Prototype.WhereClause = SqlFormatter.Comparison(m_DataStore.String2, FormTool.GetValueSafe(dbobject, m_DataStore.String2, ""), ValType.String); col.Prototype.Columns["CountLicMacDirectTarget"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacIndirectTarget"].IsDisplayItem = true; col.Prototype.Columns["CountLicUserTarget"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacPossTarget"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacDirectActual"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacDirectActual"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacIndirectActual"].IsDisplayItem = true; col.Prototype.Columns["CountLicUserActual"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacPossActual"].IsDisplayItem = true; col.Prototype.Columns["CountLicMacReal"].IsDisplayItem = true; col.Prototype.Columns["CountLimit"].IsDisplayItem = true; col.Load(); bool canedit = col.Prototype.Columns["CountLimit"].CanEdit; bool[] cansees = new bool[] { col.Prototype.Columns["UID_Licence"].CanSee, col.Prototype.Columns["CountLimit"].CanSee, col.Prototype.Columns["CountLicMacDirectActual"].CanSee, col.Prototype.Columns["CountLicMacDirectTarget"].CanSee, col.Prototype.Columns["CountLicMacIndirectActual"].CanSee, col.Prototype.Columns["CountLicMacIndirectTarget"].CanSee, col.Prototype.Columns["CountLicMacPossActual"].CanSee, col.Prototype.Columns["CountLicMacPossTarget"].CanSee, col.Prototype.Columns["CountLicMacReal"].CanSee, col.Prototype.Columns["CountLicUserActual"].CanSee, col.Prototype.Columns["CountLicUserTarget"].CanSee, }; // und Grid füllen foreach (IColElem elem in col) { ISingleDbObject obj = elem.Create(); ISingleDbObject identfk = obj.GetFK("UID_Licence").Create(); string ident = identfk != null ? identfk["Ident_Licence"].New.String : ""; TreeListNode node = m_TreeList.Nodes.Add(cansees[0] ? ident : "", 0); node.ForeColor = SystemColors.ControlDark; ITreeListItem subitem = canedit ? new TreeListItemTextBox(cansees[1] ? elem["CountLimit"].ToString() : "", 8) : new TreeListItem(cansees[1] ? elem["CountLimit"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = canedit ? SystemColors.ControlText : SystemColors.ControlDark; subitem = new TreeListItem(cansees[2] ? elem["CountLicMacReal"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[3] ? elem["CountLicUserActual"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[4] ? elem["CountLicUserTarget"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[5] ? elem["CountLicMacDirectActual"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[6] ? elem["CountLicMacDirectTarget"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[7] ? elem["CountLicMacIndirectActual"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[8] ? elem["CountLicMacIndirectTarget"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[9] ? elem["CountLicMacPossActual"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; subitem = new TreeListItem(cansees[10] ? elem["CountLicMacPossTarget"].ToString() : ""); node.SubItems.Add(subitem); subitem.ForeColor = SystemColors.ControlDark; node.Tag = obj; } } }
/// <summary> /// Wird aufgerufen, bevor der MainActivator aktiviert wird. /// Hier sollten alle von einem DB-Objekt abhängige Initialisierungen /// durchgeführt werden. /// </summary> private void MainActivator_OnActivating(object sender, System.EventArgs e) { try { // Daten holen und prüfen ISingleDbObject dbobject = m_MainActivator.DbObject; if (dbobject == null) { return; } // Inaktive dürfen nicht mehr zugeordnet werden string isinactiveclause = string.Format("{0} or {1} in (select {1} from DriverHasLicence where {2})", SqlFormatter.Comparison("IsInActive", false, ValType.Bool), SqlFormatter.FormatColumnname("UID_Driver", true, ValType.String, FormatterOptions.None), SqlFormatter.UidComparison("UID_Licence", FormTool.GetValueSafe(dbobject, "UID_Licence", ""))); m_MemberRelation1.WhereClause = isinactiveclause; } finally { } }