Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

01. DADOS GERAIS


Produto:

Solucoes_totvs
SolucaoTOTVS Logística Recintos Aduaneiros

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linhas_totvs
SegmentoDistribuição
RegionConstrução Projetos
LinhaLinha Logix

Segmento:

Segmentos_totvs
SegmentoLogística

Módulo:EAI Service
Função:Serviço de integrações com sistemas externos

02. 

...

Desenvolver um novo servidor de catracas para a solução TOTVS Logística Recintos Aduaneiros que funcione como um serviço do Windows e com suporte a multi-thread para o gerenciamento dos equipamentos de controle de acesso seguro.  Essa nova solução se faz necessária, pois, a primeira versão do servidor, o gerenciamento de catracas trabalha como um aplicativo que deve ficar aberto na tela do sistema operacional, exigindo que este mantenha-se autenticado para o programa operar. Também possui uma limitação relacionada ao gerenciamento mono thread dos equipamentos, onde todos os recursos de funcionamento são compartilhados com todas as catracas conectadas ao servidor causando constantemente erros de memória e travamentos excessivos. Além disso, novas soluções de drivers de comunicação de equipamentos não são suportados, limitando-se apenas ao Henry7x, DIMEP Micropoint IP e DIMEP Biopoint IP. Soluções como a Henry7x não são mais comercializadas pelo fabricante, dificultando a implantação do servidor de catracas em novos clientes.

03. SOLUÇÃO

Para resolver as questões relacionadas ao módulo de servidor de catracas e controle de acesso do TOTVS Logística Recintos Aduaneiros, foi desenvolvida nova solução como um serviço do Windows e com suporte a multi-thread para os equipamentos de controle de acesso seguro/catracas. Essa nova solução prevê uma arquitetura melhorada, com maior desempenho e sem compartilhamento de recursos entre os equipamentos. Dessa forma, cada equipamento operará individualmente com o serviço do servidor de catracas, como um subprograma, a cada equipamento conectado. Com a nova arquitetura, também será possível integrar novos drivers de equipamentos de forma facilitada, exigindo apenas a implementação/desenvolvimento da interface de comunicação com um novo driver de fabricante, diminuindo assim, custos relacionados a suportabilidade de novos equipamentos de diferentes fabricantes.

Atualmente esta solução está suportando os drivers listados abaixo:

...

OBJETIVO

O EAI Service, é uma aplicação do tipo "Serviço Windows" desenvolvida para realizar a integração de dados do sistema TOTVS LOGÍSTICA RECINTOS ADUANEIROS com outros sistemas (aplicações externas).

Este serviço é responsável pela geração e envio das mensagens para uma determinada aplicação externa.

Após o sistema SARA gerar as pendências para integração, o módulo EAI Service efetua a leitura da tabela de pendências (tab_eai_send) verificando se existe alguma mensagem para ser gerada, se existir, efetua a geração da mensagem gravando na tabela (tab_eai_message) e envia para o endereço da aplicação externa configurado na mensagem (tab_eai_transaction).

Ao receber a resposta da integração da aplicação externa, o serviço guarda a mensagem de retorno atualizando a  tabela (tab_eai_message), informando se a integração foi realizada com sucesso ou se retornou alguma inconsistência.

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNameDiagrama EAIService
simpleViewerfalse
width
diagramWidth711
revision3


03. DEMAIS INFORMAÇÕES

Após a instalação do serviço, esse programa deverá ser configurado para comunicação com o banco de dados, escolha dos diretórios de logs e ativação de recursos desejados.

Na instalação do programa, automaticamente será criado um arquivo no diretório de instalação chamado "ServidorCatracaService.ini" para as configurações do serviço.

Totvs custom tabs box
tabsPré-requisitos, Recursos Suportados,Instalação /Desinstalação, e Configuração do Serviço, Configuração de Equipamentos/Catracas, Integrações disponíveis, Monitoramento
idsprerequisitos0,recursos1,instalacao,configuracao,catracas,monitoramento2,3
Totvs custom tabs box items
defaultyes
referenciaprerequisitos0

