Quantcast
Channel: Forum Microsoft Identity Manager
Viewing all articles
Browse latest Browse all 4767

Why is not the provision method being called when I disconnect

$
0
0

Hello!

I want to say that I'm new to MIM and this test is just for learning.
I only use Synchronization Service Manager and not the FIM Portal.
I have two agent called Project-AD and Project-HR.
I have this provision code located in MVE for agent  Project-AD.

bool ProvisionPerson(MVEntry mventry)
        {
            CSEntry csentryKatalog;
            ReferenceValue dn;
            
            int connectorsSourceSystem = mventry.ConnectedMAs["Projekt - Personal"].Connectors.Count;
            ConnectedMA targetAgent = mventry.ConnectedMAs["Projekt - AD"];              
            if (mventry["forname"].Value.ToLower() == "nilspoppe" && connectorsSourceSystem > 0)
            {
                CSEntry csentry = mventry.ConnectedMAs["Projekt - Personal"].Connectors.ByIndex[0];
                csentry.Deprovision();
            }
            else if (connectorsSourceSystem >= 1 && targetAgent.Connectors.Count == 0)
            {
                dn = targetAgent.CreateDN(mventry["personnummer"].Value);
                csentryKatalog = targetAgent.Connectors.StartNewConnector("Katalog");
                csentryKatalog.DN = dn;
                csentryKatalog["MAID"].Value = mventry["personnummer"].Value;
                csentryKatalog.CommitNewConnector();
            }
           
           return false;          
        }

In addition for this example I also have this code for method Deprovision in MAR for agent Project-HR

DeprovisionAction IMASynchronization.Deprovision (CSEntry csentry)
 {
       return DeprovisionAction.Delete;
 }
In "Configure Deprovision" for agent Project-HR" I have set  to use "Determine with a rule extension"

This method Deprovision will cause the Connector for this object with forname=nilspoppe to be false.
So the object will have status pending export so I can delete that object in method BeginExport.

Now I mean that the following should also call the Deprovision metod but is doesn't.
I do the following for agent Project-AD
I click Search Connector space
Select one line that has Connector =True
Click Lineage
Click Metaverse Object Properties
Click Connectors
In my case I have two agent
* Project-AD
*Project-HR
Now I select the row with agent Project-HR and click disconnect and then choose Disconnector(default)
When I do this I get the result "The object was successfully disconnected."
So my question is why is not the method Deprovision being called?

Hope you understand what I mean?

//Tony


Viewing all articles
Browse latest Browse all 4767

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>