Registro e implantação de um plug-in personalizado para usar seu provedor preferido de dados geoespaciais
Antes de um plug-in poder ser usado, ele deve ser implantado e registrado no servidor.
A compilação de seu projeto de plug-in resultará em um assembly de plug-in (.dll ). Este artigo inclui informações sobre como implantar e registrar o assembly do plug-in para que as duas ações geoespaciais usem seu provedor preferido de dados geoespaciais. Para obter informações sobre como criar um plug-in, consulte Criar um plug-in personalizado para usar seu provedor preferido de dados geoespaciais
Considerações sobre a ordem de execução ao registrar seu plug-in personalizado
Ao registrar vários plug-ins para a mesma entidade e mensagem, a sequência de execução dos plug-ins é definida pela Ordem de Execução de plug-ins individuais. Aquele com o valor de ordem de execução mais baixo é executado primeiro, seguido por aqueles com valor de ordem de execução maiores.
O valor da ordem de execução do plug-in padrão no Field Service e Project Service que usa o Bing Maps para as ações de matriz de código geográfico e distância é definido como 1. Você pode definir a ordem de execução do plug-in personalizado para ser executada antes (menor que 1) ou depois (maior que 1) do plug-in padrão.
A tabela a seguir descreve como é possível que seu plug-in personalizado seja tratado dependendo da ordem de execução especificada nas condições de registro e de parâmetros de plug-in.
Hierarquia | Description |
---|---|
Primário | Se quiser tratar seu plug-in personalizado como primário e o plug-in padrão do Bing como secundário, defina a ordem de execução de seu plug-in como 0. Isso resultará em seu plug-in sendo executado antes do plug-in do Bing. O plug-in do Bing examinará os valores "latitude" e "longitude" que seu plug-in personalizado retorna e somente continuará com o código geográfico do Bing se ambos os valores retornados forem 0. Essa seria a maneira preferida se esperar que seu plug-in personalizado forneça a maior parte de suas necessidades de codificação geográfica. |
Secundário | Se quiser tratar seu plug-in personalizado como secundário em relação ao plug-in do Bing, fornecendo o serviço de codificação geográfica somente quando o código geográfico do Bing apresentar falha, defina a ordem de execução de seu plug-in como 2. Você também poderia escrever o código do plug-in personalizado de tal modo que ele primeiro examinará os valores "latitude" e "longitude" que o plug-in do Bing retorna e somente continuará se ambos os valores retornados forem 0. Essa seria a execução preferida se esperar que o Bing forneça a maior parte de suas necessidades de codificação geográfica. |
Substituir completamente | Se você quiser que seu plug-in personalizado sempre seja a fonte de codificação geográfica e substitua completamente a codificação geográfica do Bing, mesmo quando seu plug-in personalizado apresentar falha no código geográfico, você precisará sempre retornar valores diferentes de 0,0 para "latitude" e "longitude". Convém definir quais condições de exceção geram uma exceção .NET e quais simplesmente não retornam um resultado. Para retornar um resultado e não permitir que nenhum plug-in subsequente retorne um resultado, seu plug-in personalizado precisa retornar algo como 0,0001, 0,0001. |
Implantar e registrar seu plug-in personalizado
Você pode implantar e registrar plug-ins usando a ferramenta de registro de plug-in ou programaticamente escrevendo o código de registro usando certas classes do SDK. Mais informações: Implantar e registrar plug-ins.
Nesta seção, usaremos a ferramenta de registro de plug-in, que fornece uma interface gráfica do usuário para implantar e registrar plug-ins facilmente. Além disso, esta seção contém informações que assumem que você esteja trabalhando com o plug-in personalizado de exemplo e que criou o projeto de exemplo para gerar o assembly CustomPlugin-FS-Geospatial.dll. Se tiver desenvolvido seu próprio plug-in personalizado, o nome do assembly e do plug-in serão diferentes, mas as instruções gerais para registrar o plug-in permanecerão as mesmas.
Gorjeta
Para obter informações detalhadas sobre como usar a ferramenta de registro de plug-in em geral, consulte Passo a passo: Registrar um plug-in usando a ferramenta de registro de plug-in
Obtenha a ferramenta de Registro de plug-in. Para obter a Plug-in Registration Tool, consulte Baixar ferramentas do NuGet.
Navegue até a pasta
[Your folder]\Tools\PluginRegistration
e clique duas vezes no arquivo PluginRegistration.exe para executar a ferramenta.Clique em CRIAR NOVA CONEXÃO.
Na caixa de diálogo Logon, especifique as credenciais para entrar em sua instância do Dynamics 365 e clique em Logon.
Se você tiver acesso a várias organizações na instância do Dynamics 365, uma lista de organizações será apresentada para escolha para conexão. Caso contrário, será usada a organização padrão.
Você deve ver uma lista recolhida dos plug-ins registrados ou assemblies de atividades de fluxo de trabalho e personalizados. Selecione Registrar>Registrar Novo Assembly.
Na caixa de diálogo Registrar Novo Assembly:
Na seção Etapa 1, clique no botão de reticências [...] para selecionar o assembly CustomPlugin-FS-Geospatial.dll.
Na seção Etapa 2, selecione ambos os plug-ins.
Na seção Etapa 3, selecione a opção Área restrita.
Na seção Etapa 4, selecione a opção Banco de dados.
Selecione Registrar plug-ins selecionados.
O assembly CustomPlugin-FS-Geospatial.dll e os dois plug-ins para msdyn_GeocodeAddress e msdyn_RetrieveDistanceMatrix são registrados e implantados no servidor.
A próxima etapa é registrar uma etapa para cada ação. Uma etapa refere-se à entidade da etapa de processamento da mensagem SDK usada para configurar quando e como o plug-in deve ser executado.
Na exibição de árvore Plug-ins e atividades de fluxo de trabalho personalizadas registrados , expanda o nó (Assembly) CustomPlugin-FS-Geospatial e selecione um plug-in registrado, digamos Microsoft.Crm.Sdk.Samples.msdyn_RetrieveDistanceMatrix.
Clique com o botão direito do mouse em Microsoft.Crm.Sdk.Samples.msdyn_RetrieveDistanceMatrix e selecione Registrar Nova Etapa.
Na caixa de diálogo Registrar Nova Etapa, especifique estas informações:
- Mensagem: msdyn_RetrieveDistanceMatrix
- Ordem de execução: conforme necessário. Consulte Considerações sobre a ordem de execução ao registrar seu plug-in personalizado anteriormente neste artigo.
- Etapa de Execução do Pipeline de Eventos: PostOperation
- Modo de Execução: Síncrono
- Deixe o resto dos campos com os valores padrão. Clique em Registrar Nova Etapa.
Em seguida, clique com o botão direito do mouse no plugin Microsoft.Crm.Sdk.Samples.msdyn_GeocodeAddress e selecione Registrar Nova Etapa.
Na caixa de diálogo Registrar Nova Etapa, especifique estas informações:
- Mensagem: msdyn_GeocodeAddress
- Ordem de execução: conforme necessário. Consulte Considerações sobre a ordem de execução ao registrar seu plug-in personalizado anteriormente neste tópico.
- Etapa de Execução do Pipeline de Eventos: PostOperation
- Modo de Execução: Síncrono
- Deixe o resto dos campos com os valores padrão. Clique em Registrar Nova Etapa.
Agora você concluiu as etapas de registro para chamar seu plug-in personalizado para ambas as ações geoespaciais.
Se você exibir uma das ações geoespaciais do Universal Resource Scheduling na ferramenta Registro de Plug-in, verá ambos os plug-ins, o padrão e o seu personalizado, registrados para a ação. Por exemplo, veja os plug-ins para a açãomdyn_GeocodeAddress.
Confira também
Exemplo: plug-in personalizado para usar a API do Google Maps como provedora de dados geoespaciais