Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Style
importhttps://docs.empowerid.com/docs.css

...

This function specifies which accounts can be joined to People. To be joined, accounts must meet the criteria specified by the function AS WELL AS the filter specified in the AccountInboxing_GetJoinAndProvisionFilter function. The default logic for this function states that all inventoried accounts are eligible for joining. If the value of AllowJoin was set to 0, no accounts would be eligible.

Code Block
languagesql
themeConfluence
DECLARE @JoinFilter NVARCHAR(MAX) = N'A.AllowJoin = 1'

This function can be customized to filter or exclude accounts from being targets for joining to People. For example, if you wanted only those accounts in a specific account store to be eligible targets for joining, you could alter the function in the following way:

Code Block
languagesql
themeConfluence
DECLARE @JoinFilter NVARCHAR(MAX) = N'A.AllowJoin = 1' AND A.AccountStoreID = 1002

...

This function specifies the accounts from which Persons can be provisioned. To be provisioned, accounts must meet the criteria specified the function AS WELL AS the filter specified in the AccountInboxing_GetJoinAndProvisionFilter function. The default logic for this function states that Persons can be provisioned from an accounts store when AllowPersonProvisioning is set to true on the account store from which the account originates.

Code Block
languagesql
themeConfluence
DECLARE @ProvisionFilter NVARCHAR(MAX) =
    N'A.AllowProvision = 1 AND EXISTS(SELECT 1 FROM AccountStore S WHERE A.AccountStoreID = S.AccountStoreID AND S.AllowPersonProvisioning = 1)'

...

This function can be customized to filter or exclude accounts within an eligible account store from being targets for provisioning new Persons. For example, if you wanted only those accounts with a Department value of Sales to be eligible targets for provisioning new Persons, you could alter the function in the following way:

Code Block
languagesql
themeConfluence
DECLARE @ProvisionFilter NVARCHAR(MAX) =
    N'A.AllowProvision = 1 AND EXISTS(SELECT 1 FROM AccountStore S WHERE A.AccountStoreID = S.AccountStoreID AND S.AllowPersonProvisioning = 1 AND A.Department = N''Sales'')'

...

  • The account is not currently owned by a Person (The account's PersonID field IS NULL)
  • The account is active (The account's Disabled and Deleted fields are 0)
  • The account is not an Active Directory contact account or a non-personal account (The AccountTypeID field is not equal to 2 and the AccountUsageTypeIDequals 1.
  • The account has valid FirstName and LastName values (The length of each field is greater than 0)

Code Block
languagesql
themeConfluence
DECLARE @JoinAndProvisionFilter NVARCHAR(MAX) = N'A.PersonID IS NULL AND A.Disabled = 0 AND A.Deleted = 0 AND A.AccountTypeID <> 2 AND A.AccountUsageTypeID = 1 AND LEN(A.FirstName) > 0 AND LEN(A.LastName) > 0'

...

This function should be customized in situations where the same filter would be applied to accounts that are both join and provision targets. For example, if you wanted only those accounts with an EmployeeType of Contractor to be targets for joining or provisioning, you could alter the function in the following way:

Code Block
languagesql
themeConfluence
DECLARE @JoinAndProvisionFilter NVARCHAR(MAX) =
            N'A.PersonID IS NULL AND A.Disabled = 0 AND A.Deleted = 0 AND A.AccountTypeID <> 2 AND A.AccountUsageTypeID = 1
            AND LEN(A.FirstName) > 0 AND LEN(A.LastName) > 0 AND A.EmployeeType = ''Contractor''

...