ISProvider.DeleteEntityId

Description

This function deletes the entity linked to the provider.

Syntax

object.DeleteEntityId aEntityId

Part Attribute Type Description
object Required
The object always implements the ISProvider interface
aEntityId In, Required
The entity identifier

Example

Delete the entity linked to the provider.

sub main

  Dim aFilter 
  Dim aProviders
  Dim aProvider
  Dim aEntityCollection
  Dim aMessage

  const aEntityIdentifier = "My identifier2"

  Set aFilter = Profile.CreateProvidersFilter
  aFilter.Category = 2 'pcProvider  

  set tr = Profile.StartMapTransaction
  set aProviders = Profile.LoadProvidersByFilter(aFilter)
  aMessage = "BEFORE" & vbNewLine & GetProvidersEntities(aProviders, aEntityIdentifier)

  for each aProvider in aProviders
    set aEntityCollection = aProvider.GetEntityIdByIdentifier (aEntityIdentifier)
    for each aEntity in aEntityCollection
      aProvider.DeleteEntityId aEntity
    next
    aProvider.Save
  next  
  tr.Commit

  set tr = Profile.StartMapTransaction 
  set aProviders = Profile.LoadProvidersByFilter(aFilter) 

  aMessage = aMessage & vbNewLine &_
    "AFTER" & vbNewLine & GetProvidersEntities(aProviders, aEntityIdentifier) 
 
  Profile.MsgBox (aMessage)
end sub

function GetProvidersEntities(aProviders, aEntityIdentifier)
  Dim aProvider
  Dim aEntityCollection
  Dim aMessage
  
  for each aProvider in aProviders
    set aEntityCollection = aProvider.GetEntityIdByIdentifier (aEntityIdentifier)
    aMessage = aMessage & vbNewLine & aProvider.FullName &_
      " has " & aEntityCollection.Count & " linked entities "
  next 
 
  aMessage = _
    "The number of the providers is " & aProviders.Count & vbNewLine & aMessage       

  GetProvidersEntities = aMessage
end function  
Note:

In Profile Client v8 on User Interface Entity Identifier can be found and deleted in Organisation > People&Places > People and Places > Open the selected Provider > Registry.

See also

Version information

Added in v7.8.0