São pré-requisitos para a instalação do serviço EAI Service:

  1. Sistema operacional Microsoft

Ambiente

  1. Windows Server 2012 R2 ou superior
  2. Driver do banco de dados SQL Server "SQL Server Native Client 11.0"
  3. Pasta (Redist) de redistribuição do TOTVS Logística Recintos Aduaneiros registrada na máquina. Essa pasta com os arquivos de redistribuição acompanha os pacotes do TOTVS Logística Recintos Aduaneiros juntamente com um arquivo "Redist_SARA_Register.bat" para registra-la.
  4. Driver dos equipamentos de controle de acesso seguro (catracas) do fabricante utilizado, caso possua.
    1. para o Henry 8x não é necessário instalação de driver, pois a comunicação é feita diretamente via socket com os equipamentos.
  5. e;
  6. 500 MB de espaço em disco.

Instalando o serviço isoladamente

Quando da necessidade de instalação do serviço de maneira isolada do ecossistema TOTVS Logística Recintos Aduaneiros, os seguintes passos devem ser observados:

  1. Efetuar a cópia do diretório Redist, presente no ecossistema TLRA, para um caminho acessível no servidor de destino e;
  2. Incluir na variável de ambiente PATH, do sistema operacional, o caminho completo para os complementos constantes no diretório Redist\Win32 - Ex.: C:\TOTVS\SARA\Redist\Win32.

Para garantir o perfeito funcionamento do serviço, quando instalado, este requer:

  1. Microsoft .NET Framework 3.5 e suas dependências e;
  2. Visual C++ 2008 - e seguintes - e suas dependências.

Instalando o EAI Service em múltiplas instâncias

Quando da necessidade de instalação de múltiplas instâncias do EAI Service no mesmo servidor, as instruções referenciadas aqui devem ser observadas. Contudo, para facilitar os processos de implantação e atualização, os seguintes requisitos devem ser observados:

  1. As bibliotecas .BPL devem ser movidas para um diretório acessível no servidor de destino - Ex.: C:\TOTVS\SARA\Services\EAI Service\Lib;
  2. Cada instância do serviço deve ter seu diretório específico, contendo os demais arquivos - executável e arquivos de configuração - e contemplando o nome da instância - Ex.: C:\TOTVS\SARA\Services\EAI Service\Homologação - e;
  3. O caminho para as bibliotecas .BPL  deve estar na variável de ambiente PATH do sistema operacional;Módulo de Controle de Acesso do TOTVS Logística Recintos Aduaneiros na versão 12.1.45 ou superior

Para realizar a instalação do novo serviço de servidor de catracas, primeiro deve-se criar uma pasta para instalação do serviço. Recomendamos criar em "C:\SARA\Services\ServidorCatracaService", mas caso desejar, pode ser criado outra estrutura a escolha. Para essa documentação, será considerado a estrutura sugerida.

Totvs custom tabs box items
defaultno
referenciarecursos

Computacional

  1. Serviço do Windows
  2. Multi-thread. Cada equipamento utilizará uma ou mais threads de processamento e não compartilhará recursos computacionais entre outros equipamentos.

Controle

  1. Controle de acesso online
    1. crachás mestre
    2. validações de permissão de acesso (permissões de funcionários/visitantes e acesso temporário, acessos duplicados, lista branca BDCC)
    3. controle de bloqueio de pessoas
    4. controle de crachás inativos
    5. controle de perfis de acesso
    6. controle de horários permitidos de acesso
    7. controle por pontos de acesso internos
    8. controle de biometrias e crachás de visitantes (para recolhimento de crachás para equipamentos com urna)
    9. controle para diferentes tipos de equipamentos (catracas, torniquetes e totem)

