Histórico da Página
Informações Gerais
Especificação | |||
Produto | Logix | Módulo | Financeiro - Contas a pagar |
Segmento Executor | Manufatura | ||
Projeto1 | MANFIN01 - Projeto Equipe Desenvolvimento - Finanças | IRM1 |
|
Requisito1 | MANFIN01-1627 Story - Trade Easy Importação - Liquidação de Títulos com mais de um adiantamento em moeda estrangeira | Subtarefa1 | MANFIN01-1628 Gerar Especificação - Trade Easy Importação - Liquidação de Títulos com mais de um adiantamento em moeda estrangeira |
Chamado2 |
| ||
País | ( X ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
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
Viabilizar o correto cálculo da variação cambial de títulos cuja liquidação ocorra por vários adiantamentos em datas distintas e com valor de cotação diferente.
Definição da Regra de Negócio
Fin85015 – Data de proposta
Objetivo: No cenário atual do Logix, nossos clientes colocam a data de proposta no momento em que vão liquidar completamente o título. Neste momento ocorre a conversão para a moeda padrão utilizando a cotação da data de proposta como fator de conversão. Em situações em que a liquidação do título ocorre por vários adiantamentos em datas e cotações distintas o saldo em reais pode ficar incorreto. A alteração proposta visa corrigir esta distorção através da conversão parcial do valor do título, ou seja, faremos a correção apenas do seu saldo.
Na função: fin80015_verifica_moeda_padrao()
Em dois pontos o valor da AP(val_ap_dat_pgto) na data de pagamento é calculado. Alterar nestes pontos para subtrair o valor dos adiantamentos já conciliados. Conforme:
DE:
LET mr_ap.val_ap_dat_pgto = mr_ap.val_nom_ap * l_parametro_numerico
PARA:
CALL fin80015_busca_adto_moeda_estrang(TODAY,mr_ap.cod_empresa,mr_ap.num_ap)
RETURNING l_val_adto_moeda_est, l_val_adto_moeda_pad
LET mr_ap.val_ap_dat_pgto = ((mr_ap.val_nom_ap - l_val_adto_moeda_est) * l_parametro_numerico) + l_val_adto_moeda_pad
Criar uma função no fin80015 -> fin80015_busca_adto_moeda_estrang(), a função deve fazer o SELECT SUM abaixo e retornar o valor. Caso não exista dados deve retornar ZERO. Verificar se a tabela existe, caso não exista retornar ZERO sem apresentar mensagem, pois não é obrigatória.
SELECT SUM(val_adiantamento)
INTO l_val_adto_moeda_est
FROM cap_movto_adto_moed_estra
WHERE empresa = l_emp
AND ad_autorizacao_pagto = l_num_ap
AND ind_ad_autorizacao_pagto = '2'
AND ind_entrada_baixa_adiantamento = 'B'
AND dat_movimento <= l_dat_base
A função também deverá deve retornar o valor dos adiantamentos em reais, utilizados na baixa da AP. O valor obtido será somado ao valor da variável mr_ap.val_ap_dat_pgto (conforme exemplo acima),
SELECT SUM(val_mov)
INTO l_val_adto_moeda_pad
FROM mov_adiant
WHERE cod_empresa = l_emp
AND num_ad_ap_mov = l_num_ap
AND ies_ad_ap_mov = '2'
AND ies_ent_bx = 'B'
AND dat_mov <= l_dat_base
Observações:
1 - EFETUAR O SEGUNDO SELECT SOMENTE SE O PRIMEIRO FOR MAIOR QUE ZERO.
2 – NÃO HAVENDO REGISTRO OU A TABELA NÃO EXISTINDO DEVERÁ RETORNAR ZERO PARA AS DUAS VARIÁVEIS.
3- COLOCAR COMENTÁRIO NO INICIO DA FUNÇÃO INDICANDO QUE APLICA-SE SOMENTE PARA O PROJETO DE IMPORTAÇÃO E QUE PARA OS DEMAIS CLIENTES O RESULTADO VAI SER ZERO, POIS NÃO TERÃO A TABALA CAP_MOVTO_ADTO_MOEDA_ESTRA OU A TABELA ESTARÁ VAZIA. NESTE CASO OS VALORES DE ADIANTAMENTO TANTO EM MOEDA ESTRANGEIRA COMO NA MOEDA PADRÃO SERÃO ZERO, OU SEJA, NÃO MUDARÁ O CALCULO ATUAL.
Fin30014 – Correção cambial mensal
Estes programas tratam da contabilização mensal da provisão de variação cambial de títulos a pagar.
Alteraremos a função fin30014_grava_ap_corr para que seja possível provisionar variação de títulos que sofreram múltiplas baixas por adiantamentos em datas distintas e com valor de cotação diferente.
Antes de inserir na tabela AP_CORR calcular o valor da variável val_moeda_padr:
DE:
LET mr_ap_corr.val_moeda_padr = mr_ap.val_nom_ap * m_val_cotacao
PARA:
CALL fin80015_busca_adto_moeda_estrang(mr_tela.virtual_periodo, mr_ap_corr.cod_empresa, mr_ap.num_ap)
RETURNING l_val_adto_moeda_est, l_val_adto_moeda_pad
LET mr_ap_corr.val_moeda_padr =(( mr_ap.val_nom_ap - l_val_adto_moeda_est) * m_val_cotacao ) + l_val_adto_moeda_pad
OBS: em dois pontos da função é realizado o calculo desta variável, primeiro ponto é quando já existe registro na tabela ap_corr, isso significa que já houve contabilização da variação cambial para o título em períodos anteriores. E no segundo ponto é quando não existe a tabela ap_corr, significando que é o primeiro processamento da variação cambial do título, então o programa vai buscar dados da tabela AD_corr.
Fin80019 – Baixa automática de APS
Comentar as chamadas para a função fin80019_grava_ap_corr_saldo_adto é incorreto calcular variação cambial sobre adiantamento, visto que o mesmo está liquidado.
Rotina | Tipo de Operação |
FIN80015 - | [Alteração] |
FIN30014 | [Alteração] |
FIN80019 | [Alteração] |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|