Páginas filhas
  • DT 1.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 Mais Negócios


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 Mais Negócios

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 Mais Negócios


Clique nos Menus abaixo

Nos menus abaixo segue o fluxo de Processo de Instalação e Agendamento do Winthor2c.

    Importante!

    É de suma importância que para chegar nessa etapa da instalação do Wizard do WINTHOR2C, obrigatoriamente deve-se ter executado todas as etapas do link DT 1.2 - Atualizações na infraestrutura do Banco de Dados para o processo entre TOTVS Mais Negócios x ERP Winthor. Se por alguma eventualidade essa etapa do link anterior não puder ser executada, não prossiga para essa próxima execução.

    Para que seja realizado o envio de dados do ERP Winthor para a plataforma TOTVS Mais Negócios, é 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 Winthor2c



    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. image2023-3-10_9-19-31.png
      4. Aguarde a instalação e a inicialização do serviço.


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


    6. 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_NOTA_DEVOLUCAO_MAISNEGOCIOS
        4. VW_PARCELAS_MAISNEG
        5. VW_PARCELAS_PREST_ANTECIPA
        6. VW_TITULOS_MAIS_NEGOCIOS
        7. VW_VENC_REAL_ANTECIPA
      2. Functions:
        1. F_BUSCACLIENTESUPPLIER
        2. F_BUSCACOBRANCAMAISNEG
        3. F_BUSCANUMTRANSVENDAMAISNEG
        4. F_DTVENCIMENTOANTECIPA
        5. F_MAIORCOMPRAMAISNEG
        6. F_MAIORPARCELAMAISNEG

      3. Table:
        1. PCW2C_QUEUE (Gerencia Fila de Envio de dados)

      4. Triggers:
        1. TRG_PCCLIENT2C
        2. TRG_PCCOB_2C
        3. TRG_PCDESD_2C
        4. TRG_PCFILAMAISNEGLOG_2C
        5. TRG_PCFILIAL_2C
        6. TRG_PCNFENT_2C
        7. TRG_PCNFSAID_2C
        8. TRG_PCNFSAID_NOTA_2C
        9. TRG_PCPREST_2C
      5. Script's Updates:
        1. UPDATEPCCLIENT
        2. UPDATEPCCOB
        3. UPDATEPCFILIAL
        4. UPDATEPCNFSAID
        5. UPDATEPCPREST
      6. Queries:
        1. PCCLIENT
        2. PCCOB
        3. PCDESD
        4. PCDOCELETRONICO
        5. PCFILAMAISNEGLOG
        6. PCFILIAL
        7. PCNFSAID
        8. PCPREST
        9. PCPREST_CANC
        10. PCPREST_DESD
        11. VW_CLIENTES_FILIAL
        12. VW_MOEDA_EMPRESA
        13. VW_NOTA_DEVOLUCAO_MAISNEGOCIOS
        14. VW_PARCELAS_MAISNEG
        15. VW_PARCELAS_PREST_ANTECIPA
        16. VW_TITULOS_MAISNEGOCIOS
        17. VW_VENC_REAL_ANTECIPA

    7. 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:8080/api/v1/schedule/schedules
        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:8080/api/v1/schedule/schedules




    4. Para validar os agendamentos na fila de execução consultar o Endpoint:
                     http://localhost:8080/api/v1/status/schedules

    5. Para remover um agendamento acesse o seguinte Endpoint passando o id (consulte o Id no item 3)
                     http://localhost:8080/api/v1/schedule/schedules/:id

    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