Gerenciamento

  1. Criptografia para configurações de acesso ao banco de dados
  2. Integração de lista de crachás de visitantes
  3. Integração de listas de biometrias
  4. Recurso de controle de logs por equipamento em arquivo, permitindo ativar e desativar o monitoramento em arquivo. Logs do serviço de servidor de catraca (execução e erros), log do gerenciador de equipamentos e log por equipamento, todos em arquivos distintos.
  5. Recurso de reconexão automática para equipamentos offline por perda de conexão
  6. Recurso de integração automática nos equipamentos para biometrias registradas no módulo de controle de acesso do TOTVS Logística Recintos Aduaneiros
  7. Sincronização automática de lista de crachás de visitantes, relógio e configurações de equipamentos na inicialização do serviço.
Totvs custom tabs box items
defaultno
referenciainstalacao
Totvs custom tabs box
tabsGuia de Instalação, Guia de Desinstalação
idsguiainstalacao,guiadesinstalacao
Totvs custom tabs box items
defaultyes
referenciaguiainstalacao
  1. Remova as opções de somente leitura do diretório de instalação. Exemplo: "C:\SARA\Services\ServidorCatracaService"
  2. Mova o arquivo "ServidorCatracaService.exe" para o diretório de instalação pretendido
  3. Abra o programa "CMD" (Prompt de comando) do Windows com privilégios de administrador
  4. No CMD, navegue até o diretório de instalação
  5. execute o comando: ServidorCatracaService.exe /install
    1. Image Removed
  6. Com a instalação bem sucedida, o novo serviço aparecerá em "services.msc"
    1. Image Removed
Totvs custom tabs box items
defaultno
referenciaguiadesinstalacao
  1. Abra o programa CMD do Windows com privilégios de administrador
  2. Navegue até o diretório de instalação do serviço de servidor de catraca. Exemplo: 
  3. Execute o comando: ServidorCatracaService.exe /uninstall
    1. Image Removed
  4. como alternativa, o comando "sc delete sServidorCatracaService" também pode ser utilizado para desinstalação do programa

Para detalhes de configuração que devem ser feitas antes de iniciar o serviço, consulte as abas de configuração deste documento.

Totvs custom tabs box items
defaultno
referenciaconfiguracao
Bloco de código
languagetext
titleExemplo de arquivo ServidorCatracaService.ini criado
[FILESECURITY]
Active=0
[DBCONNECTION]
DatabaseID=MSSQL
ServerName=
DatabaseName=sara_db
User=sa
Password=
[SERVICEFILES]
ErrorLog=C:\SARA\Services\ServidorCatracaService\LogsServicoCatracas\ServidorCatracaServiceError.log
ExecutionLog=C:\SARA\Services\ServidorCatracaService\LogsServicoCatracas\ServidorCatracaServiceExecution.log
EquipmentManagerLogDirectory=C:\SARA\Services\ServidorCatracaService\LogsCatracas\
EquipmentsLogDirectory=C:\SARA\Services\ServidorCatracaService\LogsCatracas\
[SERVICE]
ServiceName=TOTVS | Servidor de Catracas - Recintos Aduaneiros
LogEquipmentsInFileOnStart=0
AutoReconnectOfflineEquipmentsOnStart=0
IntervalAutoReconnectOfflineEquipments=60000
AutoRegisterBiometricsInEquipmentsOnStart=0
IntervalRegisterBiometricsInEquipments=120000

Detalhamentos das Configurações

1

Componentes

O serviço EAIService possui os seguintes componentes:

  • Módulos
    • EAIService.exe - Arquivo executável do serviço.
    • EAILog.bpl - Arquivo utilizado pelo "EAIService.exe" para a geração dos 'LOGs' do EAI no banco de dados.
  • Arquivo INI
    • EAIService.ini - Arquivo de inicialização configurado para o serviço.
    • Config.ini - Arquivo de inicialização configurado para o serviço. 

Instalação do serviço

A instalação do serviço EAIService poderá ser instalada utilizando a pasta "EXECUTAVEIS" onde contém os outros módulos do sistema, ou também poderá ser instalada em uma outra pasta, exemplo SERVICES.

Para a instalação do serviço na pasta "SERVICES", deverá ser seguido os seguintes passos:


1) A pasta SERVICES deverá ser criada no diretório que contém a pasta "EXECUTAVEIS" no servidor de arquivos do SARA.

Exemplo:

Image Added


