Árvore de páginas

Versões comparadas

Chave

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

...

A seguir, apresentamos uma descrição detalhada das regras de negócios implementadas no PDV Omni, proporcionando uma compreensão clara de seu funcionamento e possibilitando uma integração fluida e eficiente.


Page Tree
root@self

8. Instalação/Configuração

 Este documento tem por objetivo orientar a instalação e configuração do PDVSync. Esse processo deve ser realizado em dois ambientes Server e Client:

  • Server

Onde deverá conter as informações de loja, inquilino, parâmetros, etc.

Para realizar as configurações para a utilização do PDV Sync no PDV Omni, é necessário realizar os cadastros abaixo através das APIs de Parâmetros.

O passo a passo do Postman se encontra no Google Drive no caminho: https://drive.google.com/drive/folders/1KriEZNs0ofg2uBF8u3TLniozko3IA063 (IMPORTANTE: caso não tenha acesso a esse diretório, solicitar o acesso ao time de Integração)

Lá se encontra o arquivo com as Collections montadas para a configuração e as variáveis para a utilização da criação de parâmetros.

1º - Criação do Inquilino

Para a criação do inquilino, utilizar o request 01. Criar Inquilino, informar os valores de acordo com as informações do cliente, realizar a autenticação e em seguida realizar o POST.

Image Removed

Após a criação, utilizar o valor do campo IdInquilino na variável para a configuração dos próximos passos.

Image Removed

2º - Criação dos Parâmetros Controle

Para a criação dos parâmetros do controle, basta apenas realizar a autenticação e realizar o POST.

Image Removed

3º - Criação dos Parâmetros Comercial

Para a criação dos parâmetros comerciais, basta apenas realizar a autenticação e realizar o POST.

Image Removed

4º -  Criação do Parâmetro para a subida de Clientes

Para a criação do parâmetro de subida de cliente, basta apenas realizar a autenticação e realizar o POST.

Image Removed

Obs.: Para realizar esses procedimentos nos ambientes de desenvolvimento e homologação, seguir os mesmos passos acima, mas utilizar sua respectiva pasta (Passo a Passo - Homologação e Passo a Passo - Desenvolvimento).

Os passos a seguir já estão contemplados nos passos descritos anteriormente. Seguir a partir do passo 3 e ignorar o passo 9.

1° - Criação Inquilino

O inquilino é criado pela equipe do PDVSync pelo email: [email protected], com as seguintes informações:

  • Nome Fantasia da Empresa
  • CNPJ da Empresa

Será retornado o IdInquilino e o token authorization para inclusão no pdvsync e nas api's dos passos seguintes.

2º - Cadastrar os parâmetros, conforme exemplo:

Incluir Authorization OAuth2.0 conforme retornado no email.

endpoint: https://pdvsync.varejo.totvs.com.br/controle/api/pdvsyncserver/parametros

Post

[{
    "idInquilino": "IdDoInquilino01-01", /*O código do IdInquilino conforme retornado no email.*/
    "tipoProcesso": 1,/* OnLine = 0, Descida = 1, Subida = 2*/
    "quantidadeRegistros": 1000,
    "tempoChamada": 2000,
    "tempoExpurgoLogs": 365,
    "tipoDado": {
      "codigoTipo": 1,
      "descricaoTipo": "Loja",
      "tipoUtilizador": 0,/*ClienteDown = 0, Server = 1, ClienteUp = 2, ClienteOnLine = 3 */
      "tipoProcesso": 0 /*Criacao = 0, Atualizacao = 1, Interno = 2*/
    }
  }]

Lista de Parâmetros:

 

...

codigoTipo

...

descricaoTipo

...

tipoProcesso

...

 

3º - Abrir Lote com Parâmetro 01 - Loja

Incluir Authorization OAuth2.0 conforme retornado no email.

endpoint: https://pdvsync.varejo.totvs.com.br/controle/api/retaguarda/inquilinolotesexternos

...

Response:

{
    "success": true,
    "message": "",
    "data": {
        "loteOrigem": "20221004175001554",
        "mensagem": null,
        "status": 0,
        "tipoLote": [
            6
        ],
        "id": "DLoi3SX5HDoPOcDlyf0m",
        "idInquilino": "",
        "dataAtualizacao": "2022-10-04T17:50:01.6441804Z",
        "dataCadastro": "2022-10-04T17:50:01.6442468Z",
        "_expandables": []
    }
}

 

4º - Cadastro de uma Loja

**Os dados de cadastros devem ser enviados nas propriedades do json abaixo.

endpoint: https://pdvsync-core-dadosbasicos-prd-q6yz66olca-rj.a.run.app/api/retaguarda/lojas

Post

[
  {
    "razaoSocial": " ",
    "nomeFantasia": " ",
    "cnpj": " ", /*obrigatório e valido - 14 caracteres*/
    "inscricaoEstadual": " ", /*obrigatório - 2 e 14 caracteres*/
    "inscricaoMunicipal": " ", /*obrigatório - até 15 caracteres*/
    "endereco": " ",
    "numero": " ",
    "complemento": " ",
    "bairro": " ",
    "cidade": " ",
    "estado": " ",
    "siglaUf": " ",
    "codigoUFIBGE": " ", /*obrigatório - 2 caracteres*/
    "codigoMunicipioIbge": " ", /*obrigatório - 7 caracteres*/
    "cep": "", /*obrigatorio*/
    "telefone": "", /*obrigatório - 6 e 14 caracteres*/
    "codigoIdentificacaoLoja": "",
    "modeloFiscal": 0,
    "regimeTributario": 1,
    "rede": "", /*obrigatório*/
    "numeroLoja": "0",
    "idRetaguardaRede": "",
    "codigoMaster": " ",
    "nomeMaster": " ",
    "situacao": 1,
    "idInquilino": " ", /*Gerado no passo 1*/
    "idRetaguarda": "3 ", /*código da loja na retaguarda*/
    "idProprietario": " ", /*compartilhamento da loja*/
    "loteOrigem": " " /*Gerado no passo 3*/
  }
]

 

5º - Fechar lote de loja

endpoint: https://pdvsync-core-controle-prd-q6yz66olca-rj.a.run.app/api/retaguarda/inquilinolotesexternos/{idInquilino}/{loteOrigem}

metodo: PUT
{idInquilino} - Gerado no passo 01
{loteOrigem} - Gerado no passo 03

6º - Abrir Lote com Parâmetro 06 - Compartilhamento

Incluir Authorization OAuth2.0 conforme retornado no email.

endpoint: https://pdvsync.varejo.totvs.com.br/controle/api/retaguarda/inquilinolotesexternos

...

Response:

{
    "success": true,
    "message": "",
    "data": {
        "loteOrigem": "20221004175001554",
        "mensagem": null,
        "status": 0,
        "tipoLote": [
            6
        ],
        "id": "DLoi3SX5HDoPOcDlyf0m",
        "idInquilino": "",
        "dataAtualizacao": "2022-10-04T17:50:01.6441804Z",
        "dataCadastro": "2022-10-04T17:50:01.6442468Z",
        "_expandables": []
    }
}

7º - Criar Compartilhamento

endpoint: https://pdvsync-core-controle-prd-q6yz66olca-rj.a.run.app/api/retaguarda/compartilhamentos

Post

[
    {
        "IdRetaguardaLoja": "",
        "IdRetaguarda": "32796d0b-8399-490e-b972-1db212c514fa",
        "IdProprietario": "32796d0b-8399-490e-b972-1db212c514fa",
        "IdInquilino": "",
        "NomeCompartilhamento": "PDV Master",
        "Nivel": 0,
        "IdRetaguardaPai": "",
        "loteOrigem": "20221004175001554"
    },
    {
        "IdRetaguardaLoja": "3f054f05-ee67-407b-935d-9db0fc5e7c58",
        "IdRetaguarda": "3f054f05-ee67-407b-935d-9db0fc5e7c58",
        "IdProprietario": "3f054f05-ee67-407b-935d-9db0fc5e7c58",
        "IdInquilino": "",
        "NomeCompartilhamento": "PDV Loja",
        "Nivel": 1,
        "IdRetaguardaPai": "",
        "loteOrigem": "20221004175001554"
    }
]

...

{
    "success": true,
    "message": "compartilhamento inserido com sucesso: [{\"IdRetaguarda\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"IdProprietario\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"NomeCompartilhamento\":\"PDV Master\",\"Nivel\":0,\"IdRetaguardaPai\":\"\",\"LoteOrigem\":\"20221004175001554\",\"Lote\":null,\"IdRetaguardaLoja\":\"\",\"Id\":null,\"IdInquilino\":\"\",\"DataAtualizacao\":\"0001-01-01T00:00:00\",\"DataCadastro\":\"0001-01-01T00:00:00\",\"_expandables\":[]},{\"IdRetaguarda\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"IdProprietario\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"NomeCompartilhamento\":\"PDV Loja\",\"Nivel\":1,\"IdRetaguardaPai\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"LoteOrigem\":\"20221004175001554\",\"Lote\":null,\"IdRetaguardaLoja\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"Id\":null,\"IdInquilino\":\"\",\"DataAtualizacao\":\"0001-01-01T00:00:00\",\"DataCadastro\":\"0001-01-01T00:00:00\",\"_expandables\":[]}].",
    "data": null
}

 

8º - Fechar o Lote 

endpoint: https://pdvsync-core-controle-prd-q6yz66olca-rj.a.run.app/api/retaguarda/inquilinolotesexternos/{idInquilino}/{loteOrigem}

metodo: PUT

{idInquilino} - Gerado no passo 01
{loteOrigem} Gerado no passo anterior

 

9º - Cadastrar os parâmetros comerciais para a consulta de operações de vendas e caixa

URL: https://pdvsync.varejo.totvs.com.br/comercial/api/pdvsyncserver/parametros

Post

[
  {
    "idInquilino": "", /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 1,
    "tipo": 1,
    "valor": "10"
  },
  {
    "idInquilino": "",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 2,
    "tipo": 2,
    "valor": "10"
  },
  {
    "idInquilino": "",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 3,
    "tipo": 3,
    "valor": "10"
  },
  {
    "idInquilino": "",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 4,
    "tipo": 4,
    "valor": "10"
  },
  {
    "idInquilino": "",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 5,
    "tipo": 0,
    "valor": "https://pdvsync-core-fila-prd-q6yz66olca-rj.a.run.app/api/stub/historicovenda"
  }

]

10º Baixar Serviços Clients

...

  •  API – Responsável pela comunicação entre o PDV e os Serviços de UP e Down.
  • Controle – Responsável por informar aos Serviços de DOWN que existe informações novas para serem baixadas no PDV.
  • Up – Serviço responsável pela subida de informações do PDV para o Server.
  • Down – Serviço responsável pela baixa de informações do Server para o PDV.

 Instalação dos Serviços UP, DOWN, CONTROLE e API:

  • Criar a pasta C:\PDVSync e executar a instalação dos serviços disponibilizados pelo time do suporte.
  • Acessar a pasta C:\PDVSync descompactar o arquivo baixado acima e executar o arquivo "servicos.bat" como Administrador.
  • Após os passos acima os serviços PDVSync.Client.Api.WebApi, PDVSync.Client.Servico.Up, PDVSync.Client.Servico.Down e PDVSync.Client.Servico.Controle serão instalados e iniciados.

  Desinstalação dos Serviços UP, DOWN, CONTROLE e API:

  •  Para desinstalar os serviços acima basta acessar a pasta C:\PDVSync executar o arquivo “servicos-delete.bat”.

18. Documentação APIs

19. Criação dos Jobs para Expurgo das tabelas log_pdvsync e histórico_integracao do PDV Omni

1º - Pré-requisito

Alterar o arquivo pg_hba.conf localizado no diretório C:\Program Files\PostgreSQL\15\data para que o Agendador de Tarefas tenha acesso a realizar os comandos na máquina local.

Alterar as linhas selecionadas abaixo para “trust

Image Removed

2º - Criação da tarefa para o expurgo da tabela log_pdvsync

Abrir o Agendador de Tarefas do Windows

Image Removed

Abrir a ramificação Biblioteca do Agendador de Tarefas e criar uma nova pasta com o nome “PDV Omni”

Image Removed

Image Removed

Image Removed

Dentro da pasta PDV Omni criar uma nova tarefa básica para o expurgo da tabela log_pdvsync

Image Removed

Image Removed

No disparador manter como diariamente

Image Removed

No campo de data e hora, colocar a data atual e no horário informar as 00:00:00. E para repetir, colocar a cada 1 dia.

Image Removed

Ação executada deixar a primeira opção “Iniciar um programa”

Image Removed

No próximo passo selecionar o programa psql.exe localizado no diretório C:\Program Files\PostgreSQL\15\bin

E no campo Adicione Argumentos, informar o seguinte texto:

-U postgres -d TotvsPDV -w -c "delete from log_pdvsync lp where date_part('day', now() - lp.data_criacao) > 7"

Image Removed

Image Removed

Concluir o agendamento e pronto. O agendador de tarefas vai rodar o expurgo todo dia no horário planejado. Mas antes deve se configurar o usuário de execução. Na tarefa agendada ir em Propriedades

Image Removed

Image Removed

Na Opções de segurança, selecionar a opção “Executar estando o usuário conectado ou não”

Image Removed

Clique em Ok, e caso ele peça a senha do usuário, informar a senha do usuário logado no Windows.

Importante: recomendado deixar a máquina ligada para que a tarefa seja executada.

3º - Criação da tarefa para o expurgo da tabela histórico_integracao

Com o Agendador de Tarefas abertos no passo anterior, dentro da pasta PDV Omni, criar uma nova tarefa básica

Image Removed

Criar uma nova Tarefa Básica

Image Removed

Manter o disparador como “Diariamente”

Image Removed

No campo de data e hora, colocar a data atual e no horário informar as 00:00:00. E para repetir, colocar a cada 1 dia.

Image Removed

Ação executada deixar a primeira opção “Iniciar um programa”

Image Removed

No próximo passo selecionar o programa psql.exe localizado no diretório C:\Program Files\PostgreSQL\15\bin

E no campo Adicione Argumentos, informar o seguinte texto:

-U postgres -d TotvsPDV -w -c "delete from historico_integracao hi where date_part('day', now() - hi.data_atualizacao) > 7"

Image Removed

Image Removed

Concluir o agendamento e pronto. O agendador de tarefas vai rodar o expurgo todo dia no horário planejado. Mas antes deve se configurar o usuário de execução. Na tarefa agendada ir em Propriedades

Image Removed

Informações
titleModelo Fiscal

Para maiores informações sobre a funcionalidade de desconto, consulte Como aplicar desconto no PDV Omni

Na Opções de segurança, selecionar a opção “Executar estando o usuário conectado ou não”

Image Removed

Clique em Ok, e caso ele peça a senha do usuário, informar a senha do usuário logado no Windows.

Importante: recomendado deixar a máquina ligada para que a tarefa seja executada.