Árvore de páginas

CDAPI013 - Avaliação de Crédito

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físico:

cdp/cdapi013.p

 

Objetivo:

Retornar os eventuais problemas de crédito do cliente/pedido, assim como atualizar o pedido de venda de acordo com a situação do cliente (aprovar, reprovar, avaliar).

 

Considerações Gerais:

A seguinte temp-table deve ser atualizada para a execução:

 

TT-PARAM-AVAL

CampoTipoDescrição

nr-pedido

integer

Código do pedido em questão

param-aval

integer

Parâmetro de avaliação (1 - Atraso, 2 - Limite, 3 - Ambos)
cod-sit-aval integerSituação do pedido avaliado
embarque logicalAvaliação sendo feita no Embarque (Faturamento) ou Implantação do Pedido
efetiva logicalEfetiva a avaliação de credito ou apenas faz simulação
retorna logicalRetorna logo após a primeira ocorrência encontrada ou não
reavalia-forclogicalAvalia Pedidos aprovados de maneira forçada
vl-a-avaliar decimalValor a ser abatido do crédito do cliente
saldo-lim decimalArmazena o saldo do limite de crédito sem o pedido em questão
usuario characterUsuário corrente
programacharacterPrograma que chamou a API

 

Parâmetros de Entrada/Saída

 

- temp-table TT-PARAM-AVAL (definição acima)

- temp-table TT-ERROS-AVAL - retorno dos eventuais problemas de crédito, conforme abaixo:

TT-ERROS-AVAL

CampoTipoDescrição
emitenteintegerCódigo do Emitente
cd-errointegerMotivo para não aprovação do crédito do cliente

Hoje existem 14 testes listados abaixo (com numero da MSG EMS):

01. 4084: Nr meses inativo

02. 4085: Nr meses inativo (MP)

03. 4086: Atraso de pagamento nos últimos "x" meses

04. 4087: Atraso de pagamento nos últimos "x" meses (MP)

05. 4088: Valor excedido para títulos de Aviso de Débito

06. 4089: Valor excedido para títulos de Aviso de Débito (MP)

07. 4090: Valor excedido para duplicatas normais

08. 4091: Valor excedido para duplicatas normais (MP)

09. 8464: Cliente possui cheque devolvido

10. 4092: Data do limite de crédito vencida

11. 4097: Valor do limite de crédito não pode ser 0 (Zero)

12. 4093: Cliente excedeu seu LC sem considerar o pedido em questão

13. 4094: Cliente excedeu seu LC sem considerar o pedido em questão (MP)

14. 4095: Cliente excedeu seu LC com o pedido em questão

 

Execução

 

A API irá verificar o crédito do cliente do pedido de venda passado como parâmetro através da temp-table tt-param-aval. Conforme a avaliação, irá retornar o(s) erro(s) na temp-table tt-erros-aval ou a atual situação do pedido na tt-param-aval e no próprio pedido de venda (se parametrizado).

 

Exemplo de Utilização

 

Antes de tudo, deve ser declarado a include cdapi013.i que possui as definições da tt-param-aval e tt-erros-aval.

Antes de rodar a cdapi013.p (Api de Avaliação de Crédito), é necessária a criação da tt-param-aval carregando os campos conforme descrito na documentação.

Após a criação e os dados carregados, rodar a cdapi013.p

Caso necessário efetuar algum tratamento de validação, poderá ser feito conforme exemplo abaixo.

 

{cdp/cdapi013.i}

...

create tt-param-aval.

assign tt-param-aval.nr-pedido     = ... 

....

run cdp/cdapi013.p (input-output table tt-param-aval, input-output table tt-erros-aval).

find first tt-erros-aval where tt-erros-aval.cod-emitente = emitente.cod-emitente no-lock no-error.

if  avail tt-erros-aval then do on endkey undo, retry:

         run utp/ut-msgs.p (input "show",

                           input 8259,    /* Número da mensagem de Erro */

                                                   input ped-venda.nr-pedcli  + "~~" +

                                        ped-venda.nome-abrev + "~~" +

                                        ped-venda.desc-bloq).

         delete tt-erros-aval.

end.