2) Na pasta "SERVICES", deverá ser criada a pasta "Config" e a pasta "EAIService"

Image Added


3) Na pasta "Config", criar o arquivo CONFIG.INI com o conteúdo abaixo informando o servidor de banco de dados, a base de dados, um usuário do banco de dados para o serviço do EAI e a sua senha. Na chave FILE, também deverá ser informado os diretórios e arquivos de LOG. Por sugestão, criar a pasta LOG no diretório do EAIService.

Painel
titleConfig.ini


[CONNECTION]
databaseID=MSSQL
servername=
databasename=
user=
password=
[FILE]
ErrorLog=C:\TOTVS 12\SARA\SARA Server\SARA_10\SERVICES\EAIService\Log\error.log
LanguageLog=C:\TOTVS 12\SARA\SARA Server\SARA_10\SERVICES\EAIService\Log\language.log
ExecutionLog=C:\TOTVS 12\SARA\SARA Server\SARA_10\SERVICES\EAIService\Log\execution.log
[CONFIG]
RecordLogExecutionLevel=5
RecordLogExecution=1


4) Na pasta EAIService, copiar os arquivos "EAIService.exe" e "EAILog.bpl" distribuído no pacote do SARA dentro da pasta 'EXECUTAVEIS'.

Image Added


5) Para a instalação do serviço é necessário que os arquivos de redistribuição das aplicações DELPHI estejam inclusas no PATH do Windows para não acusar erros de dependências de arquivos. Caso não esteja, executar o arquivo "Redist_SARA_Register.bat" como administrador conforme exemplo abaixo:

Image Added

Após a execução, será necessário fechar o "prompt de comando" e abrir outro novamente.


6) Na pasta EAIService, abrir um prompt de comando como 'Administrador", e executar o comando para a instalação do serviço.

Exemplo:

Image Added


Após a instalação será exibida a seguinte mensagem:

Image Added


7) Após a instalação do serviço, será criado o arquivo "EAIService.ini" para configuração. Deverá ser editado o arquivo informando os dados de conexão do banco de dados, arquivos de LOG, e outras configurações. O campo FrequencyInSeconds determinará á frequência da verificação da fila de pendências do EAIService.

Image Added

Painel
titleEAIService.ini

[FILESECURIT]
Active=0
[SHARECONNECTION]
configIni=';..\config\config.ini
[CONNECTION]
databaseID=MSSQL
servername=
databasename=
user=
password=
[FILE]
erviceExecution.log
ErrorLog=C:\TOTVS 12\SARA\SARA Server\SARA_10\SERVICES\EAIService\Log\error.log
LanguageLog=C:\TOTVS 12\SARA\SARA Server\SARA_10\SERVICES\EAIService\Log\language.log
ExecutionLog=C:\TOTVS 12\SARA\SARA Server\SARA_10\SERVICES\EAIService\Log\execution.log
[CONFIG]
language=pt-br
RecordLogExecutionLevel=5
RecordLogExecution=1
FrequencyInSeconds=10
[SERVER]
serviceName=TOTVS | SARA - EAI Service


8) Após a configuração do arquivo "EAIService.ini", o serviço poderá ser inicializado.

Image Added


Na pasta configurada para o LOG no arquivo CONFIG.INI, será possível visualizar o arquivo de execução e saber se o serviço foi inicializado com sucesso.

Image Added


Totvs custom tabs box
tabsDicionário de dados
ids11
Totvs custom tabs box items
defaultyes
referencia11

Diagrama

Image Added

Tabelas

  • tab_eai_operation_system

Tabela de registro de operações do sistema SARA que servirão de gatilhos para algum tipo de integração com outro sistema.

  • tab_eai_external_application

Tabela de registro de aplicações externas que possuem integração com o sistema SARA.

  • tab_eai_transaction

Tabela de registro das transações/mensagens de uma determinada aplicação externa que possuem integração com o sistema SARA

  • tab_eai_adapter

Tabela de registro dos adaptadores que estão disponíveis para um determinada mensagem/transação.

