Árvore de páginas

Versões comparadas

Chave

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

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação

Produto

Microsiga Protheus

Módulo

SIGAFIN

Segmento Executor

Serviços & Juridico

Projeto1

M_CTR0

IRM1

PCREQ-XXXX

Requisito1

PCREQ-XXXX

Subtarefa1

 

Chamado2

 

Release de Entrega Planejada

12.1.8

Réplica

 

País

(  ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   ( x ) Outro: Todos.

Outros

<Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>.

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 

Objetivo

Desenvolver uma rotina para envio, por e-mail, de avisos de pagamento ao fornecedor após a baixa dos títulos a pagar. 


Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

FINA815 - Aviso de Pagamento

Criação

Miscelânea -> Envio -> Aviso de Pagamento

-


FINR815 - Aviso de PagamentoCriaçãoNão se aplica-

Definição da Regra de Negócio

 

O processo de envio de aviso de pagamento aos fornecedores tem como objetivo minimizar o recebimento de ligações de fornecedores perguntando sobre pagamento de faturas, juntamente com o desejo da agência em ser proativa no relacionamento com seus fornecedores, informando-os sobre a efetivação dos seus pagamentos.

A rotina desenvolvida fará uma avaliação das baixas ocorridas no período selecionado pelo usuário e enviará um e-mail aos fornecedores, informando-os sobre a efetivação do pagamento.

Esta rotina está disponível para acionamento a qualquer instante pelo usuário, ou até mesmo, poderá ser configurada para execução periódica via agendamento (Schedule).

 

Considerações:

  • A rotina sempre enviará o e-mail de aviso de pagamento para os títulos selecionados nos parâmetros. Ou seja, não haverá um controle de envios anteriores, permitindo o reenvio de e-mail, se necessário.
  • O sistema montará um único e-mail por Fornecedor e Loja com a relação de todos os seus títulos baixados, conforme informação dos parâmetros.
  • O destinatário do e-mail será eleito conforme a regra:
    • Caso o parametro MV_INTTUR estiver ativo, o aviso de pagamento será enviado para o(s) e-mail(s) do fornecedor informado no campo “E-mail” da aba “Definições de Cobrança” do cadastro de “Complemento do Fornecedor”
    • Caso contrario, irá buscar os dados do cadastro de contatos do fornecedor, caso não existe utilizará o e-mail padrão do fornecedor.
  • O e-mail remetente dos avisos de pagamento deverá ser configurado no parâmetro MV_RAVPAG, que será criado para este objetivo.
  • O nome da empresa para informação no e-mail, no exemplo Alatur Turismo, será consultado do cadastro de empresas/filial. (Tabela SM0)   
  • A identificação do título será PREFIXO/NÚMERO/PARCELA/TIPO. 

Detalhamento técnico 

FINA815 - Aviso de Pagamento

Desenvolver uma tela conforme protótipo de tela 01, que utilize o grupo de perguntas FINA815, para seleção dos fornecedores que serão notificados, com as perguntas:

PerguntaConteúdoCritério de busca
Data da Baixa deData inicial das baixasMaior ou igual a FK2_DATA
Data da Baixa AtéData final das baixasMenor ou igual a FK2_DATA
Fornecedor deInicio do range de fornecedoresMaior ou igual a E2_FORNECE
Fornecedor até

Final do range de fornecedores

Menor ou igual a E2_FORNECE
Loja deInicio do range lojas de fornecedoresMaior ou igual a E2_LOJA
Loja atéFinal do range lojas de fornecedores Menor ou igual a E2_LOJA
Prefixo deInicio do range de prefixos/serie de notaMaior ou igual a E2_PREFIXO
Prefixo atéFinal do range de prefixos/serie de notaMenor ou igual a E2_PREFIXO
Título deInicio do range do Número do títuloMaior ou igual a E2_NUM
Título atéFinal do range do Número do títuloMenor ou igual a E2_NUM
Parcela deInicio do range de parcelaMaior ou igual a E2_PARCELA
Parcela atéFinal do range de parcelaMenor ou igual a E2_PARCELA
Seleciona TiposDefine se usuário filtrará os tipos de títulos

Se for 1 = Sim, apresentará a tela do protótipo 03 para usuário filtrar os tipos de títulos

Se for 2 = Não, não apresentará a tela do protótipo 03 e irá considerar todos os tipos de títulos.

Seleciona Motivo de BaixaDefine se o usuário filtrará os motivos de baixa

Se for 1 = Sim, apresentará a tela do protótipo 05 para usuário filtrar os motivos de baixas

Se for 2 = Não, não apresentará a tela do protótipo 05 e irá considerar todos os motivos de baixas

Seleciona Modelo de PagamentoDefine se o usuário filtrará os motivos de pagamentos, quando o mesmo for realizado por borderô

Se for 1 = Sim, apresentará a tela do protótipo 04 para usuário filtrar os motivos de pagamento

Se for 2 = Não, não apresentará a tela do protótipo 04 e irá considerar todos os motivos de pagamento

Seleciona Filiais

Define as filiais de processamento, caso selecione a opção não, irá processar apenas a filial corrente

1 = Sim, 2 = Não

Usar a função AdmSelecFil , para retornar as filiais.


Baseado nas perguntas efetuar uma busca na tabela SE2 de títulos baixados parcialmente ou totalmente uma das condições abaixo seja atendidas:

  • E2_SALDO seja diferente do campo E2_VALOR
  • E2_SDACRES seja diferente do campo E2_ACRESCIMO
  • E2_SDDECRE seja diferente do campo E2_DECRESCIMO
  • E2_BAIXA preenchido, com movimentos válidas na FK2, ou seja, movimentos de baixas não estornado.


Após essa verificação:

Verificar os movimentos da FK2, se possuem o mesmo motivo de baixa selecionado pelo usuário.

Se o campo E2_NUMBOR estiver preenchido, verificar na tabela SEA se o tipo de pagamento está no range estabelecido pelo usuário. 

Ordenar os títulos por fornecedor, para envio dos e-mail e emissão do relatório de conferencia.


Relacionamento entre tabelas:

Para buscar e validar dados serão consultadas as tabelas:


SA2, SE2, FK7, FK2, SEA:

tabelasChaves de relacionamento
SA2 X SE2A2_COD+A2_LOJA = E2_FORNECE+E2_LOJA
SE2 X FK7

E2_FILIAL + E2_PREFIXO + E2_NUM + E2_PARCELA + E2_TIPO

E2_FORNECE + E2_LOJA = FK7_CHAVE

FK7 X FK2FK7_IDDOC = FK2_IDDOC
SE2 X SEA

E2_NUMBOR + E2_PREFIXO + E2_NUM + E2_PARCELA

+ E2_TIPO + E2_FORNECE + E2_LOJA = EA_NUMBOR +

EA_PREFIXO + EA_NUM + EA_PARCELA + EA_TIPO

EA_FORNECE + EA_LOJA

 

Para cada fornecedor listado será enviado um e-mail com seus respectivos pagamentos, conforme protótipo de tela 06, com a estrutura:


Cabeçalho do e-mail:

CampoConteúdo
EmitenteE-mail listado no parâmetro MV_RAVPAG
Destinatário

o destinatário do e-mail poderá ter três origem:

Se o parâmetro MV_INTTUR estiver ativo, deverá buscar do complemento do fornecedor G4V_EMAIL, caso não esteja preenchido:

  • Deverá verificar se existe um contato vinculado a ao fornecedor com o campo U5_AVPGTO=1;
    • Se existir deverá buscar o campo U5_EMAIL, caso contrário deverá usar o campo A2_EMAIL.
  • Se nenhum deles estiver preenchido não será enviado o e-mail.

Se o parâmetro MV_INTTUR estiver desativado:

  • Deverá verificar se existe um contato vinculado a ao fornecedor com o campo U5_AVPGTO=1;
    • Se existir deverá buscar o campo U5_EMAIL, caso contrário deverá usar o campo A2_EMAIL.
  • Se nenhum deles estiver preenchido não será enviado o e-mail.

Importante: Se existir mais de um contato com o campo U5_AVPGTO=1, todos serão notificados.


Corpo do e-mail:


CampoConteúdo
PrefixoE2_PREFIXO
NúmeroE2_NUM
ParcelaE2_PARCELA
TipoE2_TIPO
Data de VencimentoE2_VENCREA
Data de PagamentoFK2_DATA
Valor de PagamentoFK2_VALOR
Banco/agencia/conta

Utilizar os campos:

E2_FORBCO, E2_FORAGE, E2_FAGEDV, E2_FORCTA, E2_FCTADV.

Caso estejam em branco usar os campos:

A2_BANCO, A2_AGENCIA, A2_DVAGE, A2_NUMCON, A2_DVCTA.

Modelo de PagamentoSEA_MODELO + X5_DESCRI (tabela 58)

 

Importante: Durante o processamento deverá apresentar uma barra de progresso, caso não encontre registro o usuário deverá ser notificado.

 

Após a emissão do e-mail deverá apresentar na tela o relatório de conferência, FINR815.

 

Gravação de Log de Processamento

Para cada processamento será gravado um log, informando data, hora e usuário que efetuou o processamento e o código do fornecedor/loja processado.

Adicionar uma tratativa, caso a quantidade de código/loja ultrapasse a capacidade do campo CV8_DET, deverá gravar duas ou mais linhas de log.


FINR815 - Relatório de aviso de pagamento

Relatório deverá receber os dados de e-mail enviados e exibir as informações conforme protótipo de tela 07, divido em duas sessões com quebra por fornecedor.

 

Sessão 1 - Dados do fornecedor

ColunaConteúdo
Fornecedor/LojaE2_FORNECE/E2_LOJA
Nome reduzidoE2_NOMFOR
E-mail de Envio

E-mail definido na execução da rotina

OBS: Poderá ser mais de um.

Data de EnvioData Base do sistema

Sessão 2 - Dados dos títulos

ColunaConteúdo
FilialE2_FILIAL
PrefixoE2_PREFIXO
NúmeroE2_NUM
ParcelaE2_PARCELA
TipoE2_TIPO
NaturezaE2_NATUREZ
VencimentoE2_VENCREA
PagamentoE2_VENCREA
Valor OriginalE2_VALOR+E2_ACRESC-E2_DECRESC
Valor PagoFK2_VALOR
Banco/Agencia/Conta

Utilizar os campos:

E2_FORBCO, E2_FORAGE, E2_FAGEDV, E2_FORCTA, E2_FCTADV.

Caso estejam em branco usar os campos:

A2_BANCO, A2_AGENCIA, A2_DVAGE, A2_NUMCON, A2_DVCTA.

Modelo de PagamentoSEA_MODELO + X5_DESCRI (tabela 58)

 

Tabelas Utilizadas

  • SE2 – Cadastro de Contas a Pagar;
  • SA2 - Cadastro de fornecedor;
  • SU5 - Cadastro de Contatos
  • SE5 - Movimentos Bancários;
  • FK2 - Baixas a Pagar;
  • FK7 - Dados Auxiliares;
  • SEA - Títulos enviados ao Banco;
  • CV8 - Log de Processamento.

Protótipo de Tela

Protótipo 01

Protótipo 02

 


Protótipo 03

Seleção de Tipo de título

 


Protótipo 04

Seleção dos Modelos de Pagamento



Protótipo 05

Seleção dos Motivos de Baixa

 


Protótipo 06

 

Exemplo de formato de e-mail:

 

Protótipo 07


 

 

Dicionário de Dados

 

Arquivo ou Código do Script: SU5 - Cadastro de Contatos

  

Campo

U5_AVPGTO

Tipo

Caractere

Tamanho

1

Descrição

Aviso de Pagamento

Título

Aviso Pgto

Picture

@!

Obrigatório

Não

Usado

Sim

Browse

Não

Contexto

Real

Visual

Alterar

Val. Sistema

Pertence(“12”)

Lista opção

1=Sim,2=Não

Inicializador Padrão

“2”

Help de Campo

Define se o contato irá receber e-mail de aviso de pagamento.

1=Sim

2=Não

 

 

Grupo de Perguntas

 

Nome: FINA815

 

 

X1_ORDEM

1

X1_PERGUNT

Data de Baixa de:

X1_TIPO

Data

X1_TAMANHO

8

X1_GSC

Get

X1_VAR01

MV_PAR01

X1_HELP

Data inicial das baixas a pagar

 

 

X1_ORDEM

2

X1_PERGUNT

Data de Baixa até:

X1_TIPO

Data

X1_TAMANHO

8

X1_GSC

Get

X1_VAR01

MV_PAR02

X1_HELP

Data final das baixas a pagar

 

 

X1_ORDEM

3

X1_PERGUNT

Fornecedor de:

X1_TIPO

Caractere

X1_TAMANHO

6

X1_GSC

Get

X1_VAR01

MV_PAR03

X1_F3

SA2

X1_GRPSXG001

X1_HELP

Inicio do range de fornecedores

 

 

X1_ORDEM

4

X1_PERGUNT

Fornecedor até:

X1_TIPO

Caractere

X1_TAMANHO

6

X1_GSC

Get

X1_VAR01

MV_PAR04

X1_F3

SA2

X1_GRPSXG001

X1_HELP

Final do range de fornecedores

 

 

X1_ORDEM

5

X1_PERGUNT

Loja de:

X1_TIPO

Caractere

X1_TAMANHO

2

X1_GSC

Get

X1_VAR01

MV_PAR05

X1_GRPSXG002

X1_HELP

Range inicial de loja do cliente fornecedores

 

 

X1_ORDEM

6

X1_PERGUNT

Loja até:

X1_TIPO

Caractere

X1_TAMANHO

2

X1_GSC

Get

X1_VAR01

MV_PAR06

X1_GRPSXG002

X1_HELP

Range final de loja do cliente fornecedores

 

 

X1_ORDEM

7

X1_PERGUNT

Prefixo de:

X1_TIPO

Caractere

X1_TAMANHO

3

X1_GSC

Get

X1_VAR01

MV_PAR07

X1_HELP

Inicio do range de prefixos/serie de nota

 

 

X1_ORDEM

8

X1_PERGUNT

Prefixo até:

X1_TIPO

Caractere

X1_TAMANHO

3

X1_GSC

Get

X1_VAR01

MV_PAR08

X1_HELP

Final do range de prefixos/serie de nota

 

 

X1_ORDEM

9

X1_PERGUNT

Título de:

X1_TIPO

Caractere

X1_TAMANHO

9

X1_GSC

Get

X1_VAR01

MV_PAR09

X1_GRPSXG018

X1_HELP

Inicio do range de número de título/número da nota fiscal ou faturas

 

 

X1_ORDEM

10

X1_PERGUNT

Título até:

X1_TIPO

Caractere

X1_TAMANHO

9

X1_GSC

Get

X1_VAR01

MV_PAR10

X1_GRPSXG018

X1_HELP

Final do range de número de título/número da nota fiscal ou faturas

 

 

X1_ORDEM

11

X1_PERGUNT

Parcela de:

X1_TIPO

Caractere

X1_TAMANHO

1

X1_GSC

Get

X1_VAR01

MV_PAR11

X1_GRPSXG011

X1_HELP

Inicio do range de parcela do título

 

 

X1_ORDEM

12

X1_PERGUNT

Parcela até:

X1_TIPO

Caractere

X1_TAMANHO

1

X1_GSC

Get

X1_VAR01

MV_PAR12

X1_GRPSXG011

X1_HELP

Final do range de parcela do título

 

 

X1_ORDEM

13

X1_PERGUNT

Seleciona Tipos

X1_TIPO

Numérico

X1_TAMANHO

1

X1_GSC

Combo

X1_VAR01

MV_PAR13

X1_DEF01

1=Sim

X1_DEF02

2=Não

X1_HELP

Define será irá filtrar ou não por tipo de título.

 

 

X1_ORDEM

14

X1_PERGUNT

Seleciona Motivo de Baixa

X1_TIPO

Numérico

X1_TAMANHO

1

X1_GSC

Combo

X1_VAR01

MV_PAR14

X1_DEF01

1=Sim

X1_DEF02

2=Não

X1_HELP

Define será irá filtrar ou não as baixas por motivo de baixa.

 

 

X1_ORDEM

15

X1_PERGUNT

Seleciona Modelo de Pagamento

X1_TIPO

Numérico

X1_TAMANHO

1

X1_GSC

Combo

X1_VAR01

MV_PAR15

X1_DEF01

1=Sim

X1_DEF02

2=Não

X1_HELP

Define será irá filtrar ou não as baixas por modelo de pagamento.

 

 

X1_ORDEM

16

X1_PERGUNT

Seleciona Filial

X1_TIPO

N

X1_TAMANHO

1

X1_GSC

Combo

X1_VAR01

MV_PAR16

X1_DEF01

1=Sim

X1_DEF02

2=Não

X1_HELP

Seleciona filiais para processamento.

 

 

Parâmetros

Nome da Variável

MV_RAVPAG

Tipo

Caractere

Descrição

E-mail remetente dos avisos de pagamento

Valor Padrão

 

Casos de Uso

UC – 001 - Aviso de Pagamento

Objetivo: Validar a rotina de Aviso de pagamentos

Pré-condição:

  • Cadastro de Fornecedores, com contatos ativo para recebimento do aviso;
  • Cadastro de Fornecedores, sem contatos cadastrados;
  • Cadastro de Fornecedores, com contatos inativo para recebimento do aviso;
  • Cadastro de Naturezas;
  • Títulos a Pagar, baixados totalmente e parcialmente;
  • Borderô de pagamento baixados.

Inicializador:

  • FINA815 – Aviso de Pagamento

Fluxo Básico de Eventos:

1.0 Acessar a rotina de liquidação a receber;

1.1 Selecionar a opção Liquidar e preencha os parâmetros para seleção de títulos;

1.2 Na tela de seleção de títulos verifique os campos criados e os cálculos de juros e multa;

1.3 Confirme a seleção dos títulos;

2.0 Na tela de geração dos títulos, informe uma condição de pagamento com parcelamento;

2.1 Verifique os campos criados e o cálculo de juros foram preenchidos corretamente;

3.0 Clique na opção Salvar;

3.1 Verifique se os títulos selecionados foram baixados e os novos títulos foram gerados corretamente;

3.2 Verifique a gravação das tabelas FO0, FO1, FO2;

Fim do caso de uso

 

Fluxo Alternativo de Eventos:

3.0 Clique na opção Gravar Simulação;

3.1 Informe uma data de validade um dia a mais a data da negociação;

3.2 Verifique que os títulos selecionados não sofreram alteração;

3.3 Verifique a gravação das tabelas FO0, FO1, FO2;

Fim do caso de uso


Fluxo Alternativo de Eventos:

3.0 Clique na opção Gravar Simulação;

3.1 Informe uma data de validade três dias a mais a data da negociação;

3.2 Sistema apresentará uma mensagem alertando que o usuário não poderá utilizar essa validade.

3.3 Informe uma data valida;

3.4 Verifique que os títulos selecionados não sofreram alteração;

3.5 Verifique a gravação das tabelas FO0, FO1, FO2;

Fim do caso de uso

 

Fluxo Alternativo de Eventos:

4.0 Cancelar liquidação;

4.1 Preencha os parâmetros necessários para cancelamento;

4.2 Verifique que o sistema irá deletar os títulos gerados e estornar a baixa dos títulos selecionados.

4.3 Será apresentado a mensagem deseja cancelar a liquidação, selecione a opção SIM.

4.4 Na tabela FO0 o status do registro simulado será de CANCELADO;

Fim do caso de uso

 

Fluxo Alternativo de Eventos:

4.0 Cancelar liquidação;

4.1 Preencha os parâmetros necessários para cancelamento;

4.2 Verifique que o sistema irá deletar os títulos gerados e estornar a baixa dos títulos selecionados.

4.3 Será apresentado a mensagem deseja cancelar a liquidação, selecione a opção NÃO.

4.4 Na tabela FO0 o campo liquidação ficará em branco;

Fim do caso de uso

 

 

 

 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.