Histórico da Página
...
Nesta etapa o configurador realizara a validação das informações de Servidor Portas bem como da disponibilidade de serviços necessários para a integração, como por exemplo EAIService que é um Web Service básico para integração bem como demais serviços que serão definidos no Pacote de integração.
Para a validação de Serviço o pacote devera implementar o método GetApiServicesRequired
3) Diagnostico de Compartilhamentos
Atualmente o analista responsável pelo desenvolvimento da integração pode usar diversos "entry Points" disparados em pontos durante o processamento da mensagem.
Códigos C# (.NET) são criados e armazenados em uma tabela de banco chamada GSourceCode. Esses códigos podem ser "vinculados" a esses pontos.
...
Para o correto funcionamento de integrações que envolvem Protheus com RM existem um conjunto de configurações de compartilhamentos, compatíveis, incompatíveis e recomendadas. No EAI 2.0 cada adapter pode possuir um conjunto de configurações.
Para isto os adapters devem implementar os seguintes métodos.
ValidateLevelCompanyBranch - Responsável por validação se uma dada configuração é valida, inválida e retornar a configuração recomendada. Este método alem de ser utilizado pelo Configurador também é utilizado no recebimento de mensagens.
Exemplo:
Bloco de código | ||||
---|---|---|---|---|
| ||||
/// <summary>
/// Valida o nível de compartilhamento da tabela.
/// Não é permitido a utilização de modo Exclusivo por Filial
/// Não é recomendado a utilização de registro compartilhado por empresa. (Replica)
/// </summary>
/// <param name="parms">EAIValidatedSharedModeParams</param>
/// <param name="result">EAIValidatedSharedModeResult</param>
/// <param name="sharedModeColigada">SharingModeEnum</param>
/// <param name="sharedModeFilial">SharingModeEnum</param>
/// <returns>Retorna EAIValidatedSharedModeResult</returns>
public override EAIValidatedSharedModeResult ValidateLevelCompanyBranch(EAIValidatedSharedModeParams parms, EAIValidatedSharedModeResult result, SharingModeEnum sharedModeColigada, SharingModeEnum sharedModeFilial)
{
string tableProtheus = "TV0"; // doNotLocalize
if (sharedModeColigada != SharingModeEnum.smCompartilhado)
{
result.ValidationMessage = string.Format(Properties.Resources.sPrjsharedModeValidated, tableProtheus);
}
if (sharedModeFilial == SharingModeEnum.smExclusivo)
{
result.ValidationMessage += string.Format(Properties.Resources.sPrjsharedModeValidated, tableProtheus);
result.Validated = false;
}
return result;
} |