Um adaptador é uma função do sistema desenvolvida para enviar, receber ou enviar/receber a mensagem. Uma mensagem poderá possuir um adaptador para envio e outro para recebimento se for o caso.

  • tab_eai_send_route

Tabela de registro da rotas habilitadas para a integração entre o SARA e as aplicações externas. 

Para o sistema A, poderá ser registrada uma rota somente para envio de informações da entidade de clientes, e para o sistema B, registrar uma rota somente para receber informações da entidade de clientes ou produtos.

As rotas poderão ser cadastradas de acordo com os adaptadores disponíveis para cada transação/mensagem.

  • tab_eai_send

Tabela de registro de filas para a integração, ou seja, para geração e envio da mensagem para uma determinada aplicação externa.

O registro nesta tabela são gerados pelo sistema SARA, de acordo com o gatilho vinculado a um determinado adaptador de uma mensagem/transação.

  • tab_eai_message

Tabela de registro das mensagens enviadas para uma determinada aplicação externa.

Por meio desta tabela é possível ver o conteúdo da mensagem de envio e o conteúdo da mensagem de retorno do processamento da aplicação externa, sabendo se a mensagem foi processada (integrada) com sucesso ou se houve erros na integração, e também o tipo de erro.

FILESECURITYParâmetroDescriçãoActive

se configurado com valor 0, irá realizar uma criptografia para os parâmetros User e Password. Após a criptografia aplicada pela execução do serviço, o seu valor irá automaticamente ser alterado para 1, indicando que a criptografia de segurança foi aplicada ao arquivo.

OBS: Para alterar os dados de autenticação com o banco de dados, retorne esse valor para 0 e modifique novamente os dois campos User e Password. Após o serviço ser iniciado, a criptografia será aplicada novamente.

DBCONNECTIONDatabaseIDidentificação do driver de banco de dados utilizado. Valor padrão "MSSQL". Não deverá ser alterado.ServerNamenome do servidor/instância do banco de dados SQL Server.DatabaseNamenome da base de dados a ser conectada. Exemplo: sara_dbUser

usuário para autenticação no banco de dados. Recomenda-se sempre utilizar o usuário "sa" por possuir maiores privilégios que o serviço de servidor de catracas pode necessitar com o banco de dados.

OBS: para alterá-lo, reveja o item Active de FILESECURITY.

Password

senha do usuário para autenticação com o banco de dados.

OBS: para alterá-lo, reveja o item Active de FILESECURITY.

SERVICEFILESErrorLogarquivo onde será salvo os logs de erro do serviço de servidor de catracas (apenas log do serviço).ExecutionLogarquivo onde será salvo os logs de execução do serviço de servidor de catracas (apenas log do serviço).EquipmentManagerLogDirectorydiretório onde será salvo os logs do gerenciador de equipamentos de catracas. Este log limita-se ao mecanismo de gerenciamento como servidores adicionados/removidos, integração de listas de crachás de visitantes, integração de listas de biometrias, início e parada do gerenciador, etc.EquipmentsLogDirectorydiretório onde será salvo os logs individuais de cada equipamento (catraca) conectado ao gerenciador. Este log irá mostrar as requisições online realizadas, validações, etc.SERVICE
ServiceNamenome do serviço de servidor de catracas que será apresentado no "services.msc" do Windows.LogEquipmentsInFileOnStartpermite ativar o monitoramento de acessos aos equipamentos por arquivos de log já na iniciação do programa. Valor 0 não gera logs dos equipamentos em arquivo e valor 1 gera o log dos equipamentos em arquivos.AutoReconnectOfflineEquipmentsOnStartpermite ativar a reconexão automática de equipamentos que ficarem offline por perda de conexão mantendo a configuração ativada ou desativada já na iniciação do programa. Valor 0 desativa a reconexão automática e valor 1 ativa a reconexão automática.IntervalAutoReconnectOfflineEquipmentsintervalo de checagem de equipamentos offline para reconexão automática. Tempo configurado em milisegundos.AutoRegisterBiometricsInEquipmentsOnStart

