The following delineates the configuration that must be carried out in Halo in order to facilitate the integration with SCCM.
To enable the SCCM integration in Halo, go to Configuration > Integrations, and enable the module. Once the module has been enabled, click the menu icon for the module to begin configuring it.
As the SCCM integration is effectively an import from one SQL database to another, access to the SCCM database is required. This means there is no import facility within the web application itself, and instead, a separate tool called the Halo Integrator must be downloaded. More details will be given regarding the Halo Integrator later in this guide.
Both SCCM and Halo have a SQL database. This integration is an import from one SQL database into another, and the Halo Integrator will need details of how to connect to your SCCM database. Under the SQL Connection header, there are five options that allow you to specify connection details for your SQL Server, and also the query that should be run against the SCCM database for the import.
The Integrator will attempt to import any record that is returned via the SQL query. Later in the integration setup, you have the option to map fields from the SCCM database to Asset fields in Halo. You should ensure that any information you would like importing into Halo is selected in this SQL query.
Next you are given the option to choose some key fields for the import. The first option available for you to specify is the name of the Unique Asset Identifier field from your query. This field will be used to match existing records to records that are being imported, so that you do not get duplicated Assets when the importer is run for a second time.
It is important that this field holds a unique value that does not change, otherwise duplicate assets will be created during subsequent syncs, or the incorrect asset may be updated.
The next key field is the name of the Asset Type field. The field you choose here should contain the name of the asset type of the asset in SCCM. The value that is returned from the query for this field must match the name of an Asset Type in Halo. If a value is returned that does not equal the name of an Asset Type, then the Asset will fail to import.
Tip: If you do not wish to select an actual Asset Type field in your SCCM query, or you wish to import all Assets into the same Asset Type, you can hardcode a value in your query. For example: select ‘SCCM Assets’ as [AssetType] from Table. In this example, AssetType would be your Asset Type key field. This would set all assets to the asset type SCCM Assets (if it exists).
The next key fields help identify the Site that the Asset belongs to, and the User of the Asset. In the same way that you have chosen an identifying field for Assets and Asset Types, you should now choose a field name from your SCCM query which will be used to identify the Halo Site by its name. There is also an additional option for you to choose a default site, so if the fields value does not match to any sites name, then the Asset will be assigned to the default Site.
Tip: To import all assets into the same site, add a hardcoded field to your SQL query. For example, select ‘SCCM Site’ as [SiteName] from Table. In this example, SiteName will be your key field, and all Assets would be assigned to the site “SCCM Site” if it exists.
Similarly, choose a field name from your SCCM query that will return the details of the User that is associated with the Asset. This field should contain either the username, email address, or network login of the User. You should then set the User Matching Field to one of these three values, depending on the data you expect to be returned. For example, if your User Field returns the username of an Assets user, you should choose Username in the matching field. This is so that a User can be correctly identified in Halo and then assigned to the Asset.
It is possible to map fields that are returned in your SCCM query to Halo Asset fields. You must ensure that any field you wish to map is returned in your query. To add a new mapping, press the plus icon in the top right corner of the table.
First specify the name of the field in your SCCM query. Then you must choose which field you would like to map the SCCM field to in Halo. There are some system fields available, along with the option of *Asset Field*. If this option is chosen, when importing, a field will be created with a name equal to the SCCM query field name. If a field already exists with that field name, or after it has been created, the data from the SCCM field will be mapped into the Halo field.
Tip: You can also create mappings for the fields used in Key Fields if you wish. For example, you will not be able to see the value of the Asset’s unique ID field unless you also map it to another Halo field.
There are two advanced options available for this integration.
Firstly, you can assign an Asset to a User's Site if a User is matched during the import process using the key fields. This works as an override, so the User's Site will take precedence over all other Site matching.
Secondly, if you would like the import to only update pre-existing Assets, and not create any new records, then the second option should be enabled.
As mentioned earlier, to run the import, the Halo Integrator application must be downloaded. Whilst the general configuration of the Halo Integrator is not covered in this guide, there are some important steps that should be completed/considered.
Firstly, make sure that the integration is enabled for the Halo Integrator. When enabled, two additional fields will display, showing the last successful run time, and the last error (if there was one). This will alert you to any potential issues with the import if you are running the import on a recurring schedule.
The Halo Integrator must be run on a location that is able to connect and access your SQL Server using the connection details you have configured in the integration setup. To test if you have the Halo Integrator in a suitable location, open the SCCM tab of the integrator and press the Check Configuration button. If correct, all of the checklist options will have a ticket appear next to them. If any of the requirements are not met, a red cross will appear.
In this example, a poorly written query would prevent the import from taking place. To find the potential source of the issue, switch to the Processes tab, where any errors will have been logged.
Once you are happy with your configuration, and all of the checklist points on the SCCM tab have returned a successful result, press the Start Processing button to begin the import.