Skip to main content

GUEST/IDM/CONNECT

IDM Importer - Installation

Preparation of Symmetry Connect/Guest
  • Log into Symmetry Connect/Guest and navigate to the Configuration Access Control sub-menu. If not already enabled, turn on the Access Control Integration by selecting the ON control next to Access Control, then click on the Access Control link.

    import_1.png
  • Find the Web Api Token that represents the users system. This will be required later when setting up the settings.yaml file.

    import_2.png
Installation of the IDM Importer
  • Double-click on the AMAG.IDM.Importer install to start the process.

    util_23.png
  • Click on Finish when the install is complete.

    util_24.png
  • The service is installed in C:\\ProgramData\AMAG\Amag.IDM.Importer\X.X.X.X. In the root directory, you will find a settings.yaml file (open/edit using notepad).

    util_25.png
Configuration of the IDM Importer

The setting.yaml file is the configuration file that we are going to modify to specify the sources and destinations of the IDM / Identities. Here is a simplified version of the yaml file that explains the different parts:

util_26.png

In the first section of the yaml file, there are 2 locations where we have SELECT STATEMENT HERE. This can be simple queries or very complex ones. It all depends what you wish to have pulled into IDM from the source being used.

Here is an example of what the query can look like when pulling from multimax database (Symmetry):

select PDF.[PersonalData8] as EmployeeNumber
, FirstName
, Case
When InitLet IS NOT NULL then InitLet
Else ''
End as MiddleName
, LastName
,Case PDF.[PersonalData13]
When 'M' Then 1
When 'F' Then 2
When NULL Then 0
ELSE 0
End as Gender
, Case
When PDF.[PersonalData12] IS NOT NULL then PDF.[PersonalData12]
Else ''
End as PrimaryEmail
, Case
When PDF.[PersonalData3] IS NOT NULL then PDF.[PersonalData3]
Else ''
End as PrimaryPhone
, Case
When PDF.[PersonalData5] IS NOT NULL then PDF.[PersonalData5]
Else ''
End as Title
, Case
When PDF.[PersonalData1] IS NOT NULL then PDF.[PersonalData1]
Else ''
End as Location
, PDF.[PersonalData6] as EmployeeType
, Case
When PDF.[PersonalData3] IS NOT NULL then PDF.[PersonalData3]
Else ''
End as Department
, ActiveDateTime as StartDate,
, InactiveDateTime As ExpirationDate
, CHT.CardID as CardID, CIT.CardInfoID
, Case
When PDF.[PersonalData4] is not null Then PDF.[PersonalData4]
When Inactive = 1 Then 'Inactive'
When Inactive = 0 Then 'Active'
End as SymmetryStatus
FROM [multiMAX].[dbo].[CardHolderTable] CHT (NOLOCK)
INNER JOIN [multiMAX].[dbo].[CardInfoTable] CIT (NOLOCK) on
CHT.CardID = CIT.CardID
LEFT JOIN [multiMAX].[dbo].[PersonalDataFlatTable] PDF (NOLOCK) on
PDF.CardID = CHT.CardID
WHERE CIT.PrimaryCard = 1 and PDF.[PersonalData8] IS NOT NULL ORDER BY
CHT.CardID

The “WHERE” clause of the query is used to filter the record that we do not want to import. Using SQL Server Management studio is a good was to assure that we pull in the right Identities.

The Identities Photo query could look like:

SELECT PDF.[PersonalData8] as EmployeeNumber, CHFT.Face AS Photo
FROM [multiMax].[dbo].[CardInfoTable] CIT (NOLOCK)
JOIN [multiMax].[dbo].[CardHolderTable] CHT (NOLOCK) ON CHT.CardID
= CIT.CardID
JOIN [multiMAX].[dbo].[CardHolderFaceTable] CHFT (NOLOCK) ON
CIT.CardID=CHFT.CardID
LEFT JOIN [multiMAX].[dbo].[PersonalDataFlatTable] PDF (NOLOCK) on
PDF.CardID = CHT.CardID
WHERE CIT.PrimaryCard = 1 and PDF.[PersonalData8] IS NOT NULL ORDER BY
CHT.CardID
Data Fields

Here is a quick guide available fields. Those with “*” are required:

  • EmployeeNumber*

  • FirstName*

  • Middle Name

  • LastName*

  • Gender {0 - Unspecified, 1 = Male, 2 - Female} *

  • Company * (Required or a company will be auto-created)

  • StartDate

  • ExpirationDate

  • PrimaryEmail *

  • PrimaryPhone *

  • TitlePrefix

  • Title

  • TitleSuffix

  • Building * (required or a default building will be assigned)

  • Location

  • Floor

  • EmployeeType { Employee = 0 / Non-Employee = 1}

  • EmployeeCategory

  • Department

  • DateOfBirth

  • UDF’s - based on configuration in IDM - column is the name of UDF, not display value - these cannot overlap existing column names above, ex: ‘AlternateName’.

Communication

The service communicates to the URL defined in the “WebApiUrl”. All traffic goes over https (443)