PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → New formula for calculating the taxi ride
New formula for calculating the taxi ride
Débuté par adrianoboller, 18 nov. 2014 13:39 - Aucune réponse
Membre enregistré
3 654 messages
Popularité : +175 (223 votes)
Posté le 18 novembre 2014 - 13:39
ProcedureWS_FormulaBandeirada(LOCALPorcentagem)

TotalCorrida isstring=""

rBandeiraInicial isreal=6.80

VlrBandeira01 isreal=2.30

VlrBandeira02 isreal=2.80

rVlrHoraParada isreal=24.00//0.40 min parado

VlrMinutoParado isreal=0.40//valor do minuto

rVlrMinutoParado30 isreal=0.30//valor do minuto

VelocidadeMedia isreal=30// 30km/h


// VM = D/T
//GloDistanciaDestino = WS_CEP_ConfereOrigDestRotaKmGps(O,D)
//GloTempoDestino = WS_CEP_ConfereOrigDestRotaKmGps(O,D)

IFGloDistanciaDestino>0

Tempo isreal=0

IFGloTempoDestino>0THEN
Tempo=GloTempoDestino
ELSE
Tempo= ((GloDistanciaDestino/1000) /VelocidadeMedia) *60// Calculo da velocidade media
END

GloValorBandeira01=rBandeiraInicial+ (((VlrBandeira01*GloDistanciaDestino)/1000) + ((VlrMinutoParado*Tempo)/60))

gloValorBandeira02=rBandeiraInicial+ (((VlrBandeira02*GloDistanciaDestino)/1000) + ((VlrMinutoParado*Tempo)/60))

IFPorcentagem>0THEN

IFgloTaxaRetorno=0
GloValorBandeira01=GloValorBandeira01+ (GloValorBandeira01* (Porcentagem/100))
ELSE
GloValorBandeira01= (GloValorBandeira01+ (GloValorBandeira01* (Porcentagem/100)))
GloValorBandeira01= (GloValorBandeira01+ (GloValorBandeira01* (gloTaxaRetorno/100)))// + 30% de taxa de retorno
END

IFgloTaxaRetorno=0
gloValorBandeira02=gloValorBandeira02+ (gloValorBandeira02* (Porcentagem/100))
ELSE
gloValorBandeira02=gloValorBandeira02+ (gloValorBandeira02* (Porcentagem/100))
gloValorBandeira02=gloValorBandeira02+ (gloValorBandeira02* (gloTaxaRetorno/100))// + 30% de taxa de retorno
END

END

GloValorBandeira01=RoundDown(GloValorBandeira01)

gloValorBandeira02=RoundUp(gloValorBandeira02)

IFGloValorBandeira01=gloValorBandeira02THEN
gloValorBandeira02+=1
END

TotalCorrida="Bandeira 1: "+GloValorBandeira01+", Bandeira 2: "+gloValorBandeira02+", Distancia: "+GloDistanciaDestino+", Tempo: "+Tempo

//Info(TotalCorrida)

END

RESULT(TotalCorrida)
>