Variables from the ICDB
Two types of variables are used within the ICDB:
Variables
from the Configuration Table
Variables from the configuration table have the following properties:
- Variable name
- Variable scope in the site structure
- Storage location
- Description
- Type
- definition location
- Inheritance of values
- Category (permanently defined and user-defined variables)
The Show Definition... context menu command allows you to view most of the properties of these variables.
Variable Name
With some variable types (see the section "Type"), you can access the values in the configuration table using the ICDB.<section name>.<variable> syntax.
Some values in the configuration table are determined by using other values from the configuration table. The variable Reporting.SmtpServer, for example, is defined as Mail.%SiteProperties.DnsDomain%. Through this "cascading" of variables, it is possible to make numerous settings with only a few specified values.
Description
Designation of the variables in the configuration table.
Type
Specifies the values that this variable can assume.
The following five types of values can be accessed in variable form:
- DWORD (number)
- BOOLEAN (yes/no)
- STRING (character string)
- INI_VALUE (value from INI file)
- REGISTRY_VALUE (registry value)
Ivanti DSM uses the other types internally; it is not possible to access these values:
- BINARY (binary)
- OBJECT_ID (unique internal number of a site object)
- OPTION (option value)
- ACCESS_CONTROL_ENTRY (entry in the list of users with administration privileges)
- STRINGLIST
Defined in AddOn
Specifies the module in which this variable is defined. Modules that are internal are also displayed in this field, for example the NetInstall Spy xniSpy32.
Scope
The scope of a variable determines where this value can be modified, that is on which level of the site structure: There are several options:
- Organization (ORG)
- Region
- Site
- Depot
- Repository
Certain variables, although displayed in the configuration table, can only be modified via a properties dialog.
Location
All the values of the variables in the configuration table are stored in the ICDB (NiCfgSrv.ncp, . NiCfgLcl.ncp).
Variables in the User-Defined Variables section of the configuration table can also be defined on the basis of INI or registry entries. Although these variables are defined in the configuration database, the values are stored elsewhere:
- In the local registry in HKLM
- In the local registry in HKCU
- In INI files
In the ICDB, only a default value is defined for such variables. If the variable value exists in the local registry or the named INI file, the default value will be overwritten.
- ProgramfilesDir is defined as a registry value that is read in the key HKLM\Software\Microsoft\Windows\CurrentVersion from the value ProgramFilesDir. The standard value is C:\Program Files. The standard value is used if the value cannot be read from the registry.
Inheriting Values
The values of almost all variables from the configuration table are passed on within the site structure, that is they are inherited by child objects. This allows the following:
- high degree of flexibility,
- minimum configuration effort.
Inheritance is not rigid, however; child object values can be modified if required.
Type of Variables
In the User-Defined Variables section, user-specific variables can be created, edited and deleted. All other variables in the configuration table are permanently defined; they have fixed properties and cannot be deleted or edited.
Other
Variables from the ICDB
Ivanti DSM uses the following defined variables within the ICDB:
- _CD_Drive - CD drive on the current computer
- CommonFilesDir - Directory for shared files, defined on the basis of the registry
- ComputerType - Current computer type (workstation, BDC, etc.)
- CurrentContext - Context of the current workstation (depending on the server from which the Manager or Installer was started)
- CurrentServer - Current depot. Composed of <depot name>[<DNS domain>].
- CurrentSite - Current site
- CurrentSiteType - Current site type
- MasterServer - Master depot of the current site
- NiBinDir - Directory containing the DSM Program files; usually the same as NiDir. NiBinDir points to the location from which the local ICDB on the managed computer is updated.
- NiDir - depot share. Default value: \\%CurrentServer%\NI5
- PrimarySite - Site to which the current workstation belongs according to the site definition
- ProgramFilesDir - Program directory defined on the basis of the registry