Skip to main content

Dynamic GUI Editor

The Dynamic GUI Editor is a tool of the SCCM Manager. It is used to configure dynamically generated user interfaces for certain plugins. These include the Client Creator Plugin, Reset Computer Plugin and the Custom Inventory Plugin. This allows the content and function of other elements to be specifically designed and controlled.

Table of contents
Update

Configuration






Update

The Dynamic GUI Editor is supplied with the SCCM Manager installation. When installing a newer version, only the files need to be exchanged.

The Dynamic Gui Editor files are by default located , under "C:\Program Files (x86)\smcTeam\SCCM Manager\Tools\DynamicGuiEditor".

image.png

The existing files must be replaced with the new files.

image.png

After the files have been exchanged, a Microsoft Defender message may appear, press the “Run Anyway” button

Configuration

The configurations should ideally not be changed and are set correctly by default.

image.png

image.png

Value Explanation Default Value
SqlConnectionString

This ConnectionString is used to establish the connection to the SCCM Manager database.

Server=localhost;Database=SccmManager;Trusted_Connection=True;TrustServerCertificate=True;
InstanceQuery

This Query is used to determine the different Instances in the SCCM Manager database.

SELECT DISTINCT Component, Name, InstanceName FROM ApplicationVariables WHERE Type = 'Dxml'
XmlDefinitionQuery

This Query is used to get the different Xml from the SCCM Manager database.

SELECT Value FROM ApplicationVariables WHERE Component = '{COMPONENT}' AND Name = '{NAME}' AND InstanceName = '{INSTANCE}'

Plugin Requirements

The Dynamic GUI Editor is used to configure the user interface of these plugin, the Client Creator Plugin, Reset Computer Plugin and the Custom Inventory Plugin. The plugins have specific requirements.

Plugin Requirements
Client Creator Plugin

OSDSelection - ComboBox
OSDomputerName - TextBox

MACADRESS - TextBox

SMBIOSGUID - TextBox

Reset Computer Plugin OSDSelection - ComboBox
Custom Inventory Plugin inv_number - TextBox

Dynamic GUI Editor

The user interfaces created with the Dynamic GUI Editor can be loaded and saved as a file or in the SCCM Manager database.
The UIs must be saved in the database in order to be used by the SCCM Manager.

image.png


ComboBoxes

ComboBoxes can be added via the "Add" button.

image.png

The new ComboBox is created at the bottom.

image.png

Name Explanation
Name The name used internaly by the Dynamic GUI Editor

Friendly Name

The name that will be shown to the user
Enabled Determines if the element will be shown in the user interface 
Mandatory Determines if the element needs to be filled out
Read Only Determines if the element can be edited
Internal Elements marked as Internal are essential for the functionality of a plug-in. If these are deleted or their name is changed, the function of the respective plug-in can no longer be guaranteed.

If the element is not marked as internal the value will be created as a computer variable in SCCM
Description The text will be shown as tool tip when hovered over the element

The ComboBox can be edited in the "General" tab. 

image.png

ComboBox Items can have Rules assigned to them. Rules can be provided to further support user interaction.

image.png

In this example the ComboBox Item has a rule that will define the selectable Item from the ComboBox "Location".

Rule Explanation
ProcessType

Default

All

Action

With "Action" additional actions can be configured.

 

None - No additional action will be done

Enable - Enable the TargetInstance

Disable - Disable the TargetInstance

Show - Show the TargetInstance

Hide - Hide the TargetInstance

Set Read Only - Sets the TargetInstance to read only

Set Writeable - Sets the TargetInstance to writeable

TargetInstance The UI element that is target by the selection of the item, in tis case another ComboBox Named "Location". 
TargetItemFilter Used to limit the selection of antoher ComboBox, in this Example the ComboBox "Location", will only display the Items "Italy" and "Germany".
TargetItemInstance
TargetItemValue Can not be used via a ComboBox Item

TextBoxes

TextBoxes can be added via the "Add" button.

image.png

The new TextBox is created at the bottom.

image.png

Name Explanation
Name The name used internaly by the Dynamic GUI Editor

Friendly Name

The name that will be shown to the user
Enabled Determines if the element will be shown in the user interface 
Mandatory Determines if the element needs to be filled out
Read Only Determines if the element can be edited
Internal Elements marked as Internal are essential for the functionality of a plug-in. If these are deleted or their name is changed, the function of the respective plug-in can no longer be guaranteed.

If the element is not marked as internal the value will be created as a computer variable in SCCM
Description The text will be shown as tool tip when hovered over the element

The TextBox can be edited in the "General" tab. 

image.png

Mask

Masks can be defined under "Mask". This defines the formats of the input fields.

Mask Property
A Alphanumeric or a special character, required.
a Alphanumeric or a special character, not required
L Letter, required. Restricts the input to the ASCII letters a-z and A-Z. This mask element is equivalent to [a-zA-Z] in regular expressions.
l Letter, not required
\ Breaks out a mask character and turns it into a literal. "\" is the escape sequence for a backslash.
All other characters (Literals) All non-mask elements are displayed in RadMaskedTextInput as themselves. Literals always take a static position in the mask at runtime and cannot be moved or deleted by the user.

More information at Telerik Mask Tokens.

An example of a mask for entering a MAC address:
AA-AA-AA-AA-AA-AA

Validation regex

The validation regex can be used to limit the characters allowed in the input. 

An example of a regex that allows only letters from A to F, for entering a MAC address:
^[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$

TextBoxes can be assigned Rules.

image.png

In this example the TextBox "DigitalAlphaNummeric" has a rule that will give the TextBox "OSDComputerName" its value.

Rule Explanation
ProcessType
Action
TargetInstance The Element that will be targeted by the rule, in this case the TextBox "OSDComputerName".
Target Value

The TargetValue is the value that be will written in the target TextBox, in this Case it will be the combination from the "Location" and "Type" ComboBoxes and the value of the "DigitalAlphanummeric" TextBox.

Seperated by { }.