Pastaba.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti prisijungti arba pakeisti katalogus.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti pakeisti katalogus.
Galite suaktyvinti ne atvejų įrašų, pvz., el. laiškų, maršruto parinkimą programiškai, naudodami "IPlugin" sąsają.
Šį kodo pavyzdį galite naudoti savo "Visual Studio" konsolės programoje (.NET framework). Kodas tikrina, ar nėra šių dviejų sąlygų, ir, jei jos įvykdytos, suaktyvina msdyn_ApplyRoutingRuleEntityRecord veiksmą.
- ar tinklo tarnybos pranešimas skirtas įrašui kurti
- ar įrašas yra el. laiškas.
public class SamplePlugin : IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
// Obtain the tracing service
ITracingService tracingService = (ITracingService)serviceProvider.GetService(typeof(ITracingService));
// Obtain the execution context from the service provider
IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
// Check if create message
if (context.MessageName.ToLower().Equals("create"))
{
// The InputParameters collection contains all the data passed in the message request
if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity)
{
// Obtain the target entity from the input parameters
Entity entity = (Entity)context.InputParameters["Target"];
// Target is an email
if (entity.LogicalName.ToLower().Equals("email"))
{
try
{
// Obtain the organization service reference that you'll need for web service calls
IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);
// Execute msdyn_ApplyRoutingRuleEntityRecord request
OrganizationRequest request = new OrganizationRequest("msdyn_ApplyRoutingRuleEntityRecord");
request["Target"] = new EntityReference("email", entity.Id);
service.Execute(request);
}
catch (Exception ex)
{
tracingService.Trace("SamplePlugin: {0}", ex.ToString());
throw;
}
}
}
}
}
}
}
Susijusi informacija
Maršruto parinkimo apžvalga
Įrašų nukreipimo nustatymas
Įrašų nukreipimas rankiniu būdu
Automatinis įrašų nukreipimas naudojant srautą