Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagedelphi
titleExemplo: GFEXWS20
linenumberstrue
#Include 'Protheus.ch'

User Function GFEXWS20()    
	
	Local aDadosGW1	    Local cFil        := PARAMIXB[1]
	local iCont    Local cEmis       := PARAMIXB[2]
    Local cDtEmis     := PARAMIXB[3] 0
	Local iLen  cCatVeic    := PARAMIXB[4]
	Local cCdTpVc     := 0
	Local lElimina PARAMIXB[5]  // CDTPVC
 	Local nEixo       := .T.
	Public aPedEsp  PARAMIXB[6]  
    Local cValPedagio := {}0 
		
Local nAgrFrt1   iLen := (Len(aDadosGW1aAgrFrt1) / 18) - 1
	



	Do Case
        Case cCatVeic == 4
		   nEixo FOR iCont := iLen TO 0 STEP -1
:= 3
		aAdd(aPedEsp,{aDadosGW1[(iCont * 18) + 3],aDadosGW1[(iCont * 18) + 18]})

      cValPedagio := 25,20 / NAgrFrt1
        Case cCatVeic == 5
		   nEixo     ADEL(aDadosGW1,((iCont * 18) + 18))

:= 4
		    NEXT nCont cValPedagio := 16,80 / nAgrFrt1
    
    aSize(aDadosGW1,len(aDadosGW1) - (iLen + 1))Case cCatVeic == 6
 		  

	// VerificanEixo se o array de pedágio possui valor:= válido4
		// Caso estiver zerado o array é eliminado
	for iCont = 1 to len(aPedEsp)
		if aPedEsp[iCont][2] != "0" 
			lElimina = .F.
		Endif
		
	next iCont	

	if lElimina
		aPedEsp := {}
	endif	
 
return aRet      cValPedagio := 33,60 / nAgrFrt1
        Case cCatVeic == 7
 		   nEixo       := 5
		   cValPedagio := 42,00 / nAgrFrt1
        Case cCatVeic == 8
 		   nEixo       := 6
		   cValPedagio := 50,40 / nAgrFrt1
    End Case

    AADD(aDadosGW1, cValPedagio)

Return aDadosGW1