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

[IDL]
HRESULT DDRAddString(
	 [in] BSTR Name,
	 [in] BSTR Value,
	 [in] long SQLWidth,
	 [in] enum DDRPropertyFlagsEnum Flags
   );

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 does not include the NULL character. For SMS 2003 This value cannot be greater than 900 characters. For SMS 2.0 this value cannot 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 (Hex 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.

Note that SMSUniqueIdentifier relates discovery data to inventory data. If you do not collect inventory information for this resource, you do not need to specify the SMSUniqueIdentifier property in your DDR.

ADDPROP_KEY (Hex 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 (Hex 44)

Tells the Data Discovery Manager (DDM) to use this property's string value for the value of the Name property.

The Name property is one of six additional properties that are generated for you by the DDM.

ADDPROP_NAME2 (Hex 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 has not 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

See Also


Send comments about this topic to Microsoft.