Páginas filhas
  • DT 3 - Instalador do Winthor2c e configuração de agendamentos de envio de informações

01. DADOS GERAIS

Produto:

TOTVS Distribuição e Varejo

Linha de Produto:

Linha Winthor

Segmento:

Distribuição

Módulo:N/A
País:Brasil
Ticket:N/A
Requisito/Story/Issue (informe o requisito relacionado) :N/A


02. SITUAÇÃO/REQUISITO

Criar um instalador de extração de dados do banco do ERP Winthor para a plataforma do Totvs Antecipa


Critérios de Aceitação

  • Criar um instalador capaz extrair os dados do banco de dados do ERP Winthor e enviar esses dados a plataforma do TOTVS Antecipa

03. SOLUÇÃO

Para que a integração ocorra com sucesso, foi criado o instalador Winthor2c para extrair esses dados e enviar para a plataforma do TOTVS Antecipa


Para que seja realizado o envio de dados do ERP Winthor para a plataforma TOTVS Antecipa, é necessário a instalação do serviço do Winthor2c em uma máquina que tenha acesso a internet e ao banco de dados do cliente. Esta máquina preferencialmente não pode ser a mesma que esteja instalado o WTA - Winthor Anywhere ou o DocFiscal para que não haja concorrência entre os serviços.

  1. Execute o arquivo instalador “winthor2c.exe” como administrador, conforme disponível no Link CCW: Opção Winthor2c - Painel Financeiro




  2. No assistente de instalação clique na opção de “Avançar” para prosseguir com a instalação.




  3. Para que o arquivo de configurações seja criado e executado corretamente, é necessário que seja preenchido com os dados abaixo:
    1. Fornecidos pelo TOTVS Antecipa:
      1. Client ID
      2. Client Secret
    2. Acesso ao Banco de Dados Winthor
      1. Host/IP e Porta: ip ou hostname de onde está o banco de dados e sua respectiva porta
      2. Usuário/senha: usuário e senha do banco de dados de produção
      3. Serviço/SID e Porta API: Serviço ou SID da instância do Banco de dados e a Porta API é uma porta nova, sem uso, para a instalação do winthor2c
  4. Após preencher os dados clique na opção de “Avançar




  5. Aguarde a instalação e a inicialização do serviço.




  6. Ao finalizar a instalação clique na opção “Concluir”.




  7. Ao final da instalação, deve-se iniciar o serviço do Winthor2c no Windows, para que as Views, Functions, Table e Triggers sejam instaladas no banco de dados. Assim sendo, deve-se acessar o banco de dados por algum programa de gerenciamento de banco de dados (SQL Navigator, PL/SQL, SQL Developer e entre outros) e verificar se os objetos abaixo, foram criados:
    1. Views:
      1. VW_CLIENTES_FILIAL
      2. VW_MOEDA_EMPRESA
      3. VW_PARCELAS_PREST_ANTECIPA
      4. VW_VENC_REAL_ANTECIPA
    2. Functions:
      1. F_DTVENCIMENTOANTECIPA
    3. Tables:
      1. PCW2C_QUEUE (Gerencia Fila de Envio de dados)
    4. Triggers:
      1. TRG_PCCLIENT2C
      2. TRG_PCCOB2C
      3. TRG_PCDESD2C
      4. TRG_PCFILIAL2C
      5. TRG_PCNFSAID_2C
      6. TRG_PCNFSAID_NOTA_2C
      7. TRG_PCPREST_2C
    5. Indexes:
            i. W2C_QUEUEID_PK
    6. queries
            i. PCCLIENT
            ii. PCCOB
            iii. PCDESD
            iv. PCFILIAL
            v. PCNFSAID
            vi. PCPREST
            vii. PCPREST_CANC
            vii. PCPREST_DESD
            ix. PCPREST_DIARIA
            x. VW_CLIENTES_FILIAL
            xi. VW_MOEDA_EMPRESA
            xii. VW_PARCELAS_PREST_ANTECIPA
            xiii. VW_PARCELAS_PREST_ANTECIPA_DAY
            xiv. VW_PARCELAS_PREST_ANTECIPA_DIARIA
            xv. VW_VENC_REAL_ANTECIPA
            xvi. VW_VENC_REAL_ANTECIPA_DIARIA
    7. scriptupdate
         
        i. UPDATEPCCLIENT
            ii. UPDATEPCCOB
            iii. UPDATEPCFILIAL
            iv. UPDATEPCNFSAID
            v. UPDATEPCPREST
  8. Caso haja a necessidade de verificar os dados de instalação, pode-se acessar o caminho "C:\pcsist\produtos\winthor2c\target\settings.json" e abrir o arquivo para verificar os dados informados na instalação, como senha, nome do banco, client id e etc

  1. O serviço será instalado no seguinte caminho: “C:\pcsist\produtos\Winthor2c”, dentro desta pasta, existe uma subpasta que armazena o processamento das consultas realizadas no banco de dados que é a w2cFiles, é possível conferir as seguintes informações:




    A pasta “queries” armazena as consultas que serão executadas pelo Winthor2c, durante a instalação já são configuradas 31 consultas padrões de todas as tabelas que devem ser sincronizadas, divididas entre carga inicial e sincronização diária. O padrão de envio dos dados é de 1 em 1 hora. : Caso seja necessário incluir novos agendamentos devem ser realizados via POSTMAN (vide item 2).
    Na pasta “sync_queue”, possui as subpastas “inbox” e “relay”. Dentro da pasta “inbox” são armazenados os agendamentos, com os dados da consulta que será executada e seu agendamento. Exemplo: vw_parcelas_prest_antecipa.2021-04-26T10:38:35
    Na pasta “relay” serão armazenadas as consultas que por algum problema deram falha na sincronização, para serem executadas novamente.

  2. Para criar novos agendamentos ou executar novas consultas é necessário que tenha o POSTMAN conforme o link https://www.postman.com/downloads/ instalado no computador
    1. Executar uma requisição POST para o Endpoint:
      1. http://localhost:8083/api/v1/schedule/schedules (obs: a porta 8083 é só um exemplo. Deve-se usar a porta que passou na instalação do winthor2c)
      2. Enviar no corpo da requisição os seguintes dados:
        • entity (Nome da tabela): pcprest
        • active (tabela ativa?): true
        • queryFile (caminho do arquivo de consulta sql): pcprest.sql (obs.: ao informar somente o nome do arquivo, automaticamente o serviço já olha na pasta: C:\pcsist\produtos\Winthor2c\w2cFiles\queries)
        • description (descrição da consulta, se é por hora, minuto, etc): sincronização de 30 em 30 min
        • timeExpression (expressão cron que define o tempo que deve ser executado a consulta): * 30 * ? * * (obs.: neste exemplo essa consulta será executada a cada 30 minutos)
        • dataConnector (nome do sistema): winhtor

     Exemplo do corpo da requisição, onde pode ser enviado um array com uma ou várias consultas:

    Uma Agendamento:

    [

        {

            "entity": "pcprest",

            "active": true,

            "queryFile": "pcprest_diaria.sql",

            "description":"sincronização de 30 em 30 min",       

            "timeExpression": "* 30 * ? * *",

            "dataConnector":"winthor"

        }

    ]

     

    Mais de um Agendamento:

    [

        {

            "entity": "pcprest",

            "active": true,

            "queryFile": "pcprest_diaria.sql",

            "description":"sincronização de 30 em 30 min",       

            "timeExpression": "* 30 * ? * *",

            "dataConnector":"winthor"

        },

        {

            "entity": "pcprest",

            "active": true,

            "queryFile": "pcprest_diaria.sql",

            "description":"sincronização de 15 em 15 min",       

            "timeExpression": "* 0/15 * ? * *",

            "dataConnector":"winthor"

        }

     ]

  3. Para obter os agendamentos já criados, é necessário acessar o seguinte Endpoint:
          I. Executar uma requisição GET para o Endpoint:
                   http://localhost:8083/api/v1/schedule/schedules




  4. Para validar os agendamentos na fila de execução consultar o Endpoint:
                   http://localhost:8083/api/v1/status/schedules (obs: a porta 8083 é só um exemplo. Deve-se usar a porta que passou na instalação do winthor2c)

  5. Para remover um agendamento acesse o seguinte Endpoint passando o id (consulte o Id no item 3)
                   http://localhost:8083/api/v1/schedule/schedules/:id (obs: a porta 8083 é só um exemplo. Deve-se usar a porta que passou na instalação do winthor2c)



04. DEMAIS INFORMAÇÕES


Importante!

As versões estarão disponíveis para download no CCW. 

https://centraldecontrole.pcinformatica.com.br/


Mantenha suas rotinas sempre atualizadas!


05. ASSUNTOS RELACIONADOS