¿En qué podemos ayudarte?
< Todos los temas
Imprimir

Convertir importes a letras en Crystal Report

En Crystal Report mediante la función ToWords se pueden convertir los números a letra, pero si deseamos convertir importes a letras utilizando la moneda entonces deberemos realizar una función personalizada. A continuación se detallan los pasos necesarios para realizar la función personalizada:

1. En el taller de fórmulas de Crystal Report se debe crea una función personalizada (por ejemplo ImporteALetra):

 

2. En las funciones deberemos copiar el siguiente código fuente:

Function ImporteALetra (importe as currency) as string     ImporteALetra = ""         ' Dividir el importe en la parte entera y la parte decimal     dim entero, decimal as currency      importe = round(importe,2)     entero = fix(importe,0)     decimal = (importe-entero)*100     ' Convertir la parte entera a letras     Select case entero         case 0              ' No hacer nada         case 1             ImporteALetra = "un euro"         case else             ImporteALetra =  ToWords(entero,0) & " euros"     end select     ' Convertir la parte decimal a letras     Select case decimal         case 0              ' No hacer nada         case 1             if ImporteALetra<>"" then  ImporteALetra = ImporteALetra & " con "             ImporteALetra = ImporteALetra &  "un céntimo"         case else             if ImporteALetra<>"" then  ImporteALetra = ImporteALetra & " con "             ImporteALetra = ImporteALetra & ToWords(decimal,0) & " céntimos"     end select End Function
Nota: si se utilizan otros nombres de función entonces es necesario cambiarlo en todo el código fuente.

3. Posteriormente crearemos una fórmula (por ejemplo TotalALetras) que haga referencia a la función creada, donde le pasaremos como parámetro un campo, fórmula o un número que contenga el importe y dicha fórmula devolverá una expresión con el importe en letras:  

4. Por último, diseñaremos el informe insertando la fórmula en la posición que deseemos.  

 

Tabla de contenidos