Two delta header comments are required for an IDMIF file; the other comments are optional. The comments you must include are:
//Architecture<ArchitectureName>
//UniqueId<UniqueID>
The unique ID can be any unique ID, such as a social security number for a person or a vehicle identification number for a vehicle. Each architecture has one or more instances within the SMS site database. The unique ID is the key for this specific instance.
In addition, although it is not required, you should use the agent name, especially with a large or complicated custom MIF file that might be updated by more than one agent, or when you extend the System architecture.
//AgentID<AgentName>
If you do not include this attribute, hardware inventory might overwrite the information your IDMIF file places in the SMS site database.
The agent name enables you to independently create and modify the System architecture. Others who modify the architecture can use a different agent name. They can then remove or modify the parts of the architecture that are associated with that agent, independently of the modifications of other agents.
There is another requirement of any IDMIF file: Whenever you create an IDMIF file, you must include a group within the IDMIF file with the same class name as the architecture you are creating or modifying. This group is known as the top-level group.
Also, if you create any class that has more than one instance, you must include at least one key value within the class, to avoid having each instance overwrite previous instances. For more information, see “Creating an Attribute by Using a NOIDMIF File.”
Table 10.1 IDMIF File Header Comments
IDMIF file header comment | Required | Function |
---|---|---|
//AgentID <Agent Name> | No | The name of the agent that produced the custom MIF file. You can use your name or the name of an application that produced the custom MIF file. This field is most useful when more than one agent is expected to change an architecture. You must specify this value for the ResyncAgent header comment, or if the ResyncClass value is set to 1. |
//FullResync<0> | No | A value of 1 causes a full resynchronization of this architecture for this instance (this Unique ID). A value of 0 causes a delta resynchronization (changing this architecture for this instance). This field is most useful for completely replacing an instance of an IDMIF file or for erasing any information that remains in the SMS site database after an IDMIF file is no longer being used. |
//ResyncAgent<0> | No | A value of 1 causes an agent resynchronization (replacing all of the values added by this agent to this architecture in the SMS site database with the results of this IDMIF file). This field is most useful for large or complicated IDMIF files. |
//ResyncClass <ClassName><1> | No | A value of 1 causes an agent resynchronization of the specified attribute class in the SMS site database (completely replacing all elements of this attribute class created by this agent with the contents of this IDMIF file). A value of 0 completely replaces the class with the contents of the MIF file. This field is most useful for large or complicated IDMIF files. |
//Architecture <architecture name> | Yes | The name of the architecture. When you create a new architecture, the architecture is created within the SMS site database with the name you provide. |
//UniqueID <UniqueID> | Yes | The single value that uniquely identifies this instance in the SMS site database. This value can be the globally unique identifier (GUID) or SMSID of a specific client or some other unique number, such as a social security number for a person or a vehicle identification number for a vehicle. |
To create custom IDMIF files
//Architecture<ArchitectureName>
//UniqueId<UniqueID>
//AgentID<AgentName>
You should always consider using agent IDs when you create an IDMIF file. When you extend the System architecture, agent IDs are required so that hardware inventory resynchronizations do not overwrite the data. As mentioned earlier, they are most useful for large or complicated IDMIF files, especially when parts of the file might be changed by different agents.
Copy test.mif %Windir%\MS\SMS\Idmifs
The IDMIF file will be processed by Inventory Data Loader and included in the SMS site database. You can update the values by using additional IDMIF files.
After you submit an IDMIF file, you do not need to resubmit it or maintain it within the SMS site hierarchy unless you want to change it.