Histórico da Página
Índice maxLevel 4
01. VISÃO GERAL
A Conciliação de dados é uma técnica que realiza o cruzamento (match) de dados na origem e destino, realizando comparações e verificando divergências, permitindo assim, a diminuição de erros, falta ou redundância de dados, promove ganhos como aumento da precisão, facilidade nos fechamentos, evitar fraudes e possibilidade de correções.
Atualmente, os clientes que usam o Protheus fazem essas conciliações por meio de softwares terceiros ou manualmente. Dependendo do tamanho da empresa, essas conciliações podem durar horas, dias ou semanas para serem concluídas, além de estarem sujeitas ao erro humano, já que é feita no “olhômetro” ou planilhas avulsas.
A proposta da ferramenta é solucionar esses problemas para que as conciliações sejam feitas de maneira rápida e fácil, com uma grande redução de riscos de erros na hora da execução, além de expandir a solução Protheus para os clientes que usam outros softwares de conciliações.
Também tem por objetivo atender a demanda de todos os módulos através de um wizard configurável, onde as informações de origem e destino poderão ser inseridas e utilizas para cruzamento de informações, sendo elas, tabelas envolvidas, filtros utilizados, regras de matchs, campos apresentados e condicionais para consultas. Por exemplo, será possível conciliar Títulos a Receber x Contábil, Estoque x Contábil, Títulos a Pagar x Informações Operadora etc.
Informações | ||
---|---|---|
| ||
Este conjunto de funcionalidades estará disponível apenas no release 12.1.33 |
02. ARQUITETURA
...
03. CONFIGURAÇÃO
O desenvolvimento da funcionalidade Conciliador Protheus será realizada na plataforma web, assim, será necessária a utilização de desenvolvimento client-side (Front-End) com a tecnologia Angular e a biblioteca PO-UI e server-side (Back-End) com a tecnologia TLPP.
Front-End:
Criando um novo projeto Angular com PO UI
Pré-requisitos:
- Angular CLI - latest - https://cli.angular.io/
- Node - latest - https://nodejs.org/en/
Recomendado:
- Git Bash - latest - https://git-scm.com/downloads
Após instalar os itens citados acima, é necessário procurar uma pasta onde você gostaria de deixar o seu projeto alocado.
Abra o caminho dessa pasta no seu terminal de preferencia (recomendo o uso do Git Bash) e digite o comando:
Bloco de código | ||
---|---|---|
| ||
ng new NOMEDOPROJETO --routing=true --style=scss |
Obs: Os parâmetros --routing e --style respectivamente são para que o projeto seja criado com o sistema de rotas já implementado e para que o padrão de arquivos de estilo do projeto sejam no formato SCSS, dessa forma podemos utilizar o pré-processador SASS.
Após ter feito esse processo, precisamos incluir o PO UI no projeto. Para fazer isso, navegue até a pasta principal do seu projeto e rode o seguinte comando:
Bloco de código | ||
---|---|---|
| ||
ng add @po-ui/ng-components |
No processo de instalação, o terminal irá perguntar se deseja incluir uma estrutura inicial em seu projeto com menu lateral, página e toolbar, utilizando componentes do PO (estrutura padrão dos aplicativos que utilizam PO UI na TOTVS) Basta informar a tecla Y.
Uma última configuração é necessária para que o seu projeto fique no padrão TOTVS. É necessário instalar o tema oficial da TOTVS no PO UI. Rode o seguinte comando na pasta principal do seu projeto:
Bloco de código | ||
---|---|---|
| ||
npm install @totvs/po-theme |
Depois da instalação ser finalizada, vá até o arquivo angular.json, procure o parâmetro "styles" dentro de "projects" e insira o caminho abaixo:
Bloco de código | ||
---|---|---|
| ||
"styles": [
"node_modules/@totvs/po-theme/css/po-theme-default.min.css"
] |
Caso já exista algum caminho dentro de styles que não seja relativo ao tema do PO, não é necessário remover.
Pronto, agora use o comando abaixo na pasta principal do seu projeto para roda-lo:
Bloco de código | ||
---|---|---|
| ||
ng serve |
Acessando o endereço http://localhost:4200 após o build, você deve ver a estrutura padrão do PO UI.
Fonte: PO UI - Primeiros passos
Menu
O desenvolvimento será On-Premises, ou seja, será necessário adicionar o item Conciliação Contábil no Menu Protheus para que esteja disponível, como trata-se de uma funcionalidade web, esses aplicativos devem se armazenados no RPO e possuir um controle de alterações:
Para gerar a compilação dos arquivos Angular (PO UI) que vão no repositório Protheus, basta abrir a pasta principal do projeto, abrir o seu console de preferência (cmd, gitbash, etc) e rodar o comando:
Bloco de código | ||
---|---|---|
| ||
ng build -c production |
Os arquivos serão gerados dentro da pasta dist dentro da pasta principal do projeto.
Back-End:
A comunicação será realizada através das configurações disponíveis:
Configuração da Porta Multiprotocolo e Configuração Rest (AppServer.ini):
View file name appserver.ini height 250
Application Server - Porta Multiprotocolo
Configuração para desenvolvimento TL++:
Para que o aplicativo POUI seja utilizado no Protheus, o conteúdo gerado na pasta dist deverá ser zipado, após, sua extensão mudada para app. Deve-se criar um fonte com extensão prw, este fará a chamada do app através da função FWCallApp, ambos devem ser compilados no repositório Protheus.
Observação: O conteúdo da pasta dist deverá ser zipado dentro de uma pasta com o mesmo nome do prw responsável pela chamada, no exemplo abaixo foi utilizado PREXAMPLE:
Exemplo de fonte chamando a função FwCallApp para abertura de rotinas PO-UI no menu Protheus:
Adicionando rotina PREXAMPLE no Menu Protheus:
Tdn: Abrindo Aplicativos Web no Protheus
Deploy
Deploy de pipeline PO-UI usando Gitea + Drone
Os processos de desenvolvimento, testes, empacotamento e distribuição de software utilizando PO-UI devem ser realizados com Deploy de pipeline PO-UI usando Gitea + Drone, estas são as ferramenta adotadas pela Totvs para realização das tarefas de modo simples e automatizado.
Controle e versionamento
Todo controle e versionamento de repositórios deverá ser feita através do Gitea.
Ferramenta de orquestração
A ferramenta de orquestração, ou seja, que organizará os scripts para execuções, deverá ser feita através do Drone CI.
Pipeline
Scripts (sequências de comandos) a serem criados e salvos com a extensão .sh (Shell script) e que serão utilizados pelo Drone CI para que seja capaz de realizar de forma automatizada testes e disponibilizar builds de desenvolvimentos para publicação.
Informações | ||
---|---|---|
| ||
04. Cadastros e APIs
Cadastro de Configurações
...
tabs | Implementação,Imagens |
---|---|
ids | cadastro_configuracoes |
Será necessário realizar os cadastros iniciais para utilização do conciliador, serão as configurações para utilização, as informações serão gravados na tabela QLB (Conciliador - Chaves) e devem conter:
...
default | yes |
---|---|
referencia | campos |
QLB_CODCFG - Código identificador da configuração a ser conciliada
QLB_DESCFG - Descrição da configuração a ser conciliada
QLB_TABORI - Tabela de Origem da conciliação
QLB_TABDES - Tabela de Destino da conciliação
QLB_FIELDS - Campos que serão apresentados no conciliador (origem e destino)
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{ "data_ori": ["E1_FILIAL", "E1_PREFIXO", "E1_NUM", "E1_PARCELA", "E1_TIPO", "E1_CLIENTE", "E1_LOJA", "E1_EMISSAO", "E1_VALOR"], "data_des": [ "CT2_FILIAL", "CT2_DATA", "CT2_LOTE", "CT2_SBLOTE", "CT2_DOC", "CT2_LINHA", "CT2_VALOR", "CT2_HIST"] } |
QLB_REGORI - Regras a serem utilizadas na query dos das de origem
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
[ { "table": "CV3", "typejoin": "left", "relation": [ "E1_FILIAL = SUBSTRING(CV3_KEY, 1, 8)", "E1_PREFIXO = SUBSTRING(CV3_KEY, 9, 2)", "E1_NUM = SUBSTRING(CV3_KEY, 11, 6)", "E1_PARCELA = SUBSTRING(CV3_KEY, 17, 1)", "E1_TIPO = SUBSTRING(CV3_KEY, 18, 1)" ] } ] |
QLB_REGDES - Regras a serem utilizadas na query dos das de destino
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
[ { "table": "CV3", "typejoin": "left", "relation": [ "CT2_FILIAL = CV3_FILIAL", "CT2_LOTE = CV3_LOTKEY", "CT2_SBLOTE = CV3_SBLKEY", "CT2_DOC = CV3_DOCKEY", "CT2_LINHA = CV3_LINKEY", "CT2_TPSALD = CV3_TPSKEY", "CT2_EMPORI = CV3_EMPKEY", "CT2_FILORI = CV3_FLOKEY " ] } ] |
QLB_FILTER - Filtros utilizados para busca dos dados (origem e destino)
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{ "tabori": [ { "order": "10", "field": "E1_TIPO", "operation": "=" }, { "order": "11", "field": "E1_NATUREZ", "operation": "=" }, { "order": "12", "field": "E1_VALOR", "operation": ">=" }, { "order": "13", "field": "E1_VALOR", "operation": "=<" }, { "order": "01", "field": "E1_EMISSAO", "operation": ">=" }, { "order": "02", "field": "E1_EMISSAO", "operation": "<=" }, { "order": "03", "field": "E1_VENCREA", "operation": ">=" }, { "order": "04", "field": "E1_VENCREA", "operation": "<=" }, { "order": "05", "field": "E1_CLIENTE", "operation": "=" }, { "order": "06", "field": "E1_LOJA", "operation": "=" }, { "order": "07", "field": "E1_PREFIXO", "operation": "=" }, { "order": "08", "field": "E1_NUM", "operation": ">=" }, { "order": "09", "field": "E1_NUM", "operation": "=<" } ], "tabdes": [ { "order": "01", "field": "CT2_DATA", "operation": ">=" }, { "order": "02", "field": "CT2_DATA", "operation": "<=" }, { "order": "03", "field": "CT2_LOTE", "operation": "=" }, { "order": "04", "field": "CT2_DEBITO", "operation": "=" }, { "order": "05", "field": "CT2_CCD", "operation": "=" }, { "order": "06", "field": "CT2_ITEMD", "operation": "=" }, { "order": "07", "field": "CT2_CLVLDB", "operation": "=" } ] } |
QLB_CIDOR - Campo ID da tabela de origem
QLB_CIDDES - Campo ID da tabela de destino
QLB_DESCOR - Descrição da tabela origem
QLB_DESCDE - Descrição da tabela destino
APIs
...
tabs | Implementação,Imagens |
---|---|
ids | apis_imagens |
CONFIGURAÇÕES e FILTROS
Possibilitará ao usuário buscar as configurações cadastradas no conciliador e também os filtros para obter os dados de origem e destino.
Totvs custom tabs box items | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||
API para recuperar as configurações adicionadas pelo usuário e os filtros a serem utilizados, deverá buscar essas informações nos campos QLB_CODCFG, QLB_DESCFG e QLB_FILTER.
|
API para criar as tabelas e popular temporárias origem e destino, conterá os campos utilizados e as informações das tabelas, utilizará os campos QLB_TABORI, QLB_TABDES, QLB_FIELDS, QLB_REGORI e QLB_REGDES.
- matchprocessing
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{
"codcfg": "0101",
"date": "20210728",
"time": "16:12",
"user": "a.santos",
"tabdes": [
{
"field": "CT2_DATA",
"operation": ">=",
"value": "20210701",
"type": "D"
},
{
"field": "CT2_DATA",
"operation": "<=",
"value": "20210731",
"type": "D"
},
{
"field": "CT2_LOTE",
"operation": "=",
"value": "008850",
"type": "C"
},
{
"field": "(CT2_DEBITO OR CT2_CREDIT)",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "(CT2_CCD OR CT2_CCC)",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "(CT2_ITEMD OR CT2_ITEMC)",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "(CT2_CLVLDB OR CT2_CLVLCR)",
"operation": "=",
"value": "",
"type": "C"
}
],
"tabori": [
{
"field": "E1_TIPO",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "E1_NATUREZ",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "E1_VALOR",
"operation": ">=",
"value": 0.00,
"type": "N"
},
{
"field": "E1_VALOR",
"operation": "<=",
"value": 1000.00,
"type": "N"
},
{
"field": "E1_EMISSAO",
"operation": ">=",
"value": "20210701",
"type": "D"
},
{
"field": "E1_EMISSAO",
"operation": "<=",
"value": "20210731",
"type": "D"
},
{
"field": "E1_VENCREA",
"operation": ">=",
"value": "",
"type": "D"
},
{
"field": "E1_VENCREA",
"operation": "<=",
"value": "",
"type": "D"
},
{
"field": "E1_CLIENTE",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "E1_LOJA",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "E1_PREFIXO",
"operation": "=",
"value": "",
"type": "C"
},
{
"field": "E1_NUM",
"operation": ">=",
"value": "",
"type": "C"
},
{
"field": "E1_NUM",
"operation": "=<",
"value": "",
"type": "C"
}
]
}
|
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{
"tabori": "TC25144444",
"tabdes": "TC25144448"
}
|
GRID
...
tabs | Implementação,Grid, Modal de Confirmação, Alerta de Status |
---|---|
ids | grid_implementacao,grid_imagem,grid_modal,grid_alert |
Os grids apresentarão as informações utilizadas na conciliação, serão separadas em Origem e Destino, os campos para apresentação dos dados serão configuráveis e devem ser adicionados na tabela QLB, campo QLB_FIELDS.
Teremos essas opções no combobox citado acima:
- Registros conciliados
- Registros não conciliados
Os registros serão apresentados conforme os filtros adicionados pelo usuário, as informações que tiverem match automático aparecerão marcados na origem e destino e estão prontos para conciliação, não poderão ser desmarcados pois atenderam a regra automática. Já os registros que não tiverem match automático, poderão ser selecionados na origem e destino para conciliação manual.
Após clicar no botão "Conciliar", um modal (aba 3) será exibido para que o usuário confirme sua ação. O modal será construído com o componente Modal do PO UI. Depois da confirmação do usuário, o sistema irá exibir um alerta para o usuário informando o usuário sobre o resultado da ação (aba 4). O alerta será construído com o Interceptor do PO UI, em conjunto com o back-end.
Será possível realizar a exportação das tabelas via excel. Ao exportar o arquivo, os matches precisam estar alinhados para facilitar a visualização. No arquivo também terá a informação dos filtros que foram selecionados.
...
default | yes |
---|---|
referencia | grid_implementacao |
Api responsável por realizar a consulta nas tabelas temporárias de origem e destino e apresentar as informações para apresentação no front-end.
- conciliateitems:
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
[] |
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{
"items": [
{
"a1tpcamp": "",
"a1loja": "01",
"a1prior": "",
"a1pais": "",
"a1rimamt": "",
"a1regpb": "",
"a1dtfimv": "",
"a1condpag": "",
"a1diaspag": 0,
"a1tribfav": "",
"a1pessoa": "J",
"a1endcob": "TESTEMACARIO, 1977",
"a1dest2": "",
"a1endent": "",
"a1subcod": "",
"a1tpissrs": "",
"a1dest1": "",
"a1dest3": "",
"a1prfcod": "",
"a1clicnv": "",
"a1pricom": "1987-8-31",
"a1ultcom": "2021-8-6",
"a1nrocom": 254,
"a1bco1": "",
"a1bco2": "",
"a1bco3": "",
"a1bco4": "",
"a1bco5": "",
"a1lc": 1000000,
"a1iencont": "",
"a1hrtrans": "",
"a1compent": "",
"a1percatm": 0,
"a1abatimp": "",
"a1contab": "",
"a1nome": "CLIENTE PADRAO",
"a1codmune": "",
"a1nropag": 64,
"a1unidven": "",
"a1outrmun": "",
"a1aliqir": 15,
"a1munc": "",
"a1end": "R...",
"a1vend": "",
"a1mune": "",
"a1cond": "",
"a1codmemb": "",
"a1simples": "",
"a1naturez": "IRGCT",
"a1tipprfl": "",
"a1inovaut": "",
"a1userlga": "0# 3@ 20 30c",
"a1cod": "000001",
"a1userlgi": "",
"a1tabela": "",
"a1cargo1": "",
"a1cargo2": "",
"a1comis": 0,
"a1cepe": "",
"a1venclc": "",
"a1cargo3": "",
"a1tipcli": "",
"a1cepc": "",
"a1tipo": "F",
"a1tpmemb": "",
"a1codpais": "",
"a1incult": "",
"a1cnae": "",
"a1grptrib": "",
"a1tipper": "",
"a1tpfret": "",
"a1recfet": "",
"a1cdrdes": "",
"a1rg": "",
"a1fax": "",
"a1mundfc": "",
"a1indret": "",
"a1contrib": "",
"a1msexp": "",
"a1alifixa": "",
"a1desc": 0,
"a1entid": "",
"a1codter": "",
"a1lcfin": 0,
"a1tda": "",
"a1super": "",
"a1moedalc": 0,
"a1est": "SP",
"a1ddd": "",
"a1estc": "",
"a1telex": "",
"a1ddi": "",
"a1tipocli": "",
"a1este": "",
"a1reccsll": "",
"a1issrslc": "",
"a1vinculo": "",
"a1tpdp": "",
"a1suframa": "",
"a1metr": 89.66,
"a1atr": 0,
"a1rtec": "",
"a1matr": 0,
"a1codfid": "",
"a1fomezer": "",
"a1tel": "",
"a1perfil": 0,
"a1mun": "SAO PAULO",
"a1chqdevo": 0,
"a1salfin": 0,
"a1clifat": "",
"a1resfat": "",
"a1calcsuf": "",
"a1minirf": "",
"a1entori": "",
"a1rfasemt": "",
"a1m996": "",
"a1inscrm": "",
"a1clasven": "",
"a1salfinm": 0,
"a1cxposta": "",
"a1sativ2": "",
"a1dtnasc": "",
"a1sativ4": "",
"a1ibge": "",
"a1classe": "",
"a1observ": "",
"a1sativ8": "",
"a1sativ6": "",
"a1sativ7": "",
"a1sativ1": "",
"a1complem": "",
"a1vacum": 110083.67,
"a1codhist": "",
"a1contato": "",
"a1tpessoa": "",
"a1agreg": "",
"a1sativ3": "",
"a1reciss": "",
"a1tmpstd": "00:00",
"a1ctare": "",
"a1inciss": "",
"a1numra": "",
"a1loccons": "",
"a1irbax": "",
"a1sativ5": "",
"a1usadda": "",
"a1maidupl": 103835.32,
"a1saldupm": 57365.05,
"a1idhist": "",
"a1msaldo": 119276.7,
"a1imgumov": "",
"a1idestn": "",
"a1pagatr": 190479.97,
"a1endrec": "",
"a1salped": 94.74,
"a1fildeb": "",
"a1codmarc": "",
"a1fretiss": "",
"a1dscreg": "",
"a1simpnac": "",
"a1tpreg": "",
"a1nif": "",
"a1nvestn": 0,
"a1codmun": "",
"a1grpven": "",
"a1mcompra": 152889,
"a1codmusu": "",
"a1codsiaf": "",
"a1recirrf": "1",
"a1ec06db": "",
"a1pfisica": "",
"a1codloc": "",
"a1hrcad": "",
"a1dtcad": "",
"a1ec06cr": "",
"a1perfecp": 0,
"a1salpedb": 0,
"a1bairroc": "",
"a1recinss": "",
"a1bairroe": "",
"a1rfabov": "",
"a1endnot": "",
"a1codfor": "",
"a1salpedl": -111.450000000000003,
"a1hrexpo": "",
"a1ec08db": "",
"a1timekee": "",
"a1filial": "D MG",
"a1msblql": "",
"a1chvcam": "",
"a1regiao": "",
"a1inscrur": "",
"a1temvis": 0,
"a1ultvis": "",
"a1prstser": "",
"a1tmpvis": "",
"a1dtiniv": "",
"a1reserve": "",
"a1reccofi": "",
"a1ec08cr": "",
"a1recpis": "",
"a1crdma": "",
"a1mensage": "",
"a1prfvld": "",
"a1tpj": "",
"a1formvis": "",
"a1dtultit": "",
"a1recfmd": "",
"a1regesim": "",
"a1saldup": 724493.56,
"a1dtulchq": "",
"a1b2b": "",
"a1nreduz": "CLIENTE PADRAO",
"a1blemail": "",
"a1cbo": "",
"a1obs": "",
"a1codage": "",
"a1comage": 0,
"a1email": "",
"a1hpage": "",
"a1incltmg": "",
"a1cep": "",
"a1conta": "",
"a1inscr": "",
"a1abics": "",
"a1rfacs": "",
"a1filtrf": "",
"a1clipri": "",
"a1lojpri": "",
"a1bairro": "",
"a1ativida": "",
"a1situa": "",
"a1cgc": "",
"a1prfobs": "",
"a1ipweb": "",
"a1transf": "",
"a1tpnfse": "",
"a1transp": "",
"a1ec09db": "",
"a1ec09cr": "",
"a1ceinss": "",
"a1ec05db": "",
"a1titprot": -1,
"a1ec05cr": "",
"a1origct": "",
"a1ec07db": "",
"a1estado": "",
"a1ec07cr": "",
"a1cbairre": "",
"a1codseg": "",
"a1origem": "",
"a1matfun": "",
"a1risco": ""
},
{
"a1tpcamp": "",
"a1loja": "01",
"a1prior": "",
"a1pais": "",
"a1rimamt": "",
"a1regpb": "",
"a1dtfimv": "",
"a1condpag": "",
"a1diaspag": 0,
"a1tribfav": "",
"a1pessoa": "J",
"a1endcob": "",
"a1dest2": "",
"a1endent": "",
"a1subcod": "",
"a1tpissrs": "",
"a1dest1": "",
"a1dest3": "",
"a1prfcod": "",
"a1clicnv": "",
"a1pricom": "1998-1-12",
"a1ultcom": "2021-5-14",
"a1nrocom": 50,
"a1bco1": "",
"a1bco2": "",
"a1bco3": "",
"a1bco4": "",
"a1bco5": "",
"a1lc": 0,
"a1iencont": "",
"a1hrtrans": "",
"a1compent": "",
"a1percatm": 0,
"a1abatimp": "1",
"a1contab": "",
"a1nome": "CLIENTE ANDREA",
"a1codmune": "",
"a1nropag": 18,
"a1unidven": "",
"a1outrmun": "",
"a1aliqir": 0,
"a1munc": "",
"a1end": "RUA DAS ESTRELAS,100",
"a1vend": "",
"a1mune": "",
"a1cond": "",
"a1codmemb": "",
"a1simples": "",
"a1naturez": "000001",
"a1tipprfl": "",
"a1inovaut": "2",
"a1userlga": "0# 6@ 50Ž 40€",
"a1cod": "000002",
"a1userlgi": "0# 0@ 50z 40h",
"a1tabela": "",
"a1cargo1": "",
"a1cargo2": "",
"a1comis": 0,
"a1cepe": "",
"a1venclc": "",
"a1cargo3": "",
"a1tipcli": "1",
"a1cepc": "",
"a1tipo": "F",
"a1tpmemb": "",
"a1codpais": "",
"a1incult": "",
"a1cnae": "",
"a1grptrib": "",
"a1tipper": "",
"a1tpfret": "",
"a1recfet": "",
"a1cdrdes": "",
"a1rg": "",
"a1fax": "",
"a1mundfc": "",
"a1indret": "",
"a1contrib": "",
"a1msexp": "",
"a1alifixa": "",
"a1desc": 0,
"a1entid": "",
"a1codter": "",
"a1lcfin": 0,
"a1tda": "",
"a1super": "",
"a1moedalc": 2,
"a1est": "SP",
"a1ddd": "",
"a1estc": "",
"a1telex": "",
"a1ddi": "",
"a1tipocli": "",
"a1este": "",
"a1reccsll": "S",
"a1issrslc": "",
"a1vinculo": "",
"a1tpdp": "2",
"a1suframa": "",
"a1metr": -9.970000000000001,
"a1atr": 0,
"a1rtec": "",
"a1matr": 4,
"a1codfid": "",
"a1fomezer": "",
"a1tel": "",
"a1perfil": 0,
"a1mun": "SAO PAULO",
"a1chqdevo": 0,
"a1salfin": 0,
"a1clifat": "",
"a1resfat": "",
"a1calcsuf": "",
"a1minirf": "2",
"a1entori": "",
"a1rfasemt": "",
"a1m996": "",
"a1inscrm": "",
"a1clasven": "",
"a1salfinm": 0,
"a1cxposta": "",
"a1sativ2": "",
"a1dtnasc": "",
"a1sativ4": "",
"a1ibge": "",
"a1classe": "",
"a1observ": "",
"a1sativ8": "",
"a1sativ6": "",
"a1sativ7": "",
"a1sativ1": "",
"a1complem": "",
"a1vacum": 62768.3,
"a1codhist": "",
"a1contato": "",
"a1tpessoa": "",
"a1agreg": "",
"a1sativ3": "",
"a1reciss": "",
"a1tmpstd": "00:00",
"a1ctare": "",
"a1inciss": "",
"a1numra": "",
"a1loccons": "",
"a1irbax": "2",
"a1sativ5": "",
"a1usadda": "2",
"a1maidupl": 25063.91,
"a1saldupm": 23812.1,
"a1idhist": "",
"a1msaldo": 31290.38,
"a1imgumov": "",
"a1idestn": "",
"a1pagatr": 3000,
"a1endrec": "",
"a1salped": 0,
"a1fildeb": "",
"a1codmarc": "",
"a1fretiss": "",
"a1dscreg": "",
"a1simpnac": "",
"a1tpreg": "",
"a1nif": "",
"a1nvestn": 0,
"a1codmun": "",
"a1grpven": "",
"a1mcompra": 25063.91,
"a1codmusu": "",
"a1codsiaf": "",
"a1recirrf": "",
"a1ec06db": "",
"a1pfisica": "",
"a1codloc": "",
"a1hrcad": "",
"a1dtcad": "",
"a1ec06cr": "",
"a1perfecp": 0,
"a1salpedb": 0,
"a1bairroc": "",
"a1recinss": "",
"a1bairroe": "",
"a1rfabov": "",
"a1endnot": "",
"a1codfor": "",
"a1salpedl": 0,
"a1hrexpo": "",
"a1ec08db": "",
"a1timekee": "",
"a1filial": "D MG",
"a1msblql": "2",
"a1chvcam": "",
"a1regiao": "",
"a1inscrur": "",
"a1temvis": 0,
"a1ultvis": "",
"a1prstser": "",
"a1tmpvis": "00:00",
"a1dtiniv": "",
"a1reserve": "",
"a1reccofi": "S",
"a1ec08cr": "",
"a1recpis": "S",
"a1crdma": "",
"a1mensage": "",
"a1prfvld": "",
"a1tpj": "",
"a1formvis": "",
"a1dtultit": "",
"a1recfmd": "",
"a1regesim": "2",
"a1saldup": 80936.3,
"a1dtulchq": "",
"a1b2b": "2",
"a1nreduz": "CLIENTE ANDREA",
"a1blemail": "",
"a1cbo": "",
"a1obs": "",
"a1codage": "",
"a1comage": 0,
"a1email": "",
"a1hpage": "",
"a1incltmg": "",
"a1cep": "",
"a1conta": "",
"a1inscr": "",
"a1abics": "",
"a1rfacs": "",
"a1filtrf": "",
"a1clipri": "",
"a1lojpri": "",
"a1bairro": "",
"a1ativida": "",
"a1situa": "",
"a1cgc": "56061652416451",
"a1prfobs": "",
"a1ipweb": "",
"a1transf": "",
"a1tpnfse": "",
"a1transp": "",
"a1ec09db": "",
"a1ec09cr": "",
"a1ceinss": "",
"a1ec05db": "",
"a1titprot": 0,
"a1ec05cr": "",
"a1origct": "",
"a1ec07db": "",
"a1estado": "",
"a1ec07cr": "",
"a1cbairre": "",
"a1codseg": "",
"a1origem": "",
"a1matfun": "",
"a1risco": ""
}
],
"hasNext": true,
"po_sync_date": "2021-08-25T18:13:18Z"
} |
05. Campos e Parâmetros
...
Campo
...
Titulo
...
Descrição
...
Com o objetivo de facilitar a configuração inicial da rotina de conciliação, foi desenvolvido um wizard que auxiliará na preparação, tanto da estrutura das tabelas, quanto da carga inicial do legado do sistema.
Informações | ||
---|---|---|
| ||
Este conjunto de funcionalidades estará disponível apenas no release 12.1.33 |
02. PRÉ-REQUISITOS
Os pré-requisitos para utilização do wizard de configuração é ter o arquivo CTBA930.PRW compilado no repositório de objetos.
E a versão da Lib igual ou superior a 20211004.
03. Opções disponíveis no Wizard
Foram implementadas três funcionalidades no Wizard de Configuração do Conciliador:
1. Gerar SDF com campos de ID
Nessa opção o Wizard auxiliará na criação dos campos de ID utilizados para identificar os registros na rotina de conciliação.
Os campos serão criados com a estrutura XXX_TCUUID (Totvs Conciliador UUID), onde XXX é a tabela utilizada pelo conciliador.
Os campos TCUUID devem ser alimentados com um id único formado por 32 posições (UUID) obtidos pela função FWUUIDV4.
Somente serão apresentados no Wizard, campos das tabelas que possuem alguma configuração de match na rotina de conciliação (Tabela QLB).
O Wizard não fará a inclusão dos arquivos diretamente nas tabelas, mas sim, fará a geração de um arquivo SDFBRA.txt que será utilizado posteriormente pela rotina de atualização de dicionários UPDDISTR.
2. Popular os campos de ID
Nessa opção o Wizard fará a inclusão dos códigos UUID nos campos criados no passo anterior.
Isso se faz necessário para que o usuário possa utilizar o conciliador nos registros anteriores à criação dos campos de ID (XXX_TCUUID). Ou seja, essa opção serve para popular o legado.
3. Popular Rastreamento Contábil
Desenvolver documentação neste ponto após desenvolver a rotina
04. Gerar SDF com campos de ID
05. Popular os campos de ID
06. Popular Rastreamento Contábil
...
Campo
...
Titulo
...
Descrição
...
Campo
...
Titulo
...
Descrição
...
06. Tabelas Utilizadas
...
HTML |
---|
<!-- esconder o menu --> <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; } </style> |