permite ativar o envio automático de biometrias cadastradas no módulo controle de acessos do TOTVS Logística Recintos Aduaneiros já na iniciação do programa. Valor 0 desativa o envio automático e valor 1 ativa o envio automático.

OBS: o registro de biometrias nos equipamentos possui um desempenho baixo por conta do módulo de biometria nos próprios equipamentos. Cada biometria enviada leva alguns segundos no equipamento para efetivação do cadastro.

IntervalRegisterBiometricsInEquipments

intervalo de checagem de biometrias pendentes de integração com o equipamento de catracas. Tempo configurado em milisegundos.

OBS: por conta do baixo desempenho nos equipamentos nos módulos de biometria para registro, recomenda-se não utilizar intervalos muito curtos de checagem.

Totvs custom tabs box items
defaultno
referenciacatracas

A configuração dos equipamentos (catracas) continua no módulo Controle de Acesso, menu Cadastros, submenu Catraca do TOTVS Logística Recintos Aduaneiros. Os drivers para o novo servidor de catracas em serviço será reconhecido pelo cadastro do campo Modelo da tela de Cadastro de Catraca. Exemplo: para a catraca conectar-se a um equipamento do fabricante Henry, com o driver Henry  8x, selecione o modelo HENRY 8X no cadastro, conforme imagem de exemplo abaixo:

Image Removed

Após as configurações realizadas, o serviço já pode ser iniciado em "services.msc" pelo botão "Iniciar".
Informações
titleIMPORTANTE
Modelos ainda não suportados pelo novo servidor de catracas em serviço serão ignorados pelo gerenciador. Clientes que possuem equipamentos/catracas com drivers suportados somente pelo servidor de primeira versão, não poderão aproveitar a nova solução.

O monitoramento do serviço de servidor de catracas poderá ser realizado de duas maneiras. Por arquivos de log e por aplicativo de monitoramento.

Totvs custom tabs box items
defaultno
referenciamonitoramento
Totvs custom tabs box
tabsPor Arquivos de Log, Por Aplicativo de Monitoramento
idsmonitorlog,monitorapp
2

Para saber mais sobre cada integração deverão ser consultados os manuais disponibilizados abaixo:

1) Pucomex | Módulo CCT - Controle de Carga e Trânsito de Exportação

2) Pucomex | Módulo Recintos

yesmonitorlog
Totvs custom tabs box items
default
no
referencia
3

Para

ser possível o monitoramento dos acessos por arquivos de log, o parâmetro LogEquipmentsInFileOnStart deve estar ligado com o valor 1 no arquivo "ServidorCatracaService.ini". Desse modo, cada equipamento gerará um arquivo com a data do dia atual e com o nome do equipamento, permitindo visualizar as interações de acesso realizadas por aquele equipamento.

Para acessar os arquivos de logs gerados, basta acessar o diretório configurado em EquipmentsLogDirectory no arquivo "ServidorCatracaService.ini". A imagem abaixo representa um arquivo de log de um determinado equipamento:

Image Removed

Os arquivos de log do gerenciador de equipamentos pode ser acessado pelo diretório configurado em EquipmentManagerLogDirectory no arquivo "ServidorCatracaService.ini". A imagem abaixo representa um arquivo de log do gerenciador de equipamentos:

Image Removed

Já os logs de execução e erros do serviço do Windows de servidor de catracas pode ser acessado pelos arquivos configurados nos parâmetros ExecutionLogErrorLog configurados no arquivo "ServidorCatracaService.ini". A imagem abaixo representa os logs de execução e erro do serviço.

Image Removed

Totvs custom tabs box items
defaultno
referenciamonitorapp

(erro) Este recurso ainda está em construção.

04. DEMAIS INFORMAÇÕES

Card documentos
InformacaoEsta implementação é valida somente para a versão do módulo compilado no DELPHI 10 - TOKYO.
TituloIMPORTANTE!

realizar o monitoramento das integrações do TL Recintos Aduaneiros com outros sistemas por meio do EAIService, deverá ser instalado e utilizado o módulo "EAI Monitor Viewer" conforme manual disponível no link Módulo - EAI Monitor Viewer.


Image Added

...


Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>