Árvore de páginas

CONTEÚDO

01. VISÃO GERAL

O ponto de entrada F200VAR possibilita manipular as informações (variáveis) no retorno do Cnab a Receber (FINA200). 

Esse ponto de entrada é chamado na função fA200Ger, logo após a carga dos dados do arquivo de retorno para as variáveis de controle, e antes de efetuar a baixa via execauto


Importante

O comportamento do ponto de entrada F200VAR é igual ao ponto de entrada 200GEMBX.

02. EXEMPLO DE UTILIZAÇÃO


F200VAR
#INCLUDE "PROTHEUS.CH"

//-------------------------------------------------------------------------------
/*/{Protheus.doc} F200VAR
Manipular as informações (variáveis) no retorno do Cnab a Receber (FINA200). 

@PARAMIXB aDados[1] = Número do Título    | Variavel de origem: cNumTit
          aDados[2] = Data da Baixa       | Variavel de origem: dBaixa
		  aDados[3] = Tipo do Título 	  | Variavel de origem: cTipo
		  aDados[4] = Nosso Número 		  | Variavel de origem: cNsNum
          aDados[5] = Valor da Despesa    | Variavel de origem: nDespes
          aDados[6] = Valor do Desconto   | Variavel de origem: nDescont
          aDados[7] = Valor do Abatimento | Variavel de origem: nAbatim
          aDados[8] = Valor Recebido  	  | Variavel de origem: nValRec
          aDados[9] = Juros 			  | Variavel de origem: nJuros
          aDados[10] = Multa 			  | Variavel de origem: nMulta
          aDados[11] = Outras Despesas    | Variavel de origem: nOutrDesp
          aDados[12] = Valor do Credito   | Variavel de origem: nValCc
          aDados[13] = Data do Credito    | Variavel de origem: dDataCred
          aDados[14] = Ocorrência         | Variavel de origem: cOcorr
          aDados[15] = Motivo do banco    | Variavel de origem: cMotBan
          aDados[16] = Linha Inteira      | Variavel de origem: xBuffer
          aDados[17] = Data de Vencimento | Variavel de origem: dDtVc

/*/
//-------------------------------------------------------------------------------

User Function F200VAR()

    Local aDados     := PARAMIXB
    Local aAreaSE1	 := SE1->(GetArea())
    Local cNumTitulo := Alltrim(Paramixb[1][1])
    Local nValLiq    := 0

    dbSelectArea("SE1")                
    SE1->( dbSetOrder(16) )         
    cChave := SE1->(dbSeek(xFilial("SE1")+cNumTitulo))
       
    If SE1->E1_DECRESC > 0
        //Ajusta o valor de baixa de titulos com decrescimo, para o saldo ser baixado integralmente
        nValLiq := nValRec + SE1->E1_DECRESC
        nAbatim += SE1->E1_DECRESC
        If nValRec < nValLiq	
            nValRec := nValLiq
        EndIf	
        
    EndIf
    
    RestArea(aAreaSE1)

Return(aDados)

03. PARÂMETROS

O ponto de entrada recebe a variável PARAMIXB em forma de array contendo a estrutura abaixo:

PosiçãoDescriçãoVariavel de origem
1Número do Título   cNumTit
2Data da Baixa      dBaixa
3Tipo do Título cTipo
4Nosso Número cNsNum
5Valor da Despesa   nDespes
6Valor do Desconto  nDescont
7Valor do AbatimentonAbatim
8Valor Recebido  nValRec
9Juros nJuros
10 Multa nMulta
11 Outras Despesas   nOutrDesp
12 Valor do Credito  nValCc
13 Data do Credito   dDataCred
14 Ocorrência        cOcorr
15 Motivo do banco (EB_MOTBAN)   cMotBan
16 Linha Inteira     xBuffer
17 Data de VencimentodDtVc

04. RETORNO

Deve retornar uma variável do tipo ARRAY com a mesma estrutura do parâmetro PARAMIXB.


Importante

Durante o processamento da rotina,  após sair do ponto de entrada F200VAR, o seu array de retorno também é repassado por parâmetro para outros pontos de entrada.

Portanto, caso for alterar o conteúdo de variáveis dentro do ponto de entrada F200VAR, avalie se a variável alterada também foi devidamente atualizada no array de retorno para não impactar os demais pontos de entrada.

Segue os pontos de entrada que podem ser impactados: F200AVL, FA200POS e FA200FIL.