Árvore de páginas

01. DADOS GERAIS

Linha de Produto:Microsiga Protheus®
Segmento:Serviços
Módulo:Financeiro
Rotina:FINA150 - Arquivo de Cobrança


02. DESCRIÇÃO

O ponto de entrada FA150CBR foi disponibilizado para que a geração do código de barras de títulos do Banco Itaú (341) possa ser alterada durante sua gravação.

Ele será executado durante a geração do arquivo de remessa CNAB.



Importante

Parâmetros:

ParamIXB[1] - CodBarras


Além do parâmetro informado no ponto de entrada, pode-se utilizar de qualquer informação disponível das tabelas Título a Pagar (SE1), Banco (SA6) e Parâmetros de Banco (SEE) que estão sendo processadas, pois os registros estarão posicionados.


Retorno:

NomeTipoDescriçãoObrigatório
cCodBarCharacterComposição do Código de BarrasSim


03. EXEMPLO DE UTILIZAÇÃO


FA150CBR
#INCLUDE "Protheus.CH"

User Function FA150CBR()
    Local cCodBar := ParamIXB
    Local cCodAux := ''
    Local cAux := ''
    Local cNosNum := ''
    Local nSeqCdBr := 2
    Local nFor := 0
    Local nTot := 0

    cNosNum := "1" + Right(Alltrim(NossoNum()), 7) // Customização do NossoNum

    cCodBar := Left(cCodBar ,22) + cNosNum + Right(cCodBar, 14)

    //Gerar novo DAC MOD11
    cCodAux := Substring(cCodBar, 1, 4) + Substring(cCodBar, 6, 39)

    nSeqCdBr := 2
	For nFor := 1 To 43
		If nSeqCdBr > 9
			nSeqCdBr := 2
		Endif
		cAux := StrZero((nSeqCdBr * Val(Left(Right(cCodAux, nFor), 1))), 2)
		nTot += Val(cAux)
		nSeqCdBr += 1
	Next

	nTot := nTot % 11
	nTot := If(nTot == 0 .Or. nTot == 1 .Or. nTot == 10 .Or. nTot == 11, 1, 11 - nTot)

	cCodBar := Left(cCodAux, 4) + Str(nTot, 1) + Right(cCodAux, 39)

Return cCodBar