DDRAddString

The DDRAddString function, in Configuration Manager, adds a string property to the data discovery record (DDR).

Syntax

[IDL]  
HRESULT DDRAddString();  

Parameters

Name
Name of the class property.

sValue
Value assigned to the property. You can only enter string values from the single-byte character set.

nSQLWidth
Maximum length of a string that can be assigned to this property. This value doesn't include the NULL character. For SMS 2003 This value can't be greater than 900 characters. For SMS 2.0 this value can't be greater than 255 characters.

Flags
Characteristics of the property, such as a key field for comparisons. Enter one or more of the following flags or a zero.

Flag Description
ADDPROP_GUID (Hexadecimal 2) Identifies a property that is constant and uniquely identifies the discovered item. If specified for system DDRs, this should be the SMSID generated by the Configuration Manager client.

This flag is only used on the SMSUniqueIdentifier property. If you use ADDPROP_GUID, you must also use ADDPROP_KEY.

SMSUniqueIdentifier relates discovery data to inventory data. If you don't collect inventory information for this resource, you don't need to specify the SMSUniqueIdentifierproperty in your DDR.
ADDPROP_KEY (Hexadecimal 8) Identifies this property as a key field during a comparison of this DDR with class instances in the database. If an instance in the database matches the data of the DDR key properties, the instance is updated; otherwise, a new instance is created.
ADDPROP_NAME (Hexadecimal 44) Tells the Data Discovery Manager (DDM) to use this property's string value for the value of the Nameproperty.

The Name property is one of six other properties that are generated for you by the DDM.
ADDPROP_NAME2 (Hexadecimal 84) Adds a Comment property to your DDR and uses the string value of your property for its value.

Return Values

If the function succeeds, the return value is S_OK.

If the DDRNew function hasn't been called, the return value is S_FALSE.

Remarks

Your DDR must contain one string property that specifies the ADDPROP_NAME flag. The value must uniquely identify the resource because the Name property is typically used to query resource data.

The DDR is rejected if sValue is longer than the maximum length specified in nSQLWidth.

You can use underscores, concatenation, or spaces for property names that contain multiple words. For example, you can specify sName as License_Number, LicenseNumber, or LicenseNumber. If you specify sName as LicenseNumber, the DDM concatenates the words, which results in LicenseNumber. However, the column name, which is created in the database, is License_Number. You must use the same convention when you add DDRs that create or update instances in an existing resource class.

Requirements

Runtime Requirements

smsrsgenctl.dll

smsrsgen.dll

For more information, see Configuration Manager Server Runtime Requirements.

Development Requirements

For more information, see Configuration Manager Server Development Requirements.

See Also

DDRAddInteger
DDRAddStringArray
DDRPropertyFlagsEnum Enumeration
SMSResGen COM Automation Class
ISMSResGen Interface