Gracias por tu interes Cristobal.
No tengo error de compilacion, pero no funciona bien, sino especifico el valor por defecto en la funcion, el programa se queda esperando sin hacer nada.
El codigo es este, es una funcion de conversion de pesetas a Euros y viceversa que realice en su dia en clipper. Y ahora como estoy mirando de volver a
Xbase con Harbour, jaja, ya he visto a mas de uno y me han dado envidia.
FUNCTION Ptas2Eur(nCantidad,lEuro) // Si .T. Ptas -> Euro, .F. Euro->Ptas
Local nEntero,nDecimal
Local c2Decimales,c3Decimal
// DEFAULT lEuro:=.T. error en Harbour
hb_default( lEuro, .T. )
// De Ptas. a Euros
IF lEuro
nEntero:=INT(nCantidad / EURO) // parte entera
nDecimal:=( (nCantidad / EURO)-nEntero ) * 1000
c2Decimales:=SUBSTR(STR(nDecimal,3),1,2)
c3Decimal:=SUBSTR(STR(nDecimal,3),3,1) // cogemos el 3er decimal
IF VAL(c3Decimal) >= 5 // sumar 0,01
nDecimal:=(VAL(c2Decimales))/100 + 1/100
ELSE
nDecimal:=VAL(c2Decimales)/100
ENDIF
nCantidad:=nEntero+nDecimal
ELSE
nCantidad:=ROUND((nCantidad * EURO),0)
ENDIF
RETURN (nCantidad)
Ya se que habran funciones mucho mejor estructurdas y rapidas
, pero me gustaba hacermelo a mi a mi manera.
Os puedo asegurar que funcionaba bien.
Saludos.