CONTEÚDO
- Visão Geral
- Exemplo de utilização
- Fluxo
- Pré-requisitos e Restrições
- Passo a passo
- Configurações do JOB
Tela- Configurações do Consumo de Verba
- Outras Ações / Ações relacionadas
- TelaJOB
- Principais Campos e Parâmetros
Tabelas utilizadasUtilizadas
01. VISÃO GERAL
Esta documentação tem como objetivo visa auxiliar na configuração deste processo que será executado pelo JOB sp_AtualizaVerbaBaixaPDV ou pelos JOBs da Pkg_Mrl_VerbaSelloutConsumo.
O ERP oferece como opção a baixa de verba em modo assíncrono na importação das vendas de frente de caixa (PDV) e no faturamento de documento fiscal na retaguardano ERP, especialmente para as empresas que trabalham com o modelo de verba compartilhada. Com essa opção, a atualização da verba sellout acontece em segundo plano, permitindo que a baixa de venda ou o faturamento seja processado com maior desempenho, reduzindo a concorrência no banco de dados e otimizando a operação.
02. EXEMPLO DE UTILIZAÇÃO
Fluxo

Imagem 1 - Fluxo dos processos executados no JOB
Pré-requisitos e Restrições
Existir verbas vigentes no momento das vendas. Entende-se como verba vigente uma verba que esteja dentro do no período de validade e que tenha saldo para consumir.
Configurar os parâmetros dinâmicos abaixo:
- FORMA_APLIC_VERBA_BONIF do grupo PED_VENDA
- Opção P: O consumo das verbas é realizado na digitação do pedido de venda na retaguarda
- Opção F: O consumo das verbas é realizado na geração das notas de venda importadas do PDV ou no Faturamento dos documentos fiscais na retaguarda.
Observação: O consumo das vendas importadas do PDV será na geração do documento fiscal com exceção dos itens importados do pedido de venda balcão que já foram consumidos.
Não pode ser utilizado em conjunto com a baixa de venda agrupada.
Configurações do JOB
| Aviso |
|---|
|
Para clientes que já utilizam o JOB sp_AtualizaVerbaBaixaPDV e vão substituir pelos novos JOBs da Pkg_Mrl_VerbaSelloutConsumo será necessário a interrupção dos Schedulers de importação de vendas e verficar se todos os dados da tabela de controle de consumo assíncrono foram finalizados, ou seja, na tabela Mrl_CtrlConsumoAssincronoVerba não podem existir linhas com Status 1 ou 2. Em seguida, também interromper os Schedulers do processo de baixa de verba. Observação: Caso ainda existam linhas que não foram finalizadas na tabela de controle de consumo assíncrono após a interrupção dos Schedulers, será necessário entrar em contato com o Suporte para solicitar o ajuste antes da ativação dos novos JOBs. |
Configurar o PD CONTR_VERBA_BONIF_BAIXA_PDV do grupo BAIXA_PDV
- Opção S: Com esta configuração o consumo será online, ou seja, conforme configuração do PD FORMA_APLIC_VERBA_BONIF.
- Opção N: Com esta configuração o consumo será offline (Baixa assíncrona), realizado através da execução do JOB sp_AtualizaVerbaBaixaPDVdos JOBs, com exceção dos casos que se enquadram na opção P do PD FORMA_APLIC_VERBA_BONIF.
Passo a Passo
Configurar o CGO utilizado na venda para utilizar verba.
- Caminho: Módulo Parâmetros > Menu Parâmetros > Aplicação Código Geral de Operação > Aba Emissão de NF > Marcar o checkbox Utiliza Valor de Verba de Bonificação.
Image Removed
Imagem 2 - Códigos Gerais de Operação (CGO)
Configurações do JOB
...
| Dica |
|---|
| Por padrão, é sugerido configurar para executar a cada 1 minuto. |
Parâmetros
- pnQtdLinhaCommit: Parâmetro de entrada opcional. Utilizado para indicar a quantidade de linhas que serão processadas antes de cada commit.
- pnNroDivisao: Parâmetro de entrada opcional. Utilizado para executar o processo para uma única Divisão. Com esta configuração é possível realizar a baixa de verba simultaneamente para divisões diferentes.
| Informações |
|---|
| icon | false |
|---|
| title | Exemplos de possíveis configurações do JOB sp_AtualizaVerbaBaixaPDV: |
|---|
|
| Totvs custom tabs box |
|---|
| tabs | Configuração 1, Configuração 2 |
|---|
|
| , Configuração 3, Configuração 4 | passo1,passo2,passo3,passo4| config_antigo_1,config_antigo_2 |
| | Totvs custom tabs box items |
|---|
|
| passo1 | Executar para uma única divisão realizando commits a cada N linhas processadas | para divisões | Configuração para clientes com muitas Divisões que possuem muitas empresas |
| configuradas, o exemplo abaixo executará o processo para a Divisão 1, commitando os dados a cada |
| 100 | Bloco de código |
|---|
| begin
sp_AtualizaVerbaBaixaPDV(pnQtdLinhaCommit => | 10050,
pnNroDivisao => 1);
end; |
|
| Totvs custom tabs box items |
|---|
|
| passo2 única divisão...... , o exemplo abaixo executará o processo para a Divisão 2lista de divisões realizando commits a cada N linhas processadas Configuração para clientes com muitas Divisões mas que não possuem muitas empresas, o exemplo abaixo executará o processo para as Divisões 2,3, 4 commitando os dados a cada 50 linhas processadas. | Bloco de código |
|---|
| begin
for ListaDivisao in (select a.NroDivisao
from max_Divisao a
where a.NroDivisao in (2, 3, 4))
loop
sp_AtualizaVerbaBaixaPDV(pnQtdLinhaCommit => 50,
pnNroDivisao => ListaDivisao.NroDivisao);
end loop;
end; |
|
|
|
| Aviso |
|---|
|
O objeto abaixo faz parte do novo fluxo de baixa da verba e está disponível a partir do service pack 24.01.004 Para utilizar os novos objetos é necessário configurar o PD IND_FLUXO_CONSUMO com a opção S. |
| Informações |
|---|
| icon | false |
|---|
| title | Exemplos de possíveis configurações dos JOBs |
|---|
|
| Totvs custom tabs box |
|---|
| tabs | Configuração 1, Configuração 2 |
|---|
| ids | config_consumo_1,config_consumo_2 |
|---|
| | Totvs custom tabs box items |
|---|
| default | yes |
|---|
| referencia | config_consumo_1 |
|---|
| | Dica |
|---|
| Configuração para clientes com muitas Divisões que possuem muitas empresas, os exemplos abaixo executarão os processos para uma única Divisão ou Empresa, commitando os dados a cada |
| N | Bloco de código |
|---|
| begin
Pkg_Mrl_VerbaSelloutConsumo.sp_InsereFila(pnNroDivisao => 1,
pnQtdLinhaCommit => 50);
end; |
| Bloco de código |
|---|
| begin
Pkg_Mrl_VerbaSelloutConsumo.sp_ | AtualizaVerbaBaixaPDVConsumoAssincrono(pnNroDivisao => 1,
| => 2pnQtdLinhaCommit => 50);
end; |
| Bloco de código |
|---|
| begin
Pkg_Mrl_VerbaSelloutConsumo.sp_AtualizaVenda(pnNroEmpresa => 100,
pnQtdLinhaCommit => 50);
end; |
| Bloco de código |
|---|
| begin
Pkg_Mrl_VerbaSelloutConsumo.sp_AtualizaCusto(pnNroEmpresa => 100,
pnQtdLinhaCommit => 50);
end; |
|
| Totvs custom tabs box items |
|---|
|
| passo3 | | Configuração para clientes com muitas Divisões mas |
Executar para uma lista de divisões Recomendado para divisões que não possuem muitas empresas | configuradas o exemplo abaixo executará o processo para as Divisões 3, 4 e 5, os exemplos abaixo executarão os processos para uma lista de Divisões ou Empresas,commitando os dados a cada | N 50 linhas processadas. | Bloco de código |
|---|
| begin
for ListaDivisao in (select a.NroDivisao
from max_Divisao a
where a.NroDivisao in (2, 3, 4))
loop
Pkg_Mrl_VerbaSelloutConsumo.sp_InsereFila(pnNroDivisao => ListaDivisao.NroDivisao, | 5))
loop
sp_AtualizaVerbaBaixaPDV
pnQtdLinhaCommit => 50);
end loop;
end; |
| Bloco de código |
|---|
| begin
for ListaDivisao in (select a.NroDivisao
from max_Divisao a
where a.NroDivisao in (2, 3, 4))
loop
Pkg_Mrl_VerbaSelloutConsumo.sp_ConsumoAssincrono(pnNroDivisao => ListaDivisao.NroDivisao,
pnQtdLinhaCommit => 50);
end loop;
end; |
|
| | Totvs custom tabs box items |
|---|
| default | no |
|---|
| referencia | passo4 |
|---|
| | Bloco de código |
|---|
| begin
for ListaEmpresa in (select a.NroEmpresa
from max_Empresa a
where a.NroEmpresa in (200, 300, 400))
loop
Pkg_Mrl_VerbaSelloutConsumo.sp_AtualizaVenda(pnNroEmpresa => ListaEmpresa.NroEmpresa,
pnQtdLinhaCommit => 50);
end loop;
end; |
|
Executar para todas as divisões Apesar dos parâmetros de entrada serem opcionais, recomendamos a utilização para melhor desempenho na execução. O exemplo abaixo executará o processo para todas as Divisões, commitando os dados a cada N linhas processadas.| Bloco de código |
|---|
| begin
for ListaEmpresa in (select a.NroEmpresa
from max_Empresa a
where a.NroEmpresa in (200, 300, 400))
loop
| sp_AtualizaVerbaBaixaPDVPkg_Mrl_VerbaSelloutConsumo.sp_AtualizaCusto(pnNroEmpresa => ListaEmpresa.NroEmpresa,
pnQtdLinhaCommit => 50);
end loop; |
|
|
|
03. TELA
Configurações do Consumo de Verba
Configurar o PD FORMA_APLIC_VERBA_BONIF do grupo PED_VENDA
- Opção P: O consumo das verbas é realizado na digitação do item do pedido de venda no ERP.
- Opção F: O consumo das verbas é realizado no Faturamento do pedido de venda no ERP.
Observação: O consumo das vendas importadas do PDV será na geração do documento fiscal com exceção dos itens importados do pedido de venda no ERP que já foram consumidos.
Configurar o CGO utilizado na venda para utilizar verba.
- Caminho: Módulo Parâmetros > Menu Parâmetros > Aplicação Código Geral de Operação - MAX0023
Na Aba Emissão de NF, marcar a opção Utiliza Valor de Verba de Bonificação.
Image Added
Imagem 2 - Códigos Gerais de Operação (CGO)
03. Outras Ações / Ações relacionadas
04.
...
JOB
Principais Campos e Parâmetros
...
FORMA_APLIC_VERBA_BONIF do grupo PED_VENDA
...
CONTR_VERBA_BONIF_BAIXA_PDV do grupo BAIXA_PDV
...
Não há
05. TABELAS UTILIZADAS
Não há.