Criar acerto de comissão
Criando um Acerto de Comissão
Para criar um acerto de comissão, você deverá executar a SP padronizada COMISSAO_CRIAR conforme abaixo:
EXEC COMISSAO_CRIAR <id da pessoa>, <tipo da pessoa>, <data inicial>, <data final>
- id da pessoa - Id da pessoa representante/vendedor/guia/cliente
- tipo da pessoa - R = representante, V = vendedor, G = guia, C = cliente. Definirá como as procedures de apuração vão filtrar os pedidos, notas, títulos e baixas, qual campo de PESSOA_ID utilizar no filtro
- data inicial e data final - período de apuração das comissões
Após disparada a SP padronizada, um registro na tabela ACERTO_COMISSAO será criado com os dados fornecidos, e retornará o ID do novo registro. Esse ID deverá ser passado para todas as SP padronizadas de apuração e cálculos de comissões. O mesmo formato deve ser adotado em todas as SP personalizadas, e buscar os parâmetros do acerto através de um SELECT na tabela de acerto de comissão.
O comando irá falhar, resultando em erro, se a pessoa não existir, ou se estiver inativa, ou se a data inicial e data final estiver num período já apurado.
Criando Todos os Acertos de Comissão
É possível criar e apurar as comissões de todos os tipos padrões disponíveis - Representante, Vendedor e Guia, com apenas um comando:
EXEC COMISSAO_CRIAR_E_APURAR_TODOS <data inicial>, <data final> [, <tipo da pessoa> ]
- data inicial e data final - período de apuração das comissões
- tipo da pessoa (opcional) - se informado, criará e apurará apenas para as pessoas do tipo
Se não informar o tipo de pessoa, internamente a procedure buscará:
- todos os representantes ativos e disparará a SP padronizada COMISSAO_CRIAR passando seu id e o tipo R
- todos os vendedores ativos, de representantes ativos, e disparará COMISSAO_CRIAR passando seu id e o tipo V
- todos os guias ativos e disparará COMISSAO_CRIAR passando seu id e o tipo G
O comando também disparará a procedure personalizada _COMISSAO_APURAR para cada acerto criado.
Configurando a Geração dos Apurações
As apurações automatizadas serão geradas em cima das flags da tabela de pessoas. Este artigo que trata dessa configuração.