Índice
Índice
O PDVSync é a camada responsável por orquestrar as operações de sincronização de dados entre o TOTVS Varejo PDV Omni e Omnishop e as suas respectivas retaguardas/ERPs.
...
...
...
Exemplo de Fluxo de chamadas de API´s com Abertura de lote, Fechamento de Lote e Solicitação de Retorno do Status do Lote Enviado.
...
OBS: Todos Schemas e Retornos disponíveis estão no Swagger.
...
Âncora | ||||
---|---|---|---|---|
|
IDInquilino : OMXKpmP8hVjbqE
...
Para o PDVSync foram definidos microsserviços independentes, levando em consideração a utilização e afinidade das informações trafegadas e armazenadas.
Os microsserviços foram divididos em:
...
Âncora | ||||
---|---|---|---|---|
|
No MicroServiço controle, com relação a comunicação com o ERP/Retaguarda, temos as informações de Abertura e Fechamento do Lote de envio de dados e o retorno do Lote enviado, informando sucesso das informações entregues no PDVSync ou qual o erro encontrado e a estrutura de lojas na Compartilhamento, esta responsável por determinar quais lojas irão receber qual informação entregue no PDVSync.
...
Informações |
---|
O microserviço de controle está disponível na url |
A API compartilhamento é de extrema importância para que o PDVSync saiba onde entregar as informações enviadas em todos as API´s, ou seja, através da composição dos dados da compartilhamento o PDVSync sabe quem é o dado enviado tem um ID Proprietário e este na compartilhamento tem quem são as lojas que devem receber as informações enviadas com um ID Proprietário.
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "idRetaguarda": "a5c20fa2942342188cacabec8b9da543", "idProprietario": "1639797f5ce64843a73711d919dad5e7", "nomeCompartilhamento": "Master", "nivel": 0, "idRetaguardaPai": "", "idRetaguardaLoja": "", "idInquilino": "OMXKpmP8hVjbqExUN7sa" }, { "idRetaguarda": "998e4779609b45aa9f09ba04da1eb81e", "idProprietario": "693325a343724ff0920fa368377ccd19", "nomeCompartilhamento": "Central", "nivel": 1, "idRetaguardaPai": "a5c20fa2942342188cacabec8b9da543", "idRetaguardaLoja": "", "idInquilino": "OMXKpmP8hVjbqExUN7sa" }, { "idRetaguarda": "1e6186cbdf4345d7bdcafc862510f31d", "idProprietario": "57348546ff964e9aa63517e829f33f6d", "nomeCompartilhamento": "Loja 01", "nivel": 2, "idRetaguardaPai": "998e4779609b45aa9f09ba04da1eb81e", "idRetaguardaLoja": "1d7556c01a604bf28dc4cb1ac4a4ae2f", "idInquilino": "OMXKpmP8hVjbqExUN7sa" }, { "idRetaguarda": "91fd568a3e2748cab760b15731447abc", "idProprietario": "06df84c10a3049ed9e359dc24d37d5a2", "nomeCompartilhamento": "Loja 02", "nivel": 2, "idRetaguardaPai": "998e4779609b45aa9f09ba04da1eb81e", "idRetaguardaLoja": "7f16bb7c5b8b4d00821af3b8de08f221", "idInquilino": "OMXKpmP8hVjbqExUN7sa" } |
A API InquilinoLoteExterno deverá ser utilizada pela ERP/Retaguarda para iniciar, encerrar e consultar o status do processo de integração com o PDVSync.
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
...
Âncora | ||||
---|---|---|---|---|
|
EndPoint - /api/retaguarda/lojas - POST
...
Campo | Tipo | Tamanho | Obrigatoriedade | Descrição |
razaoSocial | String | 50 | Sim | Razão social da loja. |
nomeFantasia | String | 50 | Sim | Nome fantasia da loja. |
cnpj | String | 14 | Sim | CNPJ da loja. |
inscricaoEstadual | String | 15 | Sim | Inscrição Estadual da Loja |
inscricaoMunicipal | String | 15 | Não | Inscrição Municipal da Loja |
endereco | String | 200 | Sim | Endereço da Loja |
numero | String | 10 | Sim | Número da Loja |
complemento | String | 100 | Não | Complemento do Endereço da Loja |
bairro | String | 150 | Sim | Bairro da Loja |
cidade | String | 150 | Sim | Cidade da Loja |
estado | String | 60 | Sim | Estado da Loja |
siglaUf | String | 2 | Sim | Sigla do Estado da Loja (UF) |
codigoUFIBGE | String | 2 | Sim | Código da UF no IBGE |
codigoMunicipioIbge | String | 50 | Sim | Código do Município do IBGE |
cep | String | 10 | Sim | CEP da Loja |
telefone | String | 20 | Sim | Telefone da Loja |
codigoIdentificacaoLoja | String | 20 | Sim | Código de Identificação da Loja |
modeloFiscal | String | 1 | Não | Modelo Fiscal da Loja: A configuração do modelo fiscal da loja poderá ser realizado através do configurador do PDV |
regimeTributario | String | 1 | Sim | Enquadramento Fiscal da Loja 0 - Simples Nacional 1 - Normal |
rede | String | 40 | Sim | Descrição da REDE no ERP/Retaguarda |
numeroLoja | String | 30 | Sim | Cóidgo da Loja no ERP/Retaguarda |
idInquilino | String | Sim | Código do Inquilino o qual a Loja pertence | |
idRetaguarda | String | Sim | Código da Loja no ERP/Retaguarda | |
idProprietario | DateTime | Sim | Código do Proprietário da informação, no caso da Loja é o próprio ID Retaguarda | |
loteOrigem | Integer | Sim | Número do lote que está sendo integrado, disponibilizado pelo PDV Sync ao ERP na abertura da integração | |
lote | Integer | Não | Informação do PDV Sync, não integrado pelo ERP |
EndPoint - /api/retaguarda/motivos - POST
...
Campo | Tipo | Tamanho | Obrigatoriedade | Descrição |
Descrição | String | Sim | Descrição do Motivo | |
Tipo | Integer | Sim | Tipo do Motivo utilizado : AcrescimoDesconto = 0 TrocaDevolucao = 1 CancelamentoVenda = 5 Sangria = 6 Suprimento = 7 | |
Situação | Integer | Sim | Situação do Motivo. 1 - Ativo 0 - Inativo | |
id | String | Não | Campo Interno do PDVSync | |
idInquilino | String | 100 | Sim | Código do Inquilino o qual a Loja pertence |
idRetaguarda | String | 100 | Sim | Código da Loja no ERP/Retaguarda |
dataAtualizacao | DateTime | Não | Campo Interno data da atualização no PDVSync | |
dataCadastro | DateTime | Não | Campo Interno data de cadastro no PDVSync | |
idProprietario | String | 100 | Sim | Código do Proprietário da informação, no caso da Loja é o próprio ID Retaguarda |
loteOrigem | Interger | Sim | Número do lote que está sendo integrado, disponibilizado pelo PDVSync ao ERP na abertura da integração | |
lote | Interger | Não | Campo Interno Informação do PDVSync, |
EndPoint - /api/retaguarda/motivos - POST
...
Campo | Tipo | Tamanho | Obrigatoriedade | Descrição |
Descrição | String | 100 | Sim | Descrição do Motivo |
Tipo | Integer | Sim | Tipo do Motivo utilizado 0 - 1 - | |
Situação | Integer | Sim | Aituação do Motivo | |
id | String | Não | ||
idInquilino | String | 100 | Sim | Código do Inquilino o qual a Loja pertence |
idRetaguarda | String | 100 | Sim | Código da Loja no ERP/Retaguarda |
dataAtualizacao | DateTime | Não | Data da Atualização no PDVSync | |
dataCadastro | DateTime | Não | Data de Cadastro no PDVSync | |
idProprietario | String | 100 | Sim | Código do Proprietário da informação, no caso da Loja é o próprio ID Retaguarda |
loteOrigem | Interger | Sim | Número do lote que está sendo integrado, disponibilizado pelo PDV Sync ao ERP na abertura da integração | |
lote | Interger | Não | Informação do PDV Sync, não integrado pelo ERP |
Âncora Produto Produto
API com um método Post, Get, Put e Delete para o ERP possa ser enviar o cadastro de produtos no PDVSync.
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
[{ "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdProprietario": "78965", "IdRetaguarda": "12356", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaImposto": "6lnnB85sauBB3nZeGX08", "IdRetaguardaNcm": "7nnnB85sauBB3nZeGX08", "IdRetaguardaPisCofins": "8unnB85sauBB3nZeGX08", "Descricao": "Produto 12222 Completo", "UnidadeMedida": "UN", "DescontoMaximo": 10, "TipoArredondaTrunca": "01", "CodigoProduto": "56987", "CodigoAlternativo": "56987", "OrigemProduto": "0", "Situacao": 1, "Imagem": "alksjdkjaskdjalskdjaisudoi23u4o2i34534h563kj5464k5jh61l2k42l3542m34h5k3jg465k34jh5453j4h5k3j4h5k3j4h545l34jh54l63k4jh6l3k4jh536l34u54y63i4u54y63k4j5h6l34jh6i34u54y6893745yt3489u5ht93458jt9304u5t3904j58t9034j58t9034u5t", "TipoProduto": 1, "Fracionado": true, "CnpjFornecedor": "25362415680001", "EscalaRelevante": true, "ValorBaseFcp": 0, "CodigoBeneficioFiscal": "AB", "PercentualFcp": 1, "CstIcms": "CST", "PercentualReducaoIcms": 1, "AliquotaIcms": 1, "Vlicmsret": 1, "MotivoDesoneracaoIcms": 1, "DescontaDesoneracaoNf": false, "Cest": "Cest", "produtoKits": [{ "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "IdRetaguardaProdutoKit": "1234558", "Descricao": "Kit Teste 01", "QuantidadeVendaKit": 10, "TipoValorKit": 1, "Situacao": 1, "ValorDesconto": 1, "NovoValorUnitario": 58 }, { "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "IdRetaguardaProdutoKit": "1234558", "Descricao": "Kit Teste 01", "QuantidadeVendaKit": 10, "TipoValorKit": 1, "Situacao": 1, "ValorDesconto": 1, "NovoValorUnitario": 58 }, { "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "IdRetaguardaProdutoKit": "1234558", "Descricao": "Kit Teste 01", "QuantidadeVendaKit": 10, "TipoValorKit": 1, "Situacao": 1, "ValorDesconto": 1, "NovoValorUnitario": 58 } ], "produtosSimilares": [{ "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "Situacao": 1, "IdRetaguardaSimilar": "1234558" }, { "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "Situacao": 1, "IdRetaguardaSimilar": "1234558" } ], "ProdutosSugestoes": [{ "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "Situacao": 1, "IdRetaguardaSugestao": "1234558" }, { "Id": "6lnnB85sauBB3nZeGX08", "IdInquilino": "V3uEWOAdRCTLUJX7eedZ", "IdRetaguarda": "78965", "IdProprietario": "78965", "Lote": 12345698765, "LoteOrigem": "20210420135510963", "IdRetaguardaProduto": "132216354", "Situacao": 1, "IdRetaguardaSugestao": "1234558" } ], "codigosProduto": [{ "codigo": "56987", "descricao": "CodigoProduto", "idRetaguarda": "av25e1d2a3de2df1", "dataAtualizacao": "2021-05-11T14:22:18.816Z", "dataCadastro": "2021-05-11T14:22:18.816Z", "situacao": "1" }, { "codigo": "7892509156987", "descricao": "CódigoBarras", "idRetaguarda": "12faserytgf123sdfg", "dataAtualizacao": "2021-05-11T14:22:18.816Z", "dataCadastro": "2021-05-11T14:22:18.816Z", "situacao": "1" } ] } ] |
Âncora | ||||
---|---|---|---|---|
|
Âncora FormaPagamento FormaPagamento
Âncora | ||||
---|---|---|---|---|
|
Âncora estoque estoque
Âncora imposto imposto
Pre-Requisitos para instalação do Client:
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 Omnishop, é 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.
Após a criação, utilizar o valor do campo IdInquilino na variável para a configuração dos próximos passos.
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.
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.
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.
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:
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:
Cadastrados e configurados corretamente para realizar a troca de informações com o Client, segue abaixo os passos para configuração do ambiente no Server:
1° - Criação Inquilino
O inquilino é criado pela equipe do PDVSync pelo email: [email protected], com as seguintes informações:
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 | codigoTipo | descricaoTipo | tipoProcesso |
0 | Cliente | Down | |
1 | Loja | Down | |
2 | Motivo | Down | |
3 | Perfil | Down | |
4 | Usuario | Down | |
6 | Compartilhamento | Down | |
7 | Imposto | Down | |
8 | Ncm | Down | |
9 | PisCofins | Down | |
12 | Produto | Down | |
13 | Preco | Down | |
14 | Estoque | Down | |
15 | Operadora | Down | |
16 | DadoComplementar | Down | |
17 | CondicaoPagto | Down | |
18 | FormaPagto | Down | |
19 | Venda | Up | |
20 | Caixa | Up | |
22 | Troca | Up | |
23 | VendaCustodiaXml | Up | |
25 | Cliente | Up | |
26 | PreVenda | Up | |
54 | AlteracaoEstoque | Down | |
55 | PreVenda | Down |
3º - Abrir Lote com Parâmetro 01 - Loja
...
URL: https://pdvsync.varejo.totvs.com.br/comercial/api/pdvsyncserver/parametros
Post
/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": 21,
"tipo": 21,
"valor": "10"
},
{
"idInquilino": "", /*Gerado no passo 01*/
"dataAtualizacao": "2022-10-07T18:59:54.530Z",
"dataCadastro": "2022-10-07T18:59:54.530Z",
"codigo": 32,
"tipo": 32,
"valor": "10"
},
{
"idInquilino": "", /*Gerado no passo 01*/
"dataAtualizacao": "2022-10-07T18:59:54.530Z",
"dataCadastro": "2022-10-07T18:59:54.530Z",
"codigo": 43,
"tipo": 43,
"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
...
"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
Instalação dos Serviços UP, DOWN, CONTROLE e API:
Desinstalação dos Serviços UP, DOWN, CONTROLE e API:
18.1. Configuração do PDV Sync Server para a loja via Postman
Para realizar as configurações para a utilização do PDV Sync no PDV Omnishop, é 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
Lá se encontra o arquivo com as Collections montadas para a configuração e com 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.
Após a criação, utilizar o valor do campo IdInquilino na variável para a configuração dos próximos passos.
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.
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.
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.
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)
Instalação dos Serviços UP, DOWN, CONTROLE e API:
Desinstalação dos Serviços UP, DOWN, CONTROLE e API:
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”
2º - Criação da tarefa para o expurgo da tabela log_pdvsync
Abrir o Agendador de Tarefas do Windows
Abrir a ramificação Biblioteca do Agendador de Tarefas e criar uma nova pasta com o nome “PDV Omnishop”
Dentro da pasta PDV Omnishop criar uma nova tarefa básica para o expurgo da tabela log_pdvsync
No disparador manter como diariamente
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.
Ação executada deixar a primeira opção “Iniciar um programa”
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"
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
Na Opções de segurança, selecionar a opção “Executar estando o usuário conectado ou não”
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 Omnishop, criar uma nova tarefa básica
Criar uma nova Tarefa Básica
Manter o disparador como “Diariamente”
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.
Ação executada deixar a primeira opção “Iniciar um programa”
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"
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
Na Opções de segurança, selecionar a opção “Executar estando o usuário conectado ou não”
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.