Versões comparadas

Chave

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

CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização
      Tela XXX
      1. Fluxo
      2. Pré-requisitos e Restrições
      3. Configurações do JOB
      4. Configurações do Consumo de Verba
    1. Outras Ações / Ações relacionadas
    2. Tela XXXPrincipais Campos e ParâmetrosJOB
    3. Tabelas utilizadasUtilizadas

    01. VISÃO GERAL

    Esta documentação 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.Esta documentação tem como objetivo auxiliar na configuração deste processo que será executado pelo JOB sp_AtualizaVerbaBaixaPDV.

    02. EXEMPLO DE UTILIZAÇÃO

    ...

    Fluxo

    Image Added

    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.

    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 1 - Códigos Gerais de Operação (CGO)

    Configurar os parâmetros dinâmicos abaixo:

    ...

    Configurações do JOB

    Aviso
    titleImportante

    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 dos JOBs, com exceção dos casos que se enquadram na opção P do PD FORMA_APLIC_VERBA_BONIF.


    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
    iconfalse
    titleExemplos de possíveis configurações do JOB sp_AtualizaVerbaBaixaPDV:
    Totvs custom tabs box
    tabsConfiguração 1, Configuração 2
    idsconfig_antigo_1,config_antigo_2
    Totvs custom tabs box items
    defaultyes
    referenciaconfig_antigo_1

    Executar para uma única divisão realizando commits a cada N linhas processadas

    Dica
    titleRecomendado

    Configuração para clientes com muitas Divisões que possuem muitas empresas, o exemplo abaixo executará o processo para a Divisão 1, commitando os dados a cada 50 linhas processadas.

    Bloco de código
    languagesql
    begin 
    	sp_AtualizaVerbaBaixaPDV(pnQtdLinhaCommit => 50, 
    							 pnNroDivisao => 1); 
    end;
    Totvs custom tabs box items
    defaultno
    referenciaconfig_antigo_2

    Executar para uma lista 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
    languagesql
    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
    titleImportante

    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
    iconfalse
    titleExemplos de possíveis configurações dos JOBs
    Totvs custom tabs box
    tabsConfiguração 1, Configuração 2
    idsconfig_consumo_1,config_consumo_2
    Totvs custom tabs box items
    defaultyes
    referenciaconfig_consumo_1
    Dica
    titleRecomendado

    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 50 linhas processadas.

    Bloco de código
    languagesql
    begin 
    	Pkg_Mrl_VerbaSelloutConsumo.sp_InsereFila(pnNroDivisao => 1
    											  pnQtdLinhaCommit => 50);
    end;
    Bloco de código
    languagesql
    begin 
    	Pkg_Mrl_VerbaSelloutConsumo.sp_ConsumoAssincrono(pnNroDivisao => 1
    													 pnQtdLinhaCommit => 50);
    end;
    Bloco de código
    languagesql
    begin 
    	Pkg_Mrl_VerbaSelloutConsumo.sp_AtualizaVenda(pnNroEmpresa => 100
    												 pnQtdLinhaCommit => 50); 
    end;
    Bloco de código
    languagesql
    begin 
    	Pkg_Mrl_VerbaSelloutConsumo.sp_AtualizaCusto(pnNroEmpresa => 100
    												 pnQtdLinhaCommit => 50); 
    end;
    Totvs custom tabs box items
    defaultno
    referenciaconfig_consumo_2

    Configuração para clientes com muitas Divisões mas que não possuem muitas empresas, os exemplos abaixo executarão os processos para uma lista de Divisões ou Empresas,commitando os dados a cada 50 linhas processadas.

    Bloco de código
    languagesql
    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,
    											  pnQtdLinhaCommit => 50); 
      end loop;
    end;

    Observação: Apesar dos parâmetros de entrada serem opcionais, recomendamos a utilização para melhor desempenho na execução.

    03. TELA XXXXX

    Bloco de código
    languagesql
    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;
    Bloco de código
    languagesql
    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;
    Bloco de código
    languagesql
    begin
      for ListaEmpresa in (select a.NroEmpresa
                           from   max_Empresa a
                           where  a.NroEmpresa in (200, 300, 400))
      loop  	
    	Pkg_Mrl_VerbaSelloutConsumo.sp_AtualizaCusto(pnNroEmpresa => ListaEmpresa.NroEmpresa,
    												 pnQtdLinhaCommit => 50); 
      end loop;
    end;


    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

    AçãoDescrição
    Código Geral de Operação (CGO) - MAX0023Configurar o CGO utilizado na venda para utilizar verba.
    Parâmetros Dinâmicos - DEA0090Configurar os PDs relacionados ao processo.

    04. 

    ...

    JOB

    Principais Campos e Parâmetros

    ...

    Não há

    05. TABELAS UTILIZADAS

    Não há



    Templatedocumentos