#INCLUDE 'PROTHEUS.CH'
//---------------------------------------------------------------------------------------------------
// Função - MAAVCRED
// Descrição - Possui duas maneiras de retorno: Caracter ou Lógico
//
// Retorno lógico: Retorna variável lógica, sendo .F. para bloquear e .T. para liberar.
// Ao bloquear, automaticamente o código do bloqueio será 01.
//
// Retorno Caracter: Retorna uma variável Caracter, sendo informado o código de bloqueio conforme a
// listagem abaixo. Caso retorne em branco, não existirá bloqueio.
//
// Motivos de bloqueio de credito:
// 01 - Bloqueio de credito por Valor
// 04 - Vencimento do Limite de credito - Data de credito Vencida
// 05 - Bloqueio Manual/Estorno
// 09 - Liberação de credito Rejeitada
//---------------------------------------------------------------------------------------------------
User Function MAAVCREDMaAvCrPr()
Local cCodCli := ParamIxb[1] //Código do Cliente
Local cLoja := ParamIxb[2] //Código da loja
Local nValor := ParamIxb[3] //Preço da Venda
Local nMoeda := ParamIxb[4] //Moeda
Local lPedido := ParamIxb[5] //Inclusão de um pedido de venda
Local cTipoLim cComplTur := ParamIxb[6] //ComplementoControle do módulo de turismocrédito
Local cSegTurlRetorno := ParamIxb[7] //ComplementoIndica dose móduloexiste debloqueio turismo
na validação padrão (.F.) Localou xReturnse não existe := NIL //Variável de retornobloqueio (.T.)
Local
cCodigo If cCodcli =:= "000001" .And. cLoja = '01' //Caso forParamIxb[8] //Código com o clientetipo ede Lojabloqueio forde igualcrédito
a 000001 e 01.
Local lBloq xReturn := "05" // Bloqueio Manual/Estorno.
.T. ElseIf nValor > 10000 //Caso o total do valor do pedidoVariável lógica de vendaretorno excederapontando ose limiteexiste (Limiteou denão 10000)bloqueio.
If lRetorno .and. xReturn := "09" //Liberação de Crédito Rejeitada.
ElseIf cCodcliEmpty(cCodigo) .and. cCodCli == "'000001"' .And. cLoja nValor >== '99' //Caso contrario, realizar liberacao do credito. 1000
xReturnlBloq := .TF. //Liberado
EndIf
Return (xReturnlBloq) |