This appendix contains information about classes and properties that are contained in the SMS schema. This information is useful when you are constructing queries, composing a report with Crystal Reports, or examining information in the Resource Explorer. The information consists of Query Builder Attribute Classes for many types of SMS site database objects, including high-level SMS objects such as Advertisements, Packages, Sites, Programs, and Systems.
These class objects are very similar to the corresponding SMS Provider or Windows Management Instrumentation (WMI, formerly WBEM) classes. This appendix concentrates on the objects as you encounter them when you are browsing the SMS site database, and therefore there is no documentation of object methods.
Overview
Your SMS site database contains a very rich collection of information about your networks, computers, users, user groups, and many other components of your computing environment. Often, the information about an object is very detailed. The SMS site database also contains objects representing familiar SMS entities such as advertisements, packages, sites, programs, and systems.
Collectively, the classes contain over 1,000 properties, which you can view in the SMS site database by using the Query Builder, Resource Explorer, and Crystal Reports. The primary purpose of this appendix and the following one is to present a summary of the objects and properties to help you plan your inventory, queries and reports.
You might find that many of these objects and properties are not initially present in your SMS site database. Some are created as the result of a particular discovery method. Others are generated by a hardware or software inventory. Some of the hardware classes and properties are not collected by default but must be specifically enabled. In other words, many of these items will appear in your database as you more fully use the features of SMS. Also, the hardware inventory objects are described in Appendix C, "Hardware Inventory Classes."
Date and Time Formats
Actions that include date and time values, such as "get current date and time", "50 days from today is what date?", or "find out what day of the week falls on a certain date" are common. When you write queries by using the SMS Query Builder interface, or when you compose reports from information stored in the SMS site database, you can express the date and time in any valid SQL format. An example would be any expression that has a SQL Server datetime data type or that can be converted implicitly, such as an appropriately formatted character string — "1998.10.31" for example.
Storage of times in the SMS site database could be local or Greenwich mean time (GMT). The status message viewer can convert to local time, but queries and reports cannot. What you see might be seven hours later than expected, if local time is Pacific Daylight. Therefore, the user must be aware of the following:
-
Status messages are all GMT
-
Offers can be GMT or local, depending on a switch set in the SMS Administrator console. The property in SMS_Advertisement is AssignedScheduleIsGMT (True/False).
-
Inventory is always local time.
Crystal Reports will display what is stored and cannot make time zone conversions. If the report concerns status messages, label the times GMT. If it is an inventory report, label the times as local time. For advertisement reports, you have to check the value of AssignedScheduleIsGMT to get the time style being used. This property is "lazy," meaning it is not exposed to the Query Builder or to Crystal Reports, but you can view it using WBEMTEST. See Chapter 8, "Using Network Discovery Architecture," in the section, "Accessing Discovery Data."
Depending on the context, you may encounter time notations in the following universal format:
19981118175900000000+***Key:1998 year11 month18 day1759 hour00 second000000 microsecond+*** offset from local time
The following table lists valid datetime formats that you can use with the Query Builder:
Table B.1 Valid Datetime Formats
|
Style number without century
|
Style numberwith century
|
Type
|
Output style
|
|
–
|
0 or 100
|
Default
|
mon dd yyyy hh:mm
|
|
1
|
101
|
USA
|
mm/dd/yyyy
|
|
1
|
102
|
ANSI
|
yyyy.mm.dd
|
|
3
|
103
|
British/French
|
dd/mm/yyyy
|
|
4
|
104
|
German
|
dd.mm.yyyy
|
|
5
|
105
|
Italian
|
dd-mm-yyyy
|
|
6
|
106
|
–
|
dd-mon-yyyy
|
|
7
|
107
|
–
|
mon.dd.yyy
|
|
–
|
8 or 108
|
–
|
hh:mm:ss
|
|
–
|
9 or 109
|
–
|
mon dd yyyyhh:mi:ss:mmmAM (or PM)
|
|
10
|
110
|
USA
|
mm-dd-yy
|
|
11
|
111
|
JAPAN
|
yy/mm/dd
|
|
12
|
112
|
ISO
|
yymmdd
|
|
–
|
13 or 113
|
–
|
dd mon yyyyhh:mi:ss:mmm (24 h)
|
|
14
|
114
|
–
|
hh:mi:ss:mmm (24 h)
|
Besides full datetime formats, you can also use datepart formats, which are also valid for the Query Builder or for writing reports from the SMS site database. Datepart formats provide only part of the full datetime format, the year, or just the day of the month, for example. The following table lists valid datepart formats:
Table B.2 Valid Datepart Formats
|
datepart Value
|
Abbreviation
|
Limits
|
|
Year
|
Yy
|
1753-9999
|
|
Month
|
Mm
|
1-12
|
|
Day
|
Dd
|
1-31
|
|
Hour
|
Hh
|
1-23
|
|
Minute
|
Mi
|
0-59
|
|
Second
|
Ss
|
0-59
|
|
Millisecond
|
Ms
|
0-999
|
Interpreting Bitfield Properties
Some SMS object properties are implemented as bit fields, where individual binary bits of an integer (usually a uint32) are used as Boolean flags to store information. These properties can be difficult to interpret at the user interface because the bitfield is often display as a decimal number.
For instance, the Security User Class Permissions object (SMS_UserClassPermissions) contains an integer property called ClassPermissions defined as an int32 with the following bit `flags:
Bit 0 = READBit 1 = MODIFYBit 2 = DELETEBit 3 = DISTRIBUTEBit 4 = CREATE_CHILDBit 5 = REMOTE_CONTROLBit 6 = ADVERTISEBit 7 = MODIFY_RESOURCEBit 8 = ADMINISTERBit 9 = DELETE_RESOURCEBit 10 = CREATEBit 11 = VIEW_COLL_FILEBit 12 = READ_RESOURCE
A typical value of this bit field might be 10100000111. Bit 0 is the least significant bit (on the right) and the other bits are counted right-to-left. Therefore, in this example, the available class permissions include READ, MODIFY, DELETE, ADMINISTER, and CREATE, corresponding to bit fields 0, 1, 2, 8 and 10, respectively.
The difficulty arises when the binary number 10100000111 appears as the decimal number 1287 in an SMS Administrator console display. How do you interpret the bits? The solution is to open the Windows NT Calculator application (calc.exe, in the Accessories group). Use the "scientific" view and set the calculator for decimal mode. Key in the number 1287. Use the radio buttons on the face of the calculator to convert to a binary display. The binary bitfield 10100000111 appears. You can read off the selected bit flags from this display.
Note In a typical bitfield property, many of the bits are unused and have no defined meaning.
"Lazy" Properties
A small number of SMS object properties are described as "lazy." This means that the property exists and contains data, but the data is not available through the SMS Administrator console. In practical terms, the property is not visible in the Query Builder, and cannot be accessed by Crystal Reports.
The "lazy" properties generally contain data that is useless when displayed in the SMS Administrator console. For instance, the Icon[] property in SMS_PDF_Package is an array of icon data that would appear in the SMS Administrator console as a large amount of uninterpretable numeric data.
"Lazy" properties can be accessed programmatically if you have an application that requires the data they store. The data can only be retrieved by explicitly calling GetInstance on the object.
Software Distribution Classes
These are the objects associated with the Software Distribution feature of SMS, such as Advertisement, Collection, Package and Program.
Advertisement
An advertisement is an SMS announcement that a software package is available for installation. The Advertisement object type consists of a single class called SMS_Advertisement. This object is not part of the inventory process. This class contains information about SMS advertisements.
Table B.3 Advertisement Object Type (SMS_Advertisement)
|
Property
|
Data type
|
Example
|
Notes
|
|
ActionInProgress
|
uint32
|
1
|
Indicates the current action that SMS performs on the package.Values are:0=NONE1=UPDATE2=ADD3=DELETE
|
|
AdvertFlags
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates when to announce an advertisement to the user. Bit flags are:Bit 5 = IMMEDIATEBit 8 = ONSYSTEMSTARTUP Bit 9 = ONUSERLOGON Bit 10 = ONUSERLOGOFF Bit 25 = NO_DISPLAY Bit 26 = ONSLOWNET
|
|
AdvertisementID
|
string
|
"TTG00001"
|
Describes a unique, autogenerated key.
|
|
AdvertisementName
|
string
|
"myAdvert"
|
Indicates the name of the advertisement.
|
|
AssignedSchedule[]
|
SMS_ Schedule Token
|
This may appear as a lengthy array of object labels.
|
Lazy. Defines an array of schedule tokens when the advertisement will become mandatory on clients.
|
|
AssignedScheduleEnabled
|
Boolean
|
FALSE
|
Lazy. Indicates whether the schedule defined in AssignedSchedule is active. Values are:TRUEFALSEIf the value is TRUE, the schedule is active.
|
|
AssignedScheduleIsGMT
|
Boolean
|
FALSE
|
Lazy. Indicates whether the schedule defined in AssignedSchedule uses Greenwich Mean Time (GMT).Values are:TRUEFALSEIf the value is TRUE, the schedule uses GMT.
|
|
CollectionID
|
string
|
"SMS00001"
|
Refers to the collection that the advertisement is targeted to.
|
|
Comment
|
string
|
"Any comment."
|
Indicates a comment about the advertisement.
|
|
ExpirationTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the time the advertisement is no longer available to clients.
|
|
ExpirationTimeEnabled
|
Boolean
|
FALSE
|
Lazy. Indicates whether the advertisement expires at the time defined in ExpirationTime.Values are:TRUEFALSEIf the value is TRUE, the advertisement expires at the time indicated in the ExpirationTime property.
|
|
ExpirationTimeIsGMT
|
Boolean
|
FALSE
|
Lazy. Indicates whether the time defined in the ExpirationTime property is GMT.Values are:TRUEFALSEIf TRUE, the expiration time is expressed in GMT.
|
|
HierarchyPath
|
string
|
|
|
|
IncludeSubCollection
|
Boolean
|
TRUE
|
Indicates, when set to TRUE, that the advertisement should be advertised to the subcollections of the selected collection.Values are:TRUEFALSE
|
|
PackageID
|
string
|
"TTG00001"
|
Indicates the Package ID associated with this advertisement.
|
|
PresentTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the time that the advertisement is presented to clients.
|
|
PresentTimeEnabled
|
Boolean
|
TRUE
|
Lazy. Denotes, when set to TRUE, that SMS enforces the present time.Values are:TRUEFALSE
|
|
PresentTimeIsGMT
|
Boolean
|
FALSE
|
Lazy. Indicates whether the time defined in PresentTime is GMT.Values are:TRUEFALSEIf the value is TRUE, the PresentTime property is expressed in GMT.
|
|
Priority
|
uint32
|
2
|
Indicates the priority of the advertisement at child sites.Values are:1=HIGH2=NORMAL3=LOW
|
|
ProgramName
|
string
|
"Typical Installation"
|
Indicates the name of the SMS program object associated with this advertisement.
|
|
SourceSite
|
string
|
"TTG"
|
Indicates a three-letter site code of the originating site.
|
|
TimeFlags
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Duplicates the information in the time Boolean properties. Bit flags are:Bit 0 = ENABLE_PRESENTBit 1 = ENABLE_EXPIRATIONBit 2 = ENABLE_AVAILABLEBit 3 = ENABLE_UNAVAILABLE Bit 4 = ENABLE_MANDATORYBit 5 = GMT_PRESENTBit 6 = GMT_EXPIRATIONBit 7 = GMT_AVAILABLEBit 8 = GMT_UNAVAILABLEBit 9 = GMT_MANDATORY
|
Collection
An SMS Collection object contains information on how to identify members of the collection, and on how recently membership in the collection has been refreshed.
Table B.4 Collection (SMS_Collection)
|
Property
|
Data type
|
Example
|
Notes
|
|
CollectionID
|
string
|
"SMS00001"
|
Indicates the unique identifier of the collection on this SMS site server.
|
|
CollectionRules[]
|
SMS_CollectionRule
|
Appears as an array of objects.
|
Lazy. An array of SMS_CollectionRuleQuery or SMS_CollectionRuleDirect objects that define the membership criteria for this collection.
|
|
Comment
|
string
|
"Any comment."
|
A comment that applies to the collection.
|
|
CurrentStatus
|
uint32
|
1
|
The current status of the collection. Values are:0 = NONE(0)1 = READY2 = REFRESHING3 = SAVING4 = EVALUATING5 = AWAITING_REFRESH6 = DELETING7 = APPENDING_MEMBER8 = QUERYING
|
|
LastChangeTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The last time the collection was altered in any way.
|
|
LastRefreshTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The last time the collection membership was refreshed.
|
|
MemberClassName
|
string
|
"SMS_CM_RES_COLL_SMS00001"
|
This property is the class name whose instances are the members of this collection.
|
|
Name
|
string
|
"All Systems"
|
The name of the collection.
|
|
OwnedByThisSite
|
Boolean
|
TRUE
|
Lazy. This value, when set to true, denotes that the collection originated from the local SMS site.Values are:TRUEFALSE
|
|
RefreshSchedule[]
|
SMS_ScheduleToken
|
|
An array of schedule tokens that define when the collection will be updated.
|
|
RefreshType
|
uint32
|
2
|
Lazy. Defines if SMS will automatically refresh the collection, or whether it will only be manually updated. Values are:1 = MANUAL2 = PERIODIC
|
|
ReplicateToSubSites
|
Boolean
|
FALSE
|
Lazy. This value, when set to true, denotes that the collection will be shared with any children SMS sites.Values are:TRUEFALSE
|
Collection Member
This is the abstract base class for both the member classes for each collection and for SMS_CollectionMember_a.
Table B.5 Collection Member (SMS_CollectionMember)
|
Property
|
Data type
|
Example
|
Notes
|
|
Domain
|
string
|
|
Indicates the domain name of the resource.
|
|
IsAssigned
|
Boolean
|
|
Indicates whether the resource is assigned to the site.
|
|
IsClient
|
Boolean
|
|
Indicates whether the resource in an installed SMS client.
|
|
IsDirect
|
Boolean
|
|
Indicates whether this resource is a direct member of the collection (in contrast to a member provided by a query).
|
|
Name
|
string
|
|
Indicates the name of the resource.
|
|
ResourceID
|
uint32
|
0
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
ResourceType
|
uint32
|
|
Key. Indicates the resource type. Values are:3 = User Group4 = User5 = System6 = IP network There are currently no defined values outside of this range.
|
|
SiteCode
|
string
|
"TTG"
|
Indicates the three-letter site code for the site.
|
|
SMSID
|
string
|
|
The SMS unique identifier of the member resource.
|
Collection Rule
This is the abstract, embedded class used to form elements of the CollectionRules[] array of SMS_Collection. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.6 Collection Rule (SMS_CollectionRule)
|
Property
|
Data type
|
Example
|
Notes
|
|
RuleName
|
string
|
|
Indicates the name of the collection rule.
|
Collection Rule Direct
This is a subclass of SMS_CollectionRule. It identifies the resource class that the collection applies to. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.7 Collection Rule Direct (SMS_CollectionRuleDirect)
|
Property
|
Data type
|
Example
|
Notes
|
|
ResourceClassName
|
string
|
"SMS_R_System"
|
The Resource Class name of the resource this rule applies to.
|
|
ResourceID
|
uint32
|
1
|
The ResourceID of the resource that this rule is defining as belonging to the collection.
|
|
RuleName
|
string
|
"All Systems"
|
Indicates the name of the collection rule.
|
Collection Rule Query
This is a subclass of SMS_CollectionRule. It represents a WQL query that returns resources to include in the collection. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.8 Collection Rule Query (SMS_CollectionRuleQuery)
|
Property
|
Data type
|
Example
|
Notes
|
|
LimitToCollectionID
|
string
|
"SMS00001"
|
The CollectionID of the target collection.
|
|
QueryExpression
|
string
|
"select * from sms_r_system"
|
A WQL query that returns resources that will then belong to the collection.
|
|
QueryID
|
uint32
|
1
|
An autogenerated key. This property is only useful when you are deleting a rule.
|
|
RuleName
|
string
|
"All Systems"
|
Indicates the name of the collection rule.
|
Package Object Type
Packages are the basic units of software distribution; they include programs and the source files required to run the programs.
Table B.9 Package Object Type (SMS_Package)
|
Property
|
Data type
|
Example
|
Notes
|
|
ActionInProgress
|
uint32
|
0
|
Indicates the current action that SMS performs on the package.Values are:0=NONE1=UPDATE2=ADD3=DELETE
|
|
Description
|
string
|
|
Provides the long description of the package.
|
|
ForcedDisconnectDelay
|
uint32
|
0
|
Indicates the time, in minutes, that SMS waits before forcibly disconnecting users from the package source file share.
|
|
ForcedDisconnectEnabled
|
Boolean
|
FALSE
|
Indicates whether SMS forcibly disconnects users from the package share. This property is used when package source files are being updated.Values are:TRUEFALSEIf the value is TRUE, SMS forcibly disconnects users from the share.
|
|
ForcedDisconnectNumRetries
|
uint32
|
0
|
Indicates the number of times SMS attempts to disconnect users from package shares.
|
|
Icon[]
|
uint8
|
NULL
|
Represents an array of icon information for the package.
|
|
IconSize
|
uint32
|
3478
|
Lazy. Indicates the icon size.
|
|
IgnoreAddressSchedule
|
Boolean
|
FALSE
|
Indicates whether SMS ignores the schedule set for the sender. Values are:TRUEFALSEIf the value is TRUE, SMS ignores any schedule set for the sender.
|
|
Language
|
string
|
"English"
|
Indicates the language of the package.
|
|
LastRefreshTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the time when the package was last updated on its distribution points.
|
|
Manufacturer
|
string
|
"Microsoft"
|
Indicates the manufacturer of the package.
|
|
MIFFilename
|
string
|
"Off97*.MIF"
|
Indicates the name of the MIF file that contains the package status.
|
|
MIFName
|
string
|
|
Indicates the name of the package.
|
|
MIFPublisher
|
string
|
|
Indicates the software publisher of the package.
|
|
MIFVersion
|
string
|
|
Indicates the version number of the package.
|
|
Name
|
string
|
"Office 97"
|
Indicates the name of the package.
|
|
PackageID
|
string
|
"TTG00001"
|
Key. Represents a identifier for this package.
|
|
PkgFlags
|
uint32
|
0
|
Determines whether SMS uses special details for MIF matching.USE_SPECIAL_MIF (bit 29 = 536870912)
|
|
PkgSourceFlag
|
uint32
|
2
|
Indicates how the package source should be stored.Bit flags are:Bit 0 = STORAGE_NEEDS_SPECIFYING Bit 1 = STORAGE_NO_SOURCEBit 2 = STORAGE_DIRECTBit 3 = STORAGE_COMPRESS Bit 4 = STORAGE_LOCAL
|
|
PkgSourcePath
|
string
|
"I:\OFFICE97.95\RETAIL"
|
Indicates the full path of the actual location of the package source files.
|
|
PreferredAddressType
|
string
|
|
Indicates the preferred sender to use for package distribution.Values are:ADDR_NONE()ADDR_LAN (MS_LAN)ADDR_MAPI (MS_MAPI)ADDR_RAS _ASYNC (MS_ASYNC_RAS)ADDR_RAS_ISDN (MS_ISDN_RAS)ADDR_RAS_X25 (MS_X25_RAS)ADDR_RAS_SNA (MS_SNA_RAS)ADDR_SNA_BATCH(MS_BATCH_SNA)ADDR_SNA_INTER (MS_INTER_SNA)ADDR_COURIER (MS_COURIER)
|
|
Priority
|
uint32
|
2
|
Indicates the sending priority of the package.Values are:1=HIGH2=NORMAL3=LOW
|
|
RefreshPkgSourceFlag
|
Boolean
|
FALSE
|
Lazy. Causes a refresh of the package source files if set to TRUE.Values are:TRUEFALSE
|
|
RefreshSchedule[]
|
SMS_Schedule_token
|
NULL
|
Lazy. An embedded array of SMS_Schedule_Tokens that define when SMS updates the package on distribution points.
|
|
ShareName
|
string
|
|
Indicates the name of the share that SMS offers the package from.
|
|
ShareType
|
uint32
|
1
|
Indicates the type of share used when sharing the package, either based from a common SMS package, or an individual package share. Values are:1= SHARE_COMMON 2= SHARE_SPECIFIC
|
|
SourceDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Date when the SourceVersion was changed.
|
|
SourceSite
|
string
|
"TTG"
|
Indicates the site code of the originating site.
|
|
SourceVersion
|
uint32
|
1
|
Version number of the source.
|
|
StoredPkgPath
|
string
|
"\\\\GREEN1\\SMS_CPSE$\\GRN00002.PCK"
|
Indicates the full path to the location where SMS stores the package.
|
|
StoredPkgVersion
|
uint32
|
0
|
Indicates the version number of the stored package. Packages are given a 1.0 version when stored, and this number is incremented by 1 at each update.
|
|
Version
|
string
|
"6.0"
|
Indicates the version of the software in the package.
|
Package Access By Users
This class contains information on user rights to operate on packages.
Table B.10 Package Access by Users (SMS_PackageAccessByUsers)
|
Property
|
Data type
|
Example
|
Notes
|
|
Access
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates types of user access to this package.Bit flags are:Bit 0 = READBit 1 = WRITEBit 2 = EXECUTEBit 3 = CREATEBit 4 = DELETEBit 5 = VIEW_FOLDERSBit 6 = VIEW_FILESBit 7 = CHANGE_PERMISSIONSBit 8 = CHANGE_ATTRIBUTES
|
|
PackageID
|
string
|
"GRN00002"
|
The ID of the package the user has authority to modify.
|
|
UserName
|
string
|
"[\"Display=Administrators\"]GENERIC:GROUP=Administrators"
|
The username of the person authorized to modify the package.
|
Program Object Type
The Program object represents an SMS program.
Table B.11 Program Object Type (SMS_Program)
|
Property
|
Data type
|
Example
|
Notes
|
|
ApplicationHierarchy
|
string
|
|
|
|
CommandLine
|
string
|
"setup.exe/QN1 /B2"
|
Indicates the command line that is executed when the program is run.
|
|
Comment
|
string
|
"Any comment"
|
Indicates a comment on the program.
|
|
DependentProgram
|
string
|
"ABC0001;;Setup"
|
Defines any program that should be run before the current program runs. The format is defined as 'Package ID;;Program Name'.
|
|
Description
|
string
|
"Custom installation"
|
Describes the program.
|
|
DiskSpaceReq
|
string
|
"0"
|
Indicates the approximate disk space the program requires.
|
|
DriveLetter
|
string
|
"x"
|
Indicates the drive letter that the program maps and runs from when it is run.
|
|
Duration
|
uint32
|
2
|
Indicates the approximate amount of time, in minutes, that the program takes to run.
|
|
Icon[]
|
uint8
|
NULL
|
Represents an array of icon information related to the program.
|
|
IconSize
|
uint32
|
0
|
Lazy. Indicates the icon size.
|
|
PackageID
|
string
|
"TTG00001"
|
Provides the PackageId of a pre-existing package that this program is associated with.
|
|
ProgramFlags
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates the status of the program.Bit flags are:Bit 12 = DISABLEDBit 13 = UNATTENDEDBit 14 = USERCONTEXTBit 15 = ADMINRIGHTSBit 16 = EVERYUSERBit 17 = NOUSERLOGGEDIN Bit 18 = OKTOQUITBit 19 = OKTOREBOOTBit 20 = USEUNCPATHBit 21 = PERSISTCONNECTIONBit 22 = RUNMINIMIZEDBit 23 = RUNMAXIMIZEDBit 24 = HIDEWINDOW Bit 25 = OKTOLOGOFF Bit 26 = RUNACCOUNT Bit 27 = ANY_PLATFORM Bit 28 = STILL_RUNNINGBit 29 = SUPPORT_UNINSTALL
|
|
ProgramName
|
string
|
"Custom installation"
|
Represents the program name with a required, unique text string.
|
|
RemovalKey
|
string
|
"IE40"
|
Indicates the registry key that contains the uninstall script for the program. This script is invoked for a client when the last advertisement containing this program is revoked from the client.
|
|
Requirements
|
string
|
"Any comment."
|
Describes any additional requirements of the program.
|
|
SupportedOperatingSystems[]
|
SMS_OS_Details
|
|
Lazy. An array of SMS_OS_Details that describe certain specified platforms that the program can run on.
|
|
WorkingDirectory
|
string
|
"i386"
|
Indicates an executable directory for the program.
|
Supported Platforms
This class is used to map a platform listed by SMS_OS_Details to a descriptive name.
Table B.12 Supported Platforms (SMS_SupportedPlatforms)
|
Property
|
Data type
|
Example
|
Notes
|
|
DisplayText
|
string
|
"All x86 NT 5.0 Clients"
|
The friendly name of this platform. Will be used if the resource string does not exist.
|
|
OSMaxVersion
|
string
|
"5.00.9999.9999"
|
Key. The name of the highest version number in this range for this platform. The value 99.99.9999.9999 represents all future versions.
|
|
OSMinVersion
|
string
|
"5.00.0000.0"
|
Key. The name of the lowest version number in the range for this platform. The value 0.00.0000.0 represents all previous versions.
|
|
OSName
|
string
|
"Win NT"
|
Key. The name of the operating system for this platform.
|
|
OSPlatform
|
string
|
"I 386"
|
Key. The name of the machine architecture for this platform.
|
|
ResourceDll
|
string
|
"baserc.dll"
|
The name of the resource DLL that contains the localized name of this platform.
|
|
StringId
|
uint32
|
5051
|
The string identifier in the resource DLL that contains the localized name of this platform.
|
Distribution Point
The SMS_DistributionPoint class describes a location from which a package can be distributed to clients. It is always associated with a particular package, and a package can have several distribution points.
Table B.13 Distribution Point (SMS_DistributionPoint)
|
Property
|
Data type
|
Example
|
Notes
|
|
LastRefreshTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The time that the package was last updated on the distribution server.
|
|
PackageID
|
string
|
"GRN00002"
|
Key. The PackageID of the package that will reside on the distribution server.
|
|
RefreshNow
|
Boolean
|
FALSE
|
This property, when set to true, will signal SMS to update the package on the distribution server.Values are:TRUEFALSE
|
|
ServerNALPath
|
string
|
Appears as a lengthy string.
|
Key. The Network Access Layer (NAL) path to the distribution point server.
|
|
SiteCode
|
string
|
"GRN"
|
Key. The site code of the site the package originated from. Size limit 3.
|
|
SiteName
|
string
|
"Wide World Importers"
|
A plain text string that contains a friendly name of the site the package originated from.
|
|
SourceSite
|
string
|
"GRN"
|
Indicates the three-letter designation of the source site.
|
|
Status
|
uint32
|
0
|
The current status of the package on the distribution point. Values are:0 = NONE1 = UPDATED2 = ADDED3 = DELETED
|
Distribution Point Group
The SMS Administrator console uses this class to store an array of Network Access Layer (NAL) paths under a given name for later use.
Table B.14 Distribution Point Group (SMS_DistributionPointGroup)
|
Property
|
Data type
|
Example
|
Notes
|
|
arrNALPath[]
|
string
|
|
Array of NAL paths.
|
|
sGroupName
|
string
|
|
Key. Name of distribution point group.
|
Collections and Subcollections
This class associates a parent collection with a child collection. See also SMS_CollectToSubCollect_a, which is a similar association class.
Table B.15 Collections and Subcollections (SMS_CollectToSubCollect)
|
Property
|
Data type
|
Example
|
Notes
|
|
parentCollectionID
|
string
|
"SMS00003"
|
Key. The unique ID of the parent collection.
|
|
SubCollectionID
|
string
|
"SMS00004"
|
Key. The unique ID of the parent's child collection.
|
PDF File Handling Classes
These classes describe SMS package definition files (PDFs).
PDF Package
The SMS_PDF_Package class represents a template from which packages can be created. The packages will be initialized with the data from the package definition file (PDF).
Table B.16 PDF Package (SMS_PDF_Package)
|
Property
|
Data type
|
Example
|
Notes
|
|
Icon[]
|
uint8
|
|
Lazy. Array of icon data.
|
|
IconSize
|
uint32
|
0
|
Lazy. Indicates the size of the icon.
|
|
Language
|
string
|
"English"
|
Indicates the language of the package.
|
|
Name
|
string
|
"NT Event to SNMP Trap Configuration Modification Tool"
|
Indicates the display name of the package.
|
|
PDFFileName
|
string
|
"eventcmt"
|
Indicates the PDF name. Size limit 100.
|
|
PDFID
|
uint32
|
1
|
Key. This is the ID number of the PDF.
|
|
Publisher
|
string
|
"Microsoft"
|
Indicates the publisher of the package.
|
|
RequiredIconNames[]
|
string
|
|
Lazy. An array of icons still required to be loaded.
|
|
Status
|
uint32
|
|
Lazy. Load status of the PDF. Values are:0 = Loaded1 = RequiresIcon
|
|
Version
|
string
|
"2.0"
|
Indicates the version number of the package.
|
PDF Program
The SMS_PDF_Program class represents a template from which programs can be created. The programs will be initialized with the data from the package definition file (PDF).
Table B.17 PDF Program (SMS_PDF_Program)
|
Property
|
Data type
|
Example
|
Notes
|
|
CommandLine
|
string
|
"winnt.exe /b /S:."
|
Indicates the command to run to install this package.
|
|
Comment
|
string
|
"Any comment."
|
Any explanatory comment.
|
|
DependentProgram
|
string
|
|
A formatted text string that defines any program that must be run prior to execution of the current program. The format is defined as: <PackageID>;; <ProgramName>.
|
|
Description
|
string
|
"Manual upgrade from Win 95"
|
Indicates the friendly name of the program.
|
|
DiskSpaceReq
|
string
|
"50 MB"
|
The approximate disk space the program will require.
|
|
DriveLetter
|
string
|
|
Size limit 1. Range: a-z.
|
|
Duration
|
uint32
|
30
|
Indicates the estimated time in minutes to run the program.
|
|
Icon[]
|
uint8
|
|
Lazy. Array of icon data.
|
|
IconSize
|
uint32
|
0
|
Lazy. Indicates the size of the icon.
|
|
PDFID
|
uint32
|
7
|
Key. Indicates the ID number of the package associated with this program.
|
|
ProgramFlags
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates the status of the program.Bit flags are:Bit 12 = DISABLEDBit 13 = UNATTENDEDBit 14 = USERCONTEXTBit 15 = ADMINRIGHTSBit 16 = EVERYUSERBit 17 = NOUSERLOGGEDIN Bit 18 = OKTOQUITBit 19 = OKTOREBOOTBit 20 = USEUNCPATHBit 21 = PERSISTCONNECTIONBit 22 = RUNMINIMIZEDBit 23 = RUNMAXIMIZEDBit 24 = HIDEWINDOW Bit 25 = OKTOLOGOFF Bit 26 = RUNACCOUNT Bit 27 = ANY_PLATFORM Bit 28 = STILL_RUNNINGBit 29 = SUPPORT_UNINSTALL
|
|
ProgramName
|
string
|
"Manual upgrade from Win 95"
|
Key. Indicates the friendly name of the program.
|
|
Publisher
|
string
|
"Microsoft"
|
Publisher of the program.
|
|
Requirements
|
string
|
"Any comment."
|
Can be any explanatory comment.
|
|
WorkingDirectory
|
string
|
"i386"
|
Indicates the name of the directory where the package resides.
|
Associations and Relational Classes
The association and relational classes provide links between related objects. This device permits an SMS object to be linked to any number of other objects, such as a collection being linked to an advertisement as well as to multiple subcollections.
Most of the association objects contain only two properties. Both properties reference an SMS object and both properties are indexed (for rapid database searching). The association object forms a two-way link between the two SMS objects.
These classes can be queried, but there is little reason to do so. They contain no information beyond what is already present in the objects that they associate.
Base Association
SMS_BaseAssociation is the empty, abstract base class for all SMS association classes. It has no properties of its own.
Advertisement to Source Site
This object links an SMS Advertisement with its original SMS Source Site.
Table B.18 Advertisement to Source Site (SMS_AdvertToSourceSite_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
AdvertSourceSite
|
SMS_Siteref
|
Appears as a lengthy string.
|
Key. Indicates the source site.
|
|
OwnedAdvert
|
SMS_Advertisement ref
|
Appears as a lengthy string.
|
Key. Indicates the advertisement.
|
Collection Membership
This class associates a resource (an SMS client) with a collection. The resource is a member of the collection.
Table B.19 Collection Membership (SMS_CollectionMember_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Collection
|
SMS_Collection ref
|
Appears as a lengthy string.
|
Key. Indicates the collection object.
|
|
CollectionID
|
string
|
"SMS00001"
|
The ID of the collection.
|
|
Domain
|
string
|
"GREEN1DOM"
|
Indicates the domain of the member resource.
|
|
IsAssigned
|
Boolean
|
TRUE
|
Indicates whether the client is within the site boundaries.Values are:TRUEFALSE
|
|
IsClient
|
Boolean
|
TRUE
|
Indicates whether client software is installed.Values are:TRUEFALSE
|
|
IsDirect
|
Boolean
|
FALSE
|
Indicates that the client is a member through a direct rule (SMS_CollectionRuleDirect).Values are:TRUEFALSE
|
|
Name
|
string
|
"GREEN1"
|
Indicates the name of the member resource.
|
|
Resource
|
SMS_Resource ref
|
Appears as a lengthy string.
|
Key. Indicates the resource object.
|
|
ResourceID
|
uint32
|
1
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
ResourceType
|
uint32
|
5
|
Indicates the resource type. Values are:3 = User Group4 = User5 = System6 = IP network There are currently no defined values outside of this range.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
SMSID
|
string
|
Appears as a lengthy string.
|
The SMS unique identifier of the member resource.
|
Collection to Package Advertisement
This class associates an advertisement with its target collection.
Table B.20 Collection to Package Advertisement (SMS_CollectionToPkgAdvert_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Advert
|
SMS_Advertisement ref
|
Appears as a lengthy string.
|
Key. Indicates the advertisement.
|
|
Collection
|
SMS_Collection ref
|
Appears as a lengthy string.
|
Key. Indicates the collection.
|
Collection to Subcollection
This association class links parent collections with child collections. See also the similar class, SMS_CollectToSubCollect.
Table B.21 Collection to Subcollection (SMS_CollectToSubCollect_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
ParentCollection
|
SMS_Collection ref
|
Appears as a lengthy string.
|
Key. Identifies the parent collection.
|
|
SubCollection
|
SMS_Collection ref
|
Appears as a lengthy string.
|
Key. Identifies the child collection.
|
Object to Class Permissions
This class associates a secured object to the set of class permissions permitted for that object.
Table B.22 Object to Class Permissions (SMS_ObjectToClassPermissions_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
ClassPermissions
|
SMS_UserClassPermissions ref
|
Appears as a lengthy string.
|
Key. Identifies the set of class permissions available to users.
|
|
Object
|
SMS_SecuredObject ref
|
Appears as a lengthy string.
|
Key. Indicates the secured object.
|
Object to Instance Permissions
This class associates a secured object to the set of instance permissions permitted for that object.
Table B.23 Object to Instance Permissions (SMS_ObjectToInstancePermissions_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
InstancePermissions
|
SMS_UserInstancePermissions ref
|
Appears as a lengthy string.
|
Key. Identifies the set of instance permissions available to users.
|
|
Object
|
SMS_SecuredObject ref
|
Appears as a lengthy string.
|
Key. Indicates the secured object.
|
Package to Advertisement
This class establishes a two-way link between an SMS Package and an SMS Advertisement.
Table B.24 Package to Advertisement (SMS_PackageToAdvert_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Advert
|
SMS_Advertisement ref
|
Appears as a lengthy string.
|
Key. Indicates the advertisement.
|
|
Package
|
SMS_Package ref
|
Appears as a lengthy string.
|
Key. Indicates the package.
|
Package to Source Site
This class creates a two-way link between an SMS Package and its SMS Site of origin.
Table B.25 Package to Source Site (SMS_PackageToSourceSite_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
OwnedPackage
|
SMS_Package ref
|
Appears as a lengthy string.
|
Key. Indicates the package.
|
|
PkgSourcesite
|
SMS_Site ref
|
Appears as a lengthy string.
|
Key. Indicates the source site.
|
PDF Package to PDF Program
This class establishes two-way links among PDF packages and PDF programs.
Table B.26 PDF Package to PDF Program (SMS_PDFPkgToPDFProgram_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
PDF_Package
|
SMS_PDF_Package ref
|
Appears as a lengthy string.
|
Key. Indicates the PDF Package.
|
|
PDF_Program
|
SMS_PDF_Program ref
|
Appears as a lengthy string.
|
Key. Indicates the PDF Program.
|
Package to Package Access by Users
This object associates an SMS Package with a user who has one or more access permissions for the package.
Table B.27 Package to Package Access by Users (SMS_PkgToPkgAccess_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Package
|
SMS_Package ref
|
Appears as a lengthy string.
|
Key. Indicates the package object.
|
|
PkgAccess
|
SMS_PackageAccessByUsers ref
|
Appears as a lengthy string.
|
Key. Indicates an object containing the package permissions that are associated with a specific user.
|
Package to Package Program
This class associates a package with its program.
Table B.28 Package to Package Program (SMS_PkgToPkgProgram_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Package
|
SMS_Package ref
|
Appears as a lengthy string.
|
Key. Indicates the SMS Package object.
|
|
PkgProgram
|
SMS_Program ref
|
Appears as a lengthy string.
|
Key. Indicates the SMS Program object.
|
Package to Package Server
This class associates an SMS Package with the package server.
Table B.29 Package to Package Server (SMS_PkgToPkgServer_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Package
|
SMS_Package ref
|
Appears as a lengthy string.
|
Key. Indicates the SMS Package object.
|
|
PkgServer
|
SMS_DistributionPoint ref
|
Appears as a lengthy string.
|
Key. Indicates the package distribution point server.
|
Site to Root Collection
This class associates an SMS Site with the root collection for that site.
Table B.30 Site to Root Collection (SMS_SiteToROOTColl_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Site
|
SMS_Site ref
|
Appears as a lengthy string.
|
Key. Indicates the SMS Site object.
|
|
Collection
|
SMS_Collection ref
|
Appears as a lengthy string.
|
Key. Indicates the root collection.
|
Site to Site ID
This class associates an SMS Site with information about the version of SMS installed at that site.
Table B.31 Site to Site ID (SMS_SiteToSiteID_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
Site
|
SMS_Site ref
|
Appears as a lengthy string.
|
Key. Indicates the SMS Site object.
|
|
SiteIdentification
|
SMS_Identification ref
|
Appears as a lengthy string.
|
Key. Indicates the identification object, which contains SMS version information.
|
Site to Subsite
This class associates SMS child sites with parent sites.
Table B.32 Site to Subsite (SMS_SiteToSubSite_a)
|
Property
|
Data type
|
Example
|
Notes
|
|
ChildSite
|
SMS_Site ref
|
Appears as a lengthy string.
|
Key. Indicates the child site object.
|
|
ParentSite
|
SMS_Site ref
|
Appears as a lengthy string.
|
Key. Indicates the parent site object.
|
Scheduling Classes
The Scheduling Classes organize scheduled SMS events, such as inventory updates. These classes cannot be directly queried from the Query Builder interface and are not available to Crystal Reports. They are available only through programming.
Schedule Token
The SMS_ScheduleToken class is an abstract, embedded parent class of other classes that handle the scheduling of events with differing frequencies, such as daily, weekly, and monthly. You will see SMS_ScheduleToken in array properties of other classes in this category. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.33 Schedule Token (SMS_ScheduleToken)
|
Property
|
Data type
|
Example
|
Notes
|
|
DayDuration
|
uint32
|
0
|
Contains the number of days during which the scheduled action occurs. Allowable values are in the range 0-31. A value of 0 indicates that the scheduled action continues indefinitely.
|
|
HourDuration
|
uint32
|
1
|
Contains the number of hours during which the scheduled action occurs. Allowable values are in the range 0-23.
|
|
IsGMT
|
Boolean
|
FALSE
|
Indicates whether the scheduled time is expressed in GMT. TRUE if the time is in GMT, FALSE if the time is in local time.Values are:TRUEFALSE
|
|
MinuteDuration
|
uint32
|
0
|
Contains the number of minutes during which the scheduled action occurs. Allowable values are in the range 0-59.
|
|
StartTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The date and time on which the scheduled action takes place.
|
Non-Recurring Event
Instances of this embedded class represent scheduled events that occur only once. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.34 Non-Recurring Event (SMS_ST_NonRecurring)
|
Property
|
Data type
|
Example
|
Notes
|
|
DayDuration
|
uint32
|
0
|
Contains the number of days during which the scheduled action occurs. Allowable values are in the range 0-31. A value of 0 indicates that the scheduled action continues indefinitely.
|
|
HourDuration
|
uint32
|
1
|
Contains the number of hours during which the scheduled action occurs. Allowable values are in the range 0-23.
|
|
IsGMT
|
Boolean
|
FALSE
|
Indicates whether the scheduled time is expressed in GMT. TRUE if the time is in GMT, FALSE if the time is in local time.Values are:TRUEFALSE
|
|
MinuteDuration
|
uint32
|
0
|
Contains the number of minutes during which the scheduled action occurs. Allowable values are in the range 0-59.
|
|
StartTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The date and time on which the scheduled action takes place.
|
Recur at Interval
This embedded class describes an event that recurs at a fixed time interval. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.35 Recur at Interval (SMS_ST_RecurInterval)
|
Property
|
Data type
|
Example
|
Notes
|
|
DayDuration
|
uint32
|
0
|
Contains the number of days during which the scheduled action occurs. Allowable values are in the range 0-31. A value of 0 indicates that the scheduled action continues indefinitely.
|
|
DaySpan
|
uint32
|
0
|
Range 0-31. The number of days between scheduled events.
|
|
HourDuration
|
uint32
|
1
|
Contains the number of hours during which the scheduled action occurs. Allowable values are in the range 0-23.
|
|
HourSpan
|
uint32
|
1
|
Range 0-23. The number of hours between scheduled events.
|
|
IsGMT
|
Boolean
|
FALSE
|
Indicates whether the scheduled time is expressed in GMT. TRUE if the time is in GMT, FALSE if the time is in local time.Values are:TRUEFALSE
|
|
MinuteDuration
|
uint32
|
0
|
Contains the number of minutes during which the scheduled action occurs. Allowable values are in the range 0-59.
|
|
MinuteSpan
|
uint32
|
0
|
Range 0-59. The number of minutes between scheduled events.
|
|
StartTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The date and time on which the scheduled action takes place.
|
Recur Monthly by Date
This embedded class is derived from SMS_ScheduleToken and describes an event that recurs once per month on a specific date. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.36 Recur Monthly by Date (SMS_ST_RecurMonthlyByDate )
|
Property
|
Data type
|
Example
|
Notes
|
|
DayDuration
|
uint32
|
0
|
Contains the number of days during which the scheduled action occurs. Allowable values are in the range 0-31. A value of 0 indicates that the scheduled action continues indefinitely.
|
|
ForNumberOfMonths
|
uint32
|
1
|
Range 1-12. Indicates the number of months between events. A value of 2 means "every other month."
|
|
HourDuration
|
uint32
|
1
|
Contains the number of hours during which the scheduled action occurs. Allowable values are in the range 0-23.
|
|
IsGMT
|
Boolean
|
FALSE
|
Indicates whether the scheduled time is expressed in GMT. TRUE if the time is in GMT, FALSE if the time is in local time.Values are:TRUEFALSE
|
|
MinuteDuration
|
uint32
|
|
Contains the number of minutes during which the scheduled action occurs. Allowable values are in the range 0-59.
|
|
MonthDay
|
uint32
|
10
|
Range 0-31. Day of month. Zero (0) is the last day of the month, regardless of its date.
|
|
StartTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The date and time on which the scheduled action takes place.
|
Recur Monthly by Weekday
This embedded class is derived from SMS_ScheduleToken and describes an event that recurs once per month on a specific day of a specific week. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.37 Recur Monthly by Weekday (SMS_ST_RecurMonthlyByWeekday)
|
Property
|
Data type
|
Example
|
Notes
|
|
Day
|
uint32
|
1
|
Indicates that the event occurs on a specific day of the week.Values are:1=SUNDAY2=MONDAY3=TUESDAY4=WEDNESDAY5=THURSDAY6=FRIDAY7=SATURDAY
|
|
DayDuration
|
uint32
|
0
|
Contains the number of days during which the scheduled action occurs. Allowable values are in the range 0-31. A value of 0 indicates that the scheduled action continues indefinitely.
|
|
ForNumberOfMonths
|
uint32
|
1
|
Range 1-12. Indicates the number of months between events. A value of 2 means "every other month."
|
|
HourDuration
|
uint32
|
1
|
Contains the number of hours during which the scheduled action occurs. Allowable values are in the range 0-23.
|
|
IsGMT
|
Boolean
|
FALSE
|
Indicates whether the scheduled time is expressed in GMT. TRUE if the time is in GMT, FALSE if the time is in local time.Values are:TRUEFALSE
|
|
MinuteDuration
|
uint32
|
|
Contains the number of minutes during which the scheduled action occurs. Allowable values are in the range 0-59.
|
|
StartTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The date and time on which the scheduled action takes place.
|
|
WeekOrder
|
uint32
|
1
|
Indicates which week of the months the event should occur in.Values are:0 = LAST1 = FIRST2 = SECOND3 = THIRD4 = FOURTH
|
Recur Weekly
This embedded class is derived from SMS_ScheduleToken and describes an event that recurs once per week on a specific day. This class cannot be directly queried from the Query Builder interface and is not available to Crystal Reports. It is available only through programming.
Table B.38 Recur Weekly (SMS_ST_RecurWeekly)
|
Property
|
Data type
|
Example
|
Notes
|
|
Day
|
uint32
|
7
|
Indicates that the event occurs on a specific day of the week.Values are:1=SUNDAY2=MONDAY3=TUESDAY4=WEDNESDAY5=THURSDAY6=FRIDAY7=SATURDAY
|
|
DayDuration
|
uint32
|
|
Contains the number of days during which the scheduled action occurs. Allowable values are in the range 0-31. A value of 0 indicates that the scheduled action continues indefinitely.
|
|
ForNumberOfWeeks
|
uint32
|
2
|
Range 1-4. Range 1-12. Indicates the number of months between events. A value of 2 means "every other week."
|
|
HourDuration
|
uint32
|
1
|
Contains the number of hours during which the scheduled action occurs. Allowable values are in the range 0-23.
|
|
IsGMT
|
Boolean
|
FALSE
|
Indicates whether the scheduled time is expressed in GMT. TRUE if the time is in GMT, FALSE if the time is in local time.Values are:TRUEFALSE
|
|
MinuteDuration
|
uint32
|
|
Contains the number of minutes during which the scheduled action occurs. Allowable values are in the range 0-59.
|
|
StartTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
The date and time on which the scheduled action takes place.
|
Site Classes
Site classes contain information about SMS sites.
Site
The Site object type, a resource class, consists of a single attribute class, SMS_Site, with attributes representing an SMS site.
Table B.39 Site (SMS_Site)
|
Property
|
Data type
|
Example
|
Notes
|
|
BuildNumber
|
uint32
|
1065
|
Provides the SMS build number.
|
|
InstallDir
|
string
|
"C:\SMS"
|
Indicates the directory that SMS was installed to.
|
|
ReportingSiteCode
|
string
|
"ABC"
|
Indicates the site code for the parent site.
|
|
RequestedStatus
|
uint32
|
1
|
Indicates the secondary site status. Use this property to create and upgrade secondary sites.Values are:1001=SEC_REQUEST_CREATE1002=SEC_REQUEST_CREATE_CD 1003=SEC_CREATION_STARTED 1004=SEC_REQUEST_UPGRADE1005=SEC_REQUEST_UPGRADE_CD 1006=SEC_UPGRADE_STARTED 1007=SEC_REQUEST_DEINSTALL 1008=SEC_DEINSTALL_STARTED
|
|
ServerName
|
string
|
"BARACUDA"
|
Indicates the server name of the site that SMS is installed on.
|
|
SiteCode
|
string
|
"TTG"
|
Indicates the three-letter site code for the site.
|
|
SiteName
|
string
|
"SMS TEST"
|
Indicates the name of the site.
|
|
Status
|
uint32
|
1
|
Indicates the current status of the site.Values are:1=ACTIVE2=PENDING3=FAILED 4=DELETED 5=UPGRADE
|
|
TimeZoneInfo
|
string
|
Appears as a lengthy string.
|
The site server time zone represented as a Win32 TIME_ZONE_INFORMATION structure returned by Win32 GetTimeZoneInformation.
|
|
Type
|
uint32
|
2
|
Indicates the type of site.Values are:1=SECONDARY2=PRIMARY
|
|
Version
|
string
|
"2.0"
|
Indicates the SMS version running on the current site.
|
Setup Information
This class contains information concerning the physical setup and installation of SMS. It is a generic object used to hold six different kinds of information. See Table B.41 of example values for more information.
Table B.40 Setup Information (SMS_SetupInfo)
|
Property
|
Data type
|
Example
|
Notes
|
|
Id
|
string
|
See the following table for example values used in this class.
|
Key. Indicates the type of information stored in this instance of SMS_SetupInfo.Values are:INSTALLDIRSITESERVERSITECODEVERSIONCINFOSCIACCTSee the following table for example values associated with each of these types.
|
|
String1
|
string
|
|
Semantics of this string depend on context.
|
|
String2
|
string
|
|
Semantics of this string depend on context.
|
|
Value1
|
sint32
|
|
Semantics of this integer depend on context.
|
|
Value2
|
sint32
|
|
Semantics of this integer depend on context.
|
Table B.41 Example Values Used in SMS_SetupInfo
|
Id
|
String1
|
String2
|
Value1
|
Value2
|
|
"INSTALLDIR"
|
"E:\SMS"
|
"GRN"
|
0
|
0
|
|
"SITESERVER"
|
"GREEN1"
|
"GRN"
|
1
|
0
|
|
"SITECODE"
|
"GRN"
|
"GRN"
|
0
|
0
|
|
"VERSION"
|
"1195"
|
"Build Number"
|
0
|
0
|
|
"CINFO"
|
"GREEN1"
|
"SMS Sample Reports"
|
0
|
0
|
|
"SCIACCT"
|
"Administrator"
|
""
|
0
|
0
|
Identification
This class describes the SMS software installed at a site.
Table B.42 Identification (SMS_Identification)
|
Property
|
Data type
|
Example
|
Notes
|
|
LocaleID
|
uint32
|
1033
|
|
|
ServiceAccountName
|
string
|
"GREEN1DOM\SMS Service"
|
Indicates the account that SMS runs under on the server.
|
|
SMSBuildNumber
|
uint32
|
1195
|
Provides the SMS build number.
|
|
SMSMinBuildNumber
|
uint32
|
800
|
|
|
SMSProviderServer
|
string
|
"GREEN1"
|
Indicates the name of the server running the SMS Provider.
|
|
SMSSiteServer
|
string
|
"GREEN1"
|
Indicates the name of the SMS site server.
|
|
SMSVersion
|
string
|
"v2.0"
|
Indicates the release version of SMS.
|
|
ThisSiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
ThisSiteName
|
string
|
"Wide World Importers"
|
Indicates the friendly name of the SMS site.
|
System Resource List
Table B.43 System Resource List (SMS_SystemResourceList)
|
Property
|
Data type
|
Example
|
Notes
|
|
NALPath
|
string
|
Appears as a lengthy string.
|
Key. Indicates the Network Access Layer (NAL) path.
|
|
ResourceType
|
string
|
"Windows NT Server"
|
Key. Indicates the type of system resource. Note that in SMS_SystemResourceList the ResourceType property is defined as a string, unlike most SMS objects where it is defined as a uint32 with enumerated values.
|
|
RoleName
|
string
|
"SMS SQL Server"
|
Key.
|
|
ServerName
|
string
|
"PURPLE1"
|
|
|
SiteCode
|
string
|
"PUR"
|
Indicates the three-letter site code for the site.
|
Security Classes
The SMS Security Classes describe the permissions granted to users and user groups to operate on specific SMS secured objects, such as programs and packages.
Security Object
The SMS_SecuredObject class describes six different types of objects in the SMS system that can be secured. Those objects are Collection, Package, Advertisement, Status Message, Site, and Query.
Table B.44 Security Object (SMS_SecuredObject)
|
Property
|
Data type
|
Example
|
Notes
|
|
ObjectKey
|
uint32
|
1
|
Key. Indicates the class of objects to which the permissions apply.Values are:1 = Collection2 = Package3 = Advertisement4 = Status Message5 =(Reserved for future use)6 = Site7 = Query
|
|
ObjectName
|
string
|
"SMS_Collection"
|
Class name of secured object.
|
|
DefaultClassPermissions
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates default global permissions. Bit flags are: 0 = READ1 = MODIFY2 = DELETE3 = DISTRIBUTE4 = CREATE_CHILD5 = REMOTE_CONTROL6 = ADVERTISE7 = MODIFY_RESOURCE8 = ADMINISTER9 = DELETE_RESOURCE10 = CREATE11 = VIEW_COLL_FILE12 = READ_RESOURCE
|
|
DefaultInstancePermissions
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates default instance permissions. Bit flags are: 0 = READ1 = MODIFY2 = DELETE3 = DISTRIBUTE4 = CREATE_CHILD5 = REMOTE_CONTROL6 = ADVERTISE7 = MODIFY_RESOURCE8 = ADMINISTER9 = DELETE_RESOURCE10 = CREATE11 = VIEW_COLL_FILE12 = READ_RESOURCE
|
|
AvailableClassPermissions
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates available global permissions. Bit flags are: 0 = READ1 = MODIFY2 = DELETE3 = DISTRIBUTE4 = CREATE_CHILD5 = REMOTE_CONTROL6 = ADVERTISE7 = MODIFY_RESOURCE8 = ADMINISTER9 = DELETE_RESOURCE10 = CREATE11 = VIEW_COLL_FILE12 = READ_RESOURCE
|
|
AvailableInstancePermissions
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates available instance permissions. Bit Flags are: 0 = READ1 = MODIFY2 = DELETE3 = DISTRIBUTE4 = CREATE_CHILD5 = REMOTE_CONTROL6 = ADVERTISE7 = MODIFY_RESOURCE8 = ADMINISTER9 = DELETE_RESOURCE10 = CREATE11 = VIEW_COLL_FILE12 = READ_RESOURCE
|
Security User Class Permissions
This class contains information about specific user who has been granted a set of permissions to operate on one class of SMS objects.
Table B.45 Security User Class Permissions (SMS_UserClassPermissions)
|
Property
|
Data type
|
Example
|
Notes
|
|
ClassPermissions
|
int32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates available class permissions.Bit flags are: 0 = READ1 = MODIFY2 = DELETE3 = DISTRIBUTE4 = CREATE_CHILD5 = REMOTE_CONTROL6 = ADVERTISE7 = MODIFY_RESOURCE8 = ADMINISTER9 = DELETE_RESOURCE10 = CREATE11 = VIEW_COLL_FILE12 = READ_RESOURCE
|
|
ObjectKey
|
uint32
|
7
|
Key. Indicates the class of objects to which the permissions apply.Values are:1 = Collection2 = Package3 = Advertisement4 = Status Message5 =(Reserved for future use)6 = Site7 = Query
|
|
UserName
|
string
|
"GREEN1DOM\\Administrator"
|
Key. Indicates the user who has been granted these permissions.
|
Security User Instance Permissions
The SMS_UserInstancePermissions class lists all the permissions granted to a user for specific instances of secured classes.
Table B.46 Security User Instance Permissions (SMS_UserInstancePermissions)
|
Property
|
Data type
|
Example
|
Notes
|
|
InstanceKey
|
string
|
"GRN00002"
|
Key. Indicates a specific SMS object such as a package.
|
|
InstancePermissions
|
uint32
|
See "Interpreting Bitfield Properties" at the beginning of this appendix.
|
Indicates available instance permissions.Bit flags are: 0 = READ1 = MODIFY2 = DELETE3 = DISTRIBUTE4 = CREATE_CHILD5 = REMOTE_CONTROL6 = ADVERTISE7 = MODIFY_RESOURCE8 = ADMINISTER9 = DELETE_RESOURCE10 = CREATE11 = VIEW_COLL_FILE12 = READ_RESOURCE
|
|
ObjectKey
|
uint32
|
2
|
Key. Indicates the class of objects to which the permissions apply.Values are:1 = Collection2 = Package3 = Advertisement4 = Status Message5 = (Reserved)6 = Site7 = Query
|
|
UserName
|
string
|
"GREEN1DOM\\Administrator"
|
Key. Indicates the user who has been granted these permissions.
|
Security User Class Permission Names
The SMS_UserClassPermissionNames class is a list of users and the specific permissions granted to each user. This class differs from SMS_UserClassPermissions in that there is a separate instance of SMS_UserClassPermissionNames for each right granted.
Table B.47 Security User Class Permission Names (SMS_UserClassPermissionNames)
|
Property
|
Data type
|
Example
|
Notes
|
|
ObjectKey
|
uint32
|
|
Key. Indicates the class of objects to which the permissions apply.Values are:1 = Collection2 = Package3 = Advertisement4 = Status Message5 = (Reserved)6 = Site7 = Query
|
|
Permission
|
uint32
|
|
A specific permission named by this instance of the class. Example: Read
|
|
PermissionName
|
string
|
|
Key. The text version of the permission that is named. Example: Read
|
|
UserName
|
string
|
|
Key. The name of the user.
|
Security User Instance Permission Names
The SMS_UserInstancePermissionNames class lists all permissions and the permission names granted to a user for specific instances of secured classes. It differs from the SMS_UserInstancePermissions class in that there is a separate instance for each permission granted.
Table B.48 Security User Instance Permission Names (SMS_UserInstancePermissionNames)
|
Property
|
Data type
|
Example
|
Notes
|
|
ObjectKey
|
uint32
|
|
Key. Indicates the class of objects to which the permissions apply.Values are:1 = Collection2 = Package3 = Advertisement4 = Status Message5 = (Reserved)6 = Site7 = Query
|
|
UserName
|
string
|
|
Key. The name of the user.
|
|
PermissionName
|
string
|
|
Key. The text version of the permission that is named. Example: Read
|
|
InstanceKey
|
string
|
|
Key. A text value that uniquely identifies an instance of a secured object. It is the value of the key field for that instance
|
|
Permission
|
uint32
|
|
A specific permission named by this instance of the class. Example: Read
|
Query Classes
The Query Classes describe SMS site database queries.
Query
This class represents a Query object as you would encounter it in the Queries item of the SMS Administrator console.
Table B.49 Query (SMS_Query)
|
Property
|
Data type
|
Example
|
Notes
|
|
Comments
|
string
|
"Any comment."
|
A plain text string that contains any comments for the query.
|
|
Expression
|
string
|
Appears as a lengthy string.
|
The WQL text for the query.
|
|
LimitToCollectionID
|
string
|
"SMS00001"
|
The CollectionID of the collection that the query results will be limited to.
|
|
Name
|
string
|
"All Windows 95 Systems"
|
A plain text string that contains the name of the query.
|
|
QueryID
|
string
|
"SMS005"
|
Key. Identifies this query.
|
|
TargetClassName
|
string
|
"sms_r_system"
|
Indicates the type of object that will be located by the query.
|
Resource Classes
Resource classes are the classes populated when SMS discovers potential client computers, users, user groups, and other types of objects within the boundaries of the site. In Resource Explorer, they appear as part of the Hardware classes. In the Query Builder, they become part of the System Resource Object Type.
Resource
This is the abstract base class for all resources. Every resource has a ResourceID. It is used as a key to join the resource object to a large family of objects.
Table B.50 Resource (SMS_Resource)
|
Property
|
Data type
|
Example
|
Notes
|
|
ResourceID
|
uint32
|
0
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
System Resource
The System Resource class represents discovery data for System Resource objects. System Resource objects include any resource within the system that has been discovered on the network by a variety of means. A system will typically have at least an IP or IPX address and a name. Systems may include computers, printers, routers, and other hardware objects. This is a subclass of SMS_Resource.
The System Resource class can be extended programmatically, in case you want the system to collect other information about the system resources. For example, the properties collected by default do not differentiate between routers, servers, and workstations, but you can add properties that do distinguish between these computers so that you can print or display a list of all the routers or other specific kinds of hardware on your system. For information about how to extend this class, see the SMS Toolkit.
The following table presents the SMS_R_System properties you would encounter when viewing a resource as a component of a collection in the SMS Administrator console.
Table B.51 Resource (SMS_R_System)
|
Property
|
Data type
|
Example
|
Notes
|
|
AgentName[]
|
string
|
"SMS_NT_USER_GROUP_DISCOVERY_AGENT"
|
An array of the names of the SMS discovery agents that discovered the resource.
|
|
AgentSite[]
|
string
|
"RED"
|
An array of the sites from which the SMS discovery agents ran.
|
|
AgentTime[]
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
An array of the times that the SMS discovery agents discovered the resource.
|
|
Client
|
uint32
|
1
|
Indicates whether this resource is an SMS client.Values are:1 = True0 = False
|
|
IPAddresses[]
|
string
|
"172.40.90.1"
|
An array of all IP addresses associated with the current system.
|
|
IPSubnets[]
|
string
|
"172.40.90.0"
|
An array of all of the subnet masks associated with the current system.
|
|
IPXAddresses[]
|
string
|
"00002435:00C00D00765C"
|
An array of the IPX addresses of the system.
|
|
IPXNetworkNumbers[]
|
string
|
"00002435"
|
An array that lists the IPX network numbers.
|
|
LastLogonUserDomain
|
string
|
"GREEN1DOM"
|
Indicates the NT domain used by the most recent user to log on to this system.
|
|
LastLogonUserName
|
string
|
|
Indicates the name of the most recent user of the system.
|
|
MACAddresses[]
|
string
|
"00:C0:4F:86:7B:C9"
|
An array of the media access control (MAC) addresses of the system.
|
|
Name
|
string
|
"GREEN1"
|
Indicates the system name.
|
|
NetBIOSName
|
string
|
"GREEN1"
|
Indicates the NetBIOS name of the system.
|
|
OperatingSystemNameandVersion
|
string
|
"Microsoft Windows NT Advanced Server 4.0"
|
Describes the operating system.
|
|
ResourceDomainORWorkgroup
|
string
|
"GREEN1DOM"
|
Indicates this system belongs to this domain or workgroup.
|
|
ResourceId
|
uint32
|
42
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
ResourceNames[]
|
string
|
"GREEN1"
|
An array of strings making up a list of non-NetBIOS names.
|
|
ResourceType
|
uint32
|
5
|
Indicates the resource type. Values are:3 = User Group4 = User5 = System6 = IP network There are currently no defined values outside of this range.
|
|
SMSAssignedSites[]
|
string
|
"GRN"
|
An array of three-letter site codes of SMS sites the server has determined that the client computer should be assigned to, based on subnet assignment.
|
|
SMSInstalledSites[]
|
string
|
"GRN"
|
Indicates a list of three-letter site codes of SMS sites the client computer has been installed to.
|
|
SMSUniqueIdentifier
|
string
|
"GUID:C5E57120-5274-11D2-828F-00C04FAB9FB"
|
Indicates a unique identifier that always comes from the client computer. The identifier is the primary way to determine whether that computer is known to the site.
|
|
SNMPCommunityName
|
string
|
|
The SNMP Community name that is used to communicate to the device, and is intended to indicate the community of SNMP devices of which the device is a part. It can be regarded more simply as a password to access the device using SNMP.
|
|
SystemRoles[]
|
string
|
"SMS Site Server"
|
Lists the roles that the system plays during the SMS installation. This property is empty for a client system.
|
|
WindowsNTDomain
|
string
|
"GREEN1DOM"
|
If present, indicates the Windows NT domain associated with the resource.
|
User Resource
Instances of this class represent individual Windows NT user accounts (although other operating systems may be allowed in the future). This is a subclass of SMS_Resource. It is a predefined class that is dynamically generated at provider run time and therefore does not appear in the _SMSprov.mof file.
Table B.52 User Resource (SMS_R_User)
|
Property
|
Data type
|
Example
|
Notes
|
|
AgentName[]
|
string
|
"SMS_NT_USER_GROUP_DISCOVERY_AGENT"
|
An array of the names of the SMS discovery agents that discovered the resource.
|
|
AgentSite[]
|
string
|
"RED"
|
An array of the sites from which the SMS discovery agents ran.
|
|
AgentTime[]
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
An array of the times that the SMS discovery agents discovered the resource.
|
|
Name
|
string
|
"RED1DOM/Guest"
|
Indicates the name of the resource.
|
|
NetworkOperatingSystem
|
string
|
"Windows NT"
|
Indicates the name of the operating system associated with the resource.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
ResourceType
|
uint32
|
4
|
Indicates the resource type. Values are:3 = User Group4 = User5 = System 6 = IP networkThere are currently no defined values outside of this range.
|
|
SMSAssignedSites[]
|
|
|
Indicates the three-letter site codes of the SMS sites that the resource is assigned to.
|
|
UniqueUserName
|
string
|
"RED1DOM/Guest"
|
Indicates a unique user name that represents the resource.
|
|
UserName
|
string
|
"Guest"
|
Indicates the user name of the resource.
|
|
WindowsNTDomain
|
string
|
"RED1DOM"
|
Indicates the Windows NT domain associated with the resource.
|
User Group Resource
Instances of this class represent Windows NT user groups (although other operating systems may be allowed in the future). This is a subclass of SMS_Resource.
Table B.53 User Group Resource Object Type (SMS_R_UserGroup)
|
Property
|
Data type
|
Example
|
Notes
|
|
AgentName[]
|
string
|
"SMS_NT_USER_GROUP_DISCOVERY_AGENT"
|
An array of the names of the SMS discovery agents that discovered the resource.
|
|
AgentSite[]
|
string
|
"RED"
|
An array of the sites from which the SMS discovery agents ran.
|
|
AgentTime[]
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
An array of the times that the SMS discovery agents discovered the resource.
|
|
Name
|
string
|
"Domain Guests"
|
Indicates the name of the resource.
|
|
NetworkOperatingSystem
|
string
|
"Windows NT"
|
Indicates the name of the operating system associated with the resource.
|
|
ResourceID
|
uint32
|
26
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
ResourceType
|
uint32
|
3
|
Indicates the resource type. SMS default values are:3 = User Group4 = User5 = System 6 = IP networkThere are currently no defined values outside of this range.
|
|
SMSAssignedSites[]
|
|
|
Indicates the three-letter site codes of the SMS sites that the resource is assigned to.
|
|
UniqueUsergroupName
|
string
|
"RED1DOM\\Domain Guests"
|
Indicates a unique user group name that represents the resource.
|
|
UsergroupName
|
string
|
"Domain Guests"
|
Indicates the name of the user group.
|
|
WindowsNTDomain
|
string
|
"RED1DOM"
|
Indicates the Windows NT domain associated with the resource.
|
IP Network Resource
Instances of this class represent IP networks discovered by Network Discovery. Although you can include such a network in a collection, you cannot distribute software to it. It is a predefined class that is dynamically generated at provider run time and therefore does not appear in the SMS_prov.mof file.
Table B.54 IP Network Resource (SMS_R_IPNetwork)
|
Property
|
Data type
|
Example
|
Notes
|
|
AgentName[]
|
string
|
"SMS_NT_USER_GROUP_DISCOVERY_AGENT"
|
An array of the names of the SMS discovery agents that discovered the resource.
|
|
AgentSite[]
|
string
|
"RED"
|
An array of the sites from which the SMS discovery agents ran.
|
|
AgentTime[]
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
An array of the times that the SMS discovery agents discovered the resource.
|
|
Name
|
string
|
"Domain Guests"
|
Indicates the name of the resource.
|
|
ResourceType
|
uint32
|
6
|
Indicates the resource type. SMS default values are:3 = User Group4 = User5 = System 6 = IP networkThere are currently no defined values outside of this range.
|
|
SMSAssignedSites[]
|
|
|
Indicates the three-letter site codes of the SMS sites that the resource is assigned to.
|
|
SubnetAddress
|
string
|
"172.40.90.0"
|
Indicates the IP network address.
|
|
SubnetMask
|
string
|
"255.255.255.0"
|
Indicates the IP network mask.
|
Resource Map
A class containing Resource mapping information for conversion among its three properties.
Table B.55 Resource Map (SMS_ResourceMap)
|
Property
|
Data type
|
Example
|
Notes
|
|
DisplayName
|
string
|
"User Group"
|
Indicates the friendly name of the resource type.Values are:User GroupUserSystemIPNetwork
|
|
ResourceClassName
|
string
|
"SMS_R_UserGroup"
|
This is the Windows Management Instrumentation (WMI) (formerly WBEM) class name. Values are:SMS_R_UserGroupSMS_R_UserSMS_R_SystemSMS_R_IPNetwork
|
|
ResourceType
|
uint32
|
3
|
Key. Indicates the resource type. Values are:3 = User Group4 = User5 = System 6 = IP networkThere are currently no defined values outside of this range.
|
Group and Inventory Classes
This set of objects provides the structure for inventory operations on SMS client systems, NT users, and NT user groups. Most of the actual inventory classes are described in Appendix C, "Hardware Inventory Classes."
SMS_Group
This is the abstract base class for the classes that represent individual SMS client system components, NT users, and NT user groups. The object definition is empty except for the ResourceID property which defaults to zero.
Table B.56 Group (SMS_Group)
|
Property
|
Data type
|
Example
|
Notes
|
|
ResourceID
|
uint32
|
0
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.The default value is zero in the abstract class.
|
SMS_G_System
SMS_G_System is an abstract base class that represents the contents, composition, and state of individual SMS client systems. Through the use of associated attribute classes, this may include software and data files, hardware information, and configuration settings. SMS_G_System is derived from SMS_Group. It has no properties of its own.
Note SMS gives the administrator direct control over the items to be included in a hardware or software inventory. You can switch various types of inventory items on or off by editing the SMS_def.mof file. The switchable items are described in Appendix C, "Hardware Inventory Classes." The process of altering the SMS_def.mof file and collecting inventory is described in Chapter 10, "Customizing Hardware Inventory."
System Class
The System attribute class is a special use class that contains a subset of the discovery data in the System Resource class. It was created to be queried by system components. This class appears as part of the hardware information in Resource Explorer and as part of the System Resource Object Type in the Query Builder. This class contains information about a client computer's system.
Table B.57 System Class (SMS_G_System_SYSTEM)
|
Property
|
Data type
|
Example
|
Notes
|
|
Domain
|
string
|
"RED1DOM"
|
Indicates the name of the Windows NT domain that the system belongs to.
|
|
GroupID
|
uint32
|
1
|
Key. Within one ResourceID (one SMS client), GroupID distinguishes one instance of a class from another. Objects with the same ResourceID and GroupID are "deltas" of one another, describing the same hardware inventory instance at different points in time.
|
|
Name
|
string
|
"RED25"
|
Defines the label that the object is known by. Maximum length is 256 characters.
|
|
ResourceID
|
uint32
|
1
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
RevisionID
|
uint32
|
1
|
Objects with the same ResourceID and GroupID are deltas, differentiated from one another by RevisionID number. The highest number is the most recent update.
|
|
SMSID
|
string
|
"GUID:C5E57120-5274-11D2-828F-00C04FAB9FB"
|
Indicates a unique, identifier, assigned by SMS.
|
|
SystemRole
|
string
|
"Workstation"
|
Indicates the system roles played by the computer system.
|
|
SystemType
|
string
|
"X86-based PC"
|
Describes the system.
|
|
TimeStamp
|
string
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time (revision time) of this delta.
|
Workstation Status Class
This class contains information about when inventory was last collected on a client computer.
Table B.58 Workstation Status Class (SMS_G_System_WORKSTATION_STATUS)
|
Property
|
Data type
|
Example
|
Notes
|
|
GroupID
|
uint32
|
1
|
Key. Within one ResourceID (one SMS client), GroupID distinguishes one instance of a class from another. Objects with the same ResourceID and GroupID are "deltas" of one another, describing the same hardware inventory instance at different points in time.
|
|
LastHardwareScan
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date and time that SMS last inventoried the client computer's hardware.
|
|
LastSoftwareScan
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
If present, indicates the date and time that SMS last inventoried the client computer's software.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
RevisionID
|
uint32
|
93
|
Objects with the same ResourceID and GroupID are deltas, differentiated from one another by RevisionID number. The highest number is the most recent update.
|
|
TimeStamp
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time (revision time) of this delta.
|
Current Inventory
SMS_G_System_Current is an abstract class from which inventory objects are derived. It contains multiple subclasses named SMS_G_System_<resource>, such as SMS_G_System_CDROM.
An inventory object can be updated, creating a group of delta versions of the same object differing (at least) by incremental changes in RevisionID. SMS_G_System_Current contains the most up-to-date deltas only.
Table B.59 Current Inventory (SMS_G_System_Current)
|
Property
|
Data type
|
Example
|
Notes
|
|
GroupID
|
uint32
|
|
Key. Within one ResourceID (one SMS client), GroupID distinguishes one instance of a class from another. Objects with the same ResourceID and GroupID are "deltas" of one another, describing the same hardware inventory instance at different points in time.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
RevisionID
|
uint32
|
|
Objects with the same ResourceID and GroupID are deltas, differentiated from one another by RevisionID number. The highest number is the most recent update.
|
|
TimeStamp
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time (revision time) of this delta.
|
History Inventory
SMS_G_System_History is an abstract class from which inventory objects are derived. It contains multiple subclasses named SMS_GH_System_<resource>, such as SMS_GH_System_CDROM.
An inventory object can be updated, creating a group of delta versions of the same object differing (at least) by incremental changes in RevisionID. SMS_G_System_History contains the outdated deltas only. These obsolete records are kept in the system ninety days by default. The default may be changed using DB Maintenance Tasks.
Table B.60 History Inventory (SMS_G_System_History)
|
Property
|
Data type
|
Example
|
Notes
|
|
GroupID
|
uint32
|
|
Key. Within one ResourceID (one SMS client), GroupID distinguishes one instance of a class from another. Objects with the same ResourceID and GroupID are "deltas" of one another, describing the same hardware inventory instance at different points in time.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
RevisionID
|
uint32
|
|
Objects with the same ResourceID and GroupID are deltas, differentiated from one another by RevisionID number. The highest number is the most recent update.
|
|
TimeStamp
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time (revision time) of this delta.
|
Extended History Inventory
SMS_G_System_ExtHistory is an abstract class from which inventory objects are derived. It contains multiple subclasses named SMS_GEH_System_<resource>, such as SMS_GEH_System_CDROM.
An inventory object can be updated, creating a group of delta versions of the same object differing (at least) by incremental changes in RevisionID. SMS_G_System_ExtHistory contains all the deltas, both current and obsolete. The obsolete records are kept in the system for ninety days by default. The default may be changed using DB Maintenance Tasks.
Table B.61 Extended History Inventory (SMS_G_System_ExtHistory)
|
Property
|
Data type
|
Example
|
Notes
|
|
GroupID
|
uint32
|
|
Key. Within one ResourceID (one SMS client), GroupID distinguishes one instance of a class from another. Objects with the same ResourceID and GroupID are "deltas" of one another, describing the same hardware inventory instance at different points in time.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
|
RevisionID
|
uint32
|
|
Objects with the same ResourceID and GroupID are deltas, differentiated from one another by RevisionID number. The highest number is the most recent update.
|
|
TimeStamp
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time (revision time) of this delta.
|
SMS_G_User
This is the abstract base class for instances representing NT users (although other operating systems may be allowed in the future). It is derived from SMS_Group, and has no properties of its own.
SMS_G_UserGroup
This is the abstract base class for instances representing NT user groups (although other operating systems may be allowed in the future). It is derived from SMS_Group, and has no properties of its own.
Software Inventory Classes
These are classes concerned with collecting software inventory from clients.
Collected Files Class
This class contains information about files collected from clients. Collected files are those that have been explicitly selected so that SMS software inventory can pull the whole file from the client computer back to the server.
The lazy FileData property is the file data itself; the property is "lazy" because there is no point in displaying the actual data in the SMS Administrator console interface.
Table B.62 Collected Files Class (SMS_G_System_CollectedFile)
|
Property
|
Data type
|
Example
|
Notes
|
|
CollectionDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date and time when the file was collected from the client computer.
|
|
FileData[]
|
uint8
|
|
Lazy. Indicates that this is the actual data contained in the file.
|
|
FileName
|
string
|
"mas.txt"
|
Indicates the name and extension of the file.
|
|
FilePath
|
string
|
"C:\\WINNT40\\MS\\SMS\\LOGS\\mas.txt"
|
Key. This is the path to the file on the client computer.
|
|
FileSize
|
uint32
|
102403
|
Indicates the size of the file.
|
|
LocalFilePath
|
string
|
"\\\\A08BARNEYSERVER\\SMS_KIL\\inboxes\\sinv.box\\FileCol\\3\\KWJFLUI6.txt"
|
Indicates that this is the path to the file on the SMS site server.
|
|
ModifiedDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date and time when the file was last modified.
|
|
ResourceID
|
uint32
|
3
|
Key. This is the ResourceID of the client that returned the file.
|
|
RevisionID
|
uint32
|
|
Objects with the same ResourceID and GroupID are deltas, differentiated from one another by RevisionID number. The highest number is the most recent update.
|
Software Files Class
This class contains information about software files found on client computers.
Table B.63 Software Files Class (SMS_G_System_SoftwareFile)
|
Property
|
Data type
|
Example
|
Notes
|
|
CreationDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the file's creation date.
|
|
FileCount
|
uint32
|
1
|
Indicates the number of occurrences of the file found on the client computer.
|
|
FileDescription
|
string
|
"Any comment."
|
Indicates a short textual description of the software file.
|
|
FileName
|
string
|
"TEXTCOPY.EXE"
|
Indicates the file name and extension.
|
|
FileID
|
uint32
|
6
|
Indicates a numeric ID that uniquely identifies this object.
|
|
FileSize
|
uint32
|
122368
|
Indicates the size of the file in bytes.
|
|
FileVersion
|
string
|
"2.0"
|
Indicates the version number of the file.
|
|
ModifiedDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date of the most recent file modification.
|
|
ProductId
|
uint32
|
0
|
Key. A unique ID that helps identify the software file to link this object with related objects.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
Software Products Class
This class contains information about software inventoried on the client computer; the information is grouped by software company name.
Table B.64 Software Products Class (SMS_G_System_SoftwareProduct)
|
Property
|
Data type
|
Example
|
Notes
|
|
CompanyName
|
string
|
"Microsoft Corporation"
|
Indicates the name of the software manufacturer.
|
|
ProductID
|
uint32
|
|
Key. A unique ID that helps identify the software to link it with other objects.
|
|
ProductName
|
string
|
"Microsoft Windows"
|
Indicates the name of the software product.
|
|
ProductVersion
|
string
|
"4.00.5000"
|
Indicates the version number of the product.
|
|
ProductLanguage
|
string
|
"1033"
|
Indicates the LocalID of the product language.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
Unknown File Class
This class contains information about software files found on client computers. These are files without header information to identify which product they are part of.
Table B.65 Unknown File (SMS_G_System_UnknownFile)
|
Property
|
Data type
|
Example
|
Notes
|
|
CreationDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the file's creation date.
|
|
FileCount
|
uint32
|
1
|
Indicates the number of occurrences of the file discovered on the client computer.
|
|
FileDescription
|
string
|
"Any comment"
|
Indicates a short textual description of the software file.
|
|
FileName
|
string
|
"TEXTCOPY.EXE"
|
Indicates the file name and extension.
|
|
FileID
|
uint32
|
|
Indicates a numeric ID that uniquely identifies this object.
|
|
FileSize
|
uint32
|
122368
|
Indicates the size of the file in bytes.
|
|
FileVersion
|
string
|
|
Indicates the version number of the file.
|
|
ModifiedDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date of the most recent file modification.
|
|
ProductId
|
uint32
|
0
|
Since this file represents an unknown product, this value is always zero in this class.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
Last Software Scan Class
This class contains information about the most recent software inventory scan.
Table B.66 Latest Software Scan Class (SMS_G_System_LastSoftwareScan)
|
Property
|
Data type
|
Example
|
Notes
|
|
LastScanDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the time stamp of the most recent SMS software inventory scan.
|
|
LastScanOpcode
|
uint32
|
5
|
Reserved for internal use.
|
|
ResourceID
|
uint32
|
3
|
Key. Indicates an identifier for the resource that is unique to this site. System Resource Type inventory items with the same ResourceID were all discovered on the same SMS client. A ResourceID is an integer generated for the sake of SQL. It is not unique outside the site and should be used only for short-term querying purposes.
|
Software Inventory Conversion Types
The SMS_SoftwareConversionTypes class is the lookup table for the types of manufacturers and products. For example, "Microsoft Corp." is a manufacturer, and "Microsoft Windows NT" is a Product.
Table B.67 Software Inventory Conversion Types (SMS_SoftwareConversionTypes)
|
Property
|
Data type
|
Example
|
Notes
|
|
ConvertType
|
string
|
"Manufacturer"
|
Key. Indicates the type of inventory data.
|
|
ConvertTypeID
|
uint32
|
1
|
Key. The numeric ID of the type. Values are:1 = Manufacturer2 = Product
|
Software Inventory Conversion Rules
The SMS_SoftwareConversionRules class contains the conversion rules that map an original manufacturer name or product name to a standard name, such as "Microsoft Corp." to "Microsoft Corporation." The new name will appear in subsequent software inventory class instances. This mechanism normalizes variant forms of a name into a single form that can be used as a database key.
Table B.68 Software Inventory Conversion Rules (SMS_SoftwareConversionRules)
|
Property
|
Data type
|
Example
|
Notes
|
|
ConvertTypeID
|
uint32
|
1
|
Key. The numeric ID of the type. Values are:1 = Manufacturer2 = Product
|
|
NewName
|
string
|
"Microsoft Corporation"
|
Key. The preferred name of the inventoried item.
|
|
OriginalName
|
string
|
"Microsoft"
|
Key. The original name of the inventoried item.
|
Software Compliance Classes
The SMS Product Compliance feature assists you in identifying software products that are affected by the Year 2000, Euro, and other compliance issues. The feature consists of queries that correlate the software inventory data from SMS client computers with known product compliance data and produce a report of software compliance for each SMS client computer.
Software Product Compliance
The Product Compliance Database is composed of Software Product Compliance objects.
Table B.69 Software Product Compliance (SMS_SoftwareProductCompliance)
|
Property
|
Data type
|
Example
|
Notes
|
|
Category
|
string
|
"Compliant with minor issues."
|
Details compliance level.
|
|
Comment
|
string
|
"Any comment."
|
Comment about compliance.
|
|
FileName
|
string
|
"msaccess.exe"
|
File identification property, used only if Resource Identification fails.
|
|
FileSize
|
uint32
|
2839552
|
File identification property, used only if Resource Identification fails.
|
|
ProdCompany
|
string
|
"Microsoft Corporation"
|
Indicates the product company.
|
|
ProdLang
|
string
|
"English"
|
Indicates the product language.
|
|
ProdName
|
string
|
"Access"
|
Display names.
|
|
ProdPlatform
|
string
|
"32-bit Win"
|
Indicates the product platform.
|
|
ProdRev
|
string
|
|
Indicates the product revision number.
|
|
ProdVer
|
string
|
"7.0"
|
Indicates the product version number.
|
|
RecordID
|
uint32
|
1
|
Key.
|
|
ResProdLangID
|
uint32
|
1033
|
Locale ID (language) of the software product.
|
|
ResProdName
|
string
|
"Microsoft® Access"
|
Product name in resources.
|
|
ResProdVer
|
string
|
"7"
|
Product version number in resources.
|
|
Source
|
string
|
"Microsoft Corporation"
|
Source of the product compliance information.
|
|
Type
|
string
|
"Year 2000 Compliance"
|
Compliance type (Y2K, and so on.)
|
|
URL
|
string
|
"http://www.microsoft.com…"
|
URL for more information about this product.
|
Status and Summarizer Classes
The status and summarizer classes indicate the status of SMS sites, components, and software distribution operations.
Status Message Overview
Users must understand the storage and display of status messages in order to interpret the fragments of information in the SMS status message objects. Instances of status messages are assembled by combining information from these objects with strings stored in DLLs. The SMS status objects link instance-specific information (such as file names) with cached message strings to create display strings of message instances.
An SMS status message viewed in the SMS Administrator console appears as a display string similar to this example:
"SMS component copied file \\<ServerName>\<ShareName>\File.txt to c:\Temp\File.txt"
It would be inefficient for SMS to store these strings in the site database. Instead, it stores a "string ID" (which is the value of SMS_StatusMessage.MessageID added to the value of SMS_StatusMessage.Severity) and a number of "insertion strings."
The string ID identifies a string template kept in a DLL that is specified by SMS_StatusMessage.ModuleName. A string template looks like:
"SMS component copied file %1 to %2."
The two insertion strings in this example are "\\<ServerName>\<ShareName> \File.txt" and "c:\Temp\File.txt". These are stored as instances of class SMS_StatMsgInsStrings.
You can find the name of the DLL that contains the string template by looking up SMS_StatMsgModuleNames.MsgDLLName for a specified value of SMS_StatusMessage.ModuleName).
When a program, such as the SMS Status Message Viewer, displays a message to the user, it first obtains the SMS_StatusMessage instance for the message, plus all insertion strings (SMS_StatMsgInsStrings) associated with the message. It then looks up the DLL name, and loads it using Win32 LoadLibrary(). Finally, it calls Win32 FormatMessage(), passing in the "string ID" and the instances of SMS_StatMsgInsStrings.InsStrValue.
Status Message Class
The SMS_StatusMessage class represents a status message generated by the SMS site server to provide information about a variety of events including process completion, errors, conditions, and user actions. This class represents status message instances reported by the SMS site server and client components.
Table B.70 Status Message Class (SMS_StatusMessage)
|
Property
|
Data type
|
Example
|
Notes
|
|
Component
|
string
|
"SMS_EXECUTIVE"
|
Indicates the name of the SMS component that created the message.
|
|
MachineName
|
string
|
"GREEN1"
|
Indicates the name of the computer that created the message.
|
|
MessageID
|
uint32
|
1100
|
Indicates a unique numeric identifier for this status message object. Range: 0-65535. This number is added to the Severity number to create a "string ID" that is used to index into a DLL of template strings.
|
|
MessageType
|
uint32
|
256
|
Indicates the type of message.Values are:256 = Milestone512 = Detail768 = Audit1024 = NTEvent
|
|
ModuleName
|
string
|
"SMS Server"
|
Indicates the name of the DLL that contains the string templates. This property is not actually the file name of the DLL, but a display string corresponding to the Source column in the Windows NT Event viewer. To find the file name, you can look up this ModuleName in the class SMS_StatMsgModuleNames.
|
|
PerClient
|
uint32
|
0
|
The value is true if the status message was generated by a client component. Messages generated on a per-client basis tend to be quite numerous, so this property provides an easy way to filter them out.Values are:0 = False2 = True
|
|
ProcessID
|
uint32
|
274
|
Indicates the ID of the process that created the message.
|
|
RecordID
|
uint32
|
3
|
This number is the primary key for this table in the database. This number is artificially generated and not replicated between databases.
|
|
ReportFunction
|
uint32
|
0
|
Indicates the report function. This is used internally by the status system and may be ignored by most users. It specifies the function that the caller used to report the status message.Values are:0 = Report16 = BeginTransaction32 = CommitFailedTransaction48 = CommitSuccessfulTransaction64 = RollbackTransaction80 = ReportEX
|
|
Severity
|
uint32
|
1073741824
|
Indicates the severity level of the message. This number is added to the MessageID number to create a "string ID" that is used to index into a DLL of template strings.Values are:1073741824 = Informational2147483648 = Warning3221225472 = Error
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site that created the message.
|
|
SuccessfulTransaction
|
uint32
|
0
|
Indicates whether or not a transaction was successful. This value is used internally by the status system and may be ignored by most users.Values are:0 = Failed8 = Successful
|
|
ThreadID
|
uint32
|
251
|
Indicates the ID of the thread that created the message.
|
|
Time
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time of the status message.
|
|
TopLevelSiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code of the topmost site the message can be replicated to.
|
|
Transaction
|
uint32
|
0
|
This value is used internally by the status system and may be ignored by most users.Values are:0 = False4 = True
|
|
Win32Error
|
uint32
|
0
|
Indicates the number of a Win32 error code associated with the Status Message.
|
Status Message Properties
Status message properties are additional key properties that may be added to individual status messages. This is a zero-or-more-to-one mapping of miscellaneous string properties to a status message. The AttributeID specifies what the property is, and the AttributeValue specifies the value of the property. For instance, a software distribution status message might contain an advertisement ID as a status message property.
Table B.71 Status Message Properties (SMS_StatMsgAttributes)
|
Property
|
Data type
|
Example
|
Notes
|
|
AttributeID
|
uint32
|
403
|
Key. Indicates which string property is being mapped.Values are:400 = PackageID401 = AdvertisementID402 = CollectionID403 = UserName404 = DistributionPoint
|
|
AttributeTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the creation time of the status message. It is copied from the Time property of SMS_StatusMessage.
|
|
AttributeValue
|
string
|
"GREEN1DOM//Administrator"
|
Key. Indicates the value of the string property being mapped. It could be any string.
|
|
RecordID
|
uint32
|
374
|
Key. Indicates the local database ID of this object.
|
Status Message Insertion Strings
An insertion string contains the information that will be inserted into a standard status message, such as a module name or file name.
Table B.72 Status Message Insertion Strings (SMS_StatMsgInsStrings)
|
Property
|
Data type
|
Example
|
Notes
|
|
InsStrIndex
|
uint32
|
0
|
Key. Indicates the zero-based index that specifies the one-based position at which InsStrValue should be inserted into the display string. A value of zero indicates that this is the first (leftmost) insertion string in the message.
|
|
InsStrValue
|
string
|
"SMS_Despooler"
|
Indicates the value of the insertion string. This could be any string.
|
|
RecordID
|
uint32
|
5
|
Key. Indicates the local database ID of the SMS_StatusMessage that this insertion string belongs to.
|
Status Message Module DLL Names
This class associates DLL file names with the corresponding ModuleName used in SMS_StatusMessage.
Table B.73 Status Message Module DLL Names (SMS_StatMsgModuleNames)
|
Property
|
Data type
|
Example
|
Notes
|
|
ModuleName
|
string
|
"SMS Client"
|
Key. A module name as used in the module name property of SMS_StatusMessage.
|
|
MsgDLLName
|
string
|
"climsgs.dll"
|
The name of the corresponding resource DLL that contains the text of the message.
|
Summarizer — Advertisement Status
This class contains a total count of advertisement status for a site's advertisements.
Table B.74 Summarizer — Advertisement Status (SMS_AdvertisementStatusSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
AdvertisementID
|
string
|
"GRN20000"
|
Key. This is the unique ID of the SMS_Advertisement instance.
|
|
AdvertisementsFailed
|
uint32
|
0
|
This is a counter that tracks the number of users, client computers, or both that are in the site that experienced an error in processing the advertisement or its associated package, or that attempted to run the advertised program but failed before the program was executed.
|
|
AdvertisementsReceived
|
uint32
|
0
|
This is a counter that tracks the number of users, client computers, or both that are in the site that is reporting successful receipt of the advertisement.
|
|
DisplaySchedule
|
string
|
"0001128000/00008"
|
Size limit 16 characters. This is a ScheduleToken that is encoded into a string. It contains a date and time schedule which runs summarizer classes and updates statistics.
|
|
LastUpdate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the most recent date and time that any site has indicated a change in status for the selected advertisement.
|
|
ProgramsFailed
|
uint32
|
0
|
This is a counter that tracks number of users, client computers, or both that reported errors while running the advertised program. A program is considered in error when it produces either a non-zero exit code or an install-status MIF file with a Failure-status attribute.
|
|
ProgramsStarted
|
uint32
|
0
|
This is a counter that tracks the number of users and/or client computers in the site that were able to successfully start running the advertised program.
|
|
ProgramsSucceeded
|
uint32
|
0
|
This is a counter that tracks number of users, client computers, or both that are reporting that the advertisement ran successfully. A program is considered successful when it produces either an exit code of zero or an install-status MIF file with a Success-status attribute.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
Summarizer — Component
This class contains the status of various SMS components.
Table B.75 Summarizer — Component (SMS_ComponentSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
ComponentName
|
string
|
"SMS_SQL_MONITOR"
|
Key. Indicates an SMS component name. Size limit 40 characters.
|
|
Errors
|
uint32
|
0
|
Indicates the number of error status messages reported by the component during the display interval.
|
|
Infos
|
uint32
|
0
|
Indicates the number of informational status messages reported by the component during the display interval.
|
|
LastContacted
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the last time and date a status message was received from the component.
|
|
LastStarted
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the last time and date when the component started.
|
|
MachineName
|
string
|
"GREEN1"
|
Key. Indicates the name of the computer that the component is installed on. (Some components can run on more than one site.). Size limit 16 characters.
|
|
NextScheduledTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the next time the component is scheduled to start in the time zone that the site server is running in for the site specified by SiteCode. It is NULL if the component is not a schedulable component.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
State
|
uint32
|
1
|
Indicates the component state.Values are:0 = STOPPED1 = STARTED2 = PAUSED3 = INSTALLING4 = RE_INSTALLING5 = DE_INSTALLING
|
|
Status
|
uint32
|
0
|
Indicates the "health" (color) of the component's associated icon in the SMS Administrator console.Values are:0 = GREEN (OK)1 = YELLOW (Warning)2 = RED (Critical)
|
|
TallyInterval
|
string
|
|
Lazy. This is a special property that is used in queries to specify the time period during which summaries are compiled of component status messages. You cannot read or write to this property.
|
|
Type
|
uint32
|
0
|
Specifies whether the component runs according to a schedule or auto starts (runs continuously). Values are:0 = AUTOSTARTING1 = SCHEDULED2 = MANUAL
|
|
Warnings
|
uint32
|
0
|
The number of warning status messages reported by the component during the display interval.
|
Package Status
The SMS_PackageStatus class provides a summary report of the health of packages and distribution points in your site. It is used internally by SMS Distribution Manager (a server component) and is not used directly to produce any of the Package Status information you see in the SMS Administrator console.
Administrators can distribute multiple packages concurrently to multiple destinations. SMS_PackageStatus allows monitoring when packages arrive at distribution points. All dates displayed are based on the time zone in which the SMS Administrator console is running.
Table B.76 Package Status (SMS_PackageStatus)
|
Property
|
Data type
|
Example
|
Notes
|
|
Location
|
string
|
|
Indicates the UNC path or Network Access Layer (NAL) path where the package is stored or distributed to.
|
|
PackageID
|
string
|
"GRN00001"
|
Key. Indicates the unique local identifier for this package.
|
|
Personality
|
sint32
|
0
|
Key. Values are:0 = NONE1 = MAC2 = FPNW
|
|
PkgServer
|
string
|
"GREEN1"
|
Key.
|
|
ShareName
|
string
|
|
Indicates the share that the package was distributed to.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
Status
|
sint32
|
0
|
Key. Values are:0 = NONE1 = SENT2 = RECEIVED3 = INSTALLED4 = RETRY5 = FAILED6 = REMOVED7 = PENDING_REMOVE
|
|
Type
|
sint32
|
1
|
Key. Values are:1 = MASTER2 = COPY
|
|
UpdateTime
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
|
Summarizer — Package Status Detail Summary
This class contains targeted/installed/failed status for a particular package on a per site basis. This is the middle-level results pane for Package Status in the SMS Administrator console. There is one record for each package/site combination. Therefore the counts are for all of the distribution points at a given site. There are records for only the current site and the sites below it.
Table B.77 Summarizer — Package Status Detail Summary (SMS_PackageStatusDetailSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
Failed
|
uint32
|
0
|
Indicates a count of distribution points that failed the installation or removal of a package. This is the total number of distribution points in the sites that have exceeded the number of retries allowed during an installation or removal operation, and that are currently in a state of installation-failed or retry-failed.
|
|
Installed
|
uint32
|
1
|
Indicates a count of distribution points where the latest version of a package has been installed.
|
|
Name
|
string
|
"Tetris"
|
Indicates the name assigned to the package when it was created in the SMS Administrator console.
|
|
PackageID
|
string
|
"GRN00022"
|
Key. Indicates a unique identifier for the package. Size limit 8 characters.
|
|
Retrying
|
uint32
|
0
|
Indicates a count of distribution points that are retrying the installation or removal of a package. This is the total number of distribution points in the sites that have had at least one failure during an installation or removal operation, but have not yet exceeded the number of retries allowed, and are currently in a state of installation-retrying or removal-retrying.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the SMS site code for each site that has at least one distribution point specified to have a copy of the package.
|
|
SiteName
|
string
|
"Wide World Importers"
|
Indicates the SMS site name for each site that has at least one distribution point specified to have a copy of the package.
|
|
SourceVersion
|
uint32
|
1
|
Indicates the version of the package source currently in use at individual SMS sites. It increments each time the user updates the package in the SMS Administrator console.
|
|
SummaryDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the most recent date and time when a change in package status for the sites was reported.
|
|
Targeted
|
uint32
|
2
|
Indicates the count of distribution points that a package should be installed on. This is the total number of distribution points in the sites that are targeted for this package.
|
Summarizer — Package Status Root
This class contains a total count of targeted/installed/failed status for packages. This is the top-level results pane for Package Status in the SMS Administrator console. There is one record for each package. Therefore, the counts are for all distribution points in the whole site hierarchy from the current site and below.
Table B.78 Summarizer — Package Status Root (SMS_PackageStatusRootSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
Failed
|
uint32
|
0
|
Indicates a count of distribution points that failed the installation or removal of a package. This is the total number of distribution points for this package that have exceeded the number of retries allowed during an installation or removal operation, and that are currently in a state of installation-failed or retry-failed.
|
|
Installed
|
uint32
|
1
|
Indicates a count of distribution points where the latest version of a package has been installed. This is the total number of distribution points to which the current source version of the package has been previously copied. A distribution point is considered installed until an update, refresh, or removal operation is specified.
|
|
Name
|
string
|
"Tetris"
|
Indicates the name assigned to the package when it was created in the SMS Administrator console. Size limit 64 characters.
|
|
PackageID
|
string
|
"GRN00002"
|
Key. Indicates a unique identifier for the package. Size limit 8 characters.
|
|
Retrying
|
uint32
|
1
|
Indicates a count of distribution points that are retrying the installation or the removal of a package. This is the total number of distribution points for this package that have had at least one failure during an installation or removal operation, but have not yet exceeded the number of retries allowed, and are currently in a state of installation-retrying or removal-retrying.
|
|
SourceCompressedSize
|
uint32
|
14
|
Indicates the size (in kilobytes) of the compressed version (if any) of the package source directory.
|
|
SourceDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date, in GMT, that the latest version of the package was created.
|
|
SourceSite
|
string
|
"GRN"
|
Indicates the three-letter site code for the source site. Size limit 3 characters.
|
|
SourceSize
|
uint32
|
30
|
Indicates the uncompressed size of the package source directory in kilobytes.
|
|
SourceVersion
|
uint32
|
1
|
Indicates the version of the package. It increments each time the user updates the package in the SMS Administrator console.
|
|
Targeted
|
uint32
|
2
|
Indicates the count of distribution points that a package should be installed on. This is the total number of distribution points (including child sites) that are specified to have a copy of the package. A distribution point remains targeted until it is specified for removal.
|
Summarizer — Package Status Distribution Points
This is the bottom-level results pane for Package Status in the SMS Administrator console. There is one record for each package/site/distribution point combination. There are records for only the current site and the sites below it.
Table B.79 Summarizer — Package Status Distribution Points (SMS_PackageStatusDistPointsSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
LastCopied
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the date and time when the current package source for the selected site was last successfully copied to the distribution point.
|
|
PackageID
|
string
|
"GRN00002"
|
Key. Indicates a unique identifier for the package. Size limit 8 characters.
|
|
ServerNALPath
|
string
|
Appears as a lengthy string.
|
Key. A Network Access Layer (NAL) path is the internal format for a path to a storage location, such as a share on an NT server, or a NetWare Bindery volume. This is the NAL path to the distribution point.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
SourceNALPath
|
string
|
Appears as a lengthy string.
|
A NAL path is the internal format for a path to a storage location, such as a share on an NT server, or a NetWare Bindery volume. This is the NAL path to the package's source files.
|
|
SourceVersion
|
uint32
|
1
|
Indicates the version of the package. It increments each time the user updates the package in the SMS Administrator console.
|
|
State
|
uint32
|
0
|
Values are:0 = INSTALLED1 = INSTALL_PENDING2 = INSTALL_RETRYING3 = INSTALL_FAILED4 = REMOVAL_PENDING5 = REMOVAL_RETRYING6 = REMOVAL_FAILED
|
|
SummaryDate
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
Indicates the most recent date and time when a change in package status for the sites was reported.
|
Summarizer — Site Detail
This class contains a total count of all information/warnings/error messages for a site.
Table B.80 Summarizer — Site Detail (SMS_SiteDetailSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
DatabaseFree
|
uint32
|
|
Indicates the percentage of free storage space available for the site database.
|
|
Errors
|
uint32
|
|
Indicates the total number of error status messages reported by all server components at this site during the display interval.
|
|
Infos
|
uint32
|
|
Indicates the total number of informational status messages reported by all server components at this site during the display interval.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
SiteName
|
string
|
|
Indicates the user-friendly name of the site.
|
|
Status
|
uint32
|
|
Indicates the "health" (color) of the site's associated icon in the SMS Administrator console.Values are:0 = GREEN (OK)1 = YELLOW (Warning)2 = RED (Critical)
|
|
TallyInterval
|
string
|
|
Lazy. Defines a period of time over which the summarizer will monitor status.
|
|
TransFree
|
uint32
|
|
Indicates the minimum percentage of free storage space available for the site databases's transaction log.
|
|
Version
|
string
|
|
Indicates the version of SMS installed on this site, including the service pack if one is installed.
|
|
Warnings
|
uint32
|
|
The total number of warning status messages reported by all server components at this site during the display interval.
|
Summarizer — Site System
The SMS_SiteSystemSummarizer class is a high-level view of the health of the site systems at a given site. It contains the status of the various SMS site systems. An instance of this class is created for every storage object (disk drive, database, and so on) used by SMS for every site system for the site.
Table B.81 Summarizer — Site System (SMS_SiteSystemSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
BytesFree
|
sint32
|
44412
|
Indicates the amount of free (unused) storage space (in bytes) for the storage object. A negative value indicates that this information is currently unavailable.
|
|
BytesTotal
|
sint32
|
51200
|
Indicates the maximum amount of storage space (in bytes) the storage object can contain. A negative value indicates that this information is currently unavailable.
|
|
DownSince
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
This displays the date and time when the storage object was first found to be down (inaccessible). The storage object is considered down if the site server fails to connect to the storage object due to network problems, security problems, and so on. A null value means that the system is not down.
|
|
ObjectType
|
uint32
|
1
|
Indicates the type of object for which status is being reported.Values are:0 = NALPATH1 = SQL_DB2 = SQL_LOG
|
|
PercentFree
|
sint32
|
86
|
Indicates the percentage of free storage space available on the storage object. A negative value indicates that this information is currently unavailable.
|
Table B.82 Summarizer — Site System (SMS_SiteSystemSummarizer)
|
Property
|
Data type
|
Example
|
Notes
|
|
Role
|
string
|
"distribution point"
|
Key. Indicates the SMS site system role performed by the site system:Values are:client access point, distribution point, SQL Server, software metering server, component server, site server.
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
SiteObject
|
string
|
Appears as a lengthy string.
|
Key. Indicates a Network Access Layer (NAL) path to a storage object that is one of the following:1. A directory that contains files2. The name of the database3. The transaction log if the storage object is a database or transaction log.
|
|
SiteSystem
|
string
|
Appears as a lengthy string.
|
Key. Indicates the name of the computer containing the storage object.
|
|
Status
|
uint32
|
0
|
Indicates the "health" (color) of the site's associated icon in the SMS Administrator console.Values are:0 = GREEN (OK)1 = YELLOW (Warning)2 = RED (Critical)
|
Summarizer — Root Status
The SMS_SummarizerRootStatus class contains a total count of the health of the current site and all its child sites.
Table B.83 Summarizer — Root Status (SMS_SummarizerRootStatus)
|
Property
|
Data type
|
Example
|
Notes
|
|
Status
|
uint32
|
2
|
Indicates the "health" (color) of the site's associated icon in the SMS Administrator console.Values are:0 = GREEN (OK)1 = YELLOW (Warning)2 = RED (Critical)
|
Summarizer — Site Status
The SMS_SummarizerSiteStatus class contains a total count of the health information about a particular site.
Table B.84 Summarizer — Site Status (SMS_SummarizerSiteStatus)
|
Property
|
Data type
|
Example
|
Notes
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
Status
|
uint32
|
2
|
Indicates the "health" (color) of the site's associated icon in the SMS Administrator console.Values are:0 = GREEN (OK)1 = YELLOW (Warning)2 = RED (Critical)
|
Summarizer — Status
This class depicts summarizers that are registered in the system. No specific SMS status information is contained in the class.
Table B.85 Summarizer — Status (SMS_SummarizerStatus)
|
Property
|
Data type
|
Example
|
Notes
|
|
GUID
|
string
|
"{783EBEA0-ABBF-11d1-BB12-3A84C6000000}"
|
Key. The GUID is used by the SMS Administrator console to determine which summarizer generated the row. The values are:Component Summarizer ="{783EBEA0-ABBF-11d1-BB12-3A84C6000000}"Site System Status Summarizer = "{78B42510-ABBD-11d1-BB12-3A84C6000000}"
|
|
MessageDLL
|
string
|
"SMS_RES1.DLL"
|
|
|
MessageID
|
string
|
39
|
|
|
SiteCode
|
string
|
"GRN"
|
Indicates the three-letter site code for the site.
|
|
Status
|
uint32
|
2
|
Indicates the "health" (color) of the site's associated icon in the SMS Administrator console.Values are:0 = GREEN (OK)1 = YELLOW (Warning)2 = RED (Critical)
|
|
Updated
|
datetime
|
See "Date and Time Formats" at the beginning of this appendix.
|
|