![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Aportación del código de un stored procedure para conversión literal de números
Un saludo a todos.
Aunque soy un veterano del Club Delphi apenas tengo intervenciones, puesto que me limito a pasarme de vez en cuando y leer los mensajes, y alguna vez he preguntado algo. En este momento estoy migrando una aplicación desde FB 1.5 a 2.5.1 en Linux, por lo que me he tenido que plantear la migración de una librería UDF de mi propiedad a linux, recompilandola con Lazarus. Esto me hizo plantearme la conveniencia de seguir por ahí o portar toda esta librería a procedimientos almacenados, puesto que FB 2.5 es un tanto pijotero y estricto, sobre todo con los strings. Mi conclusión ha sido que migraré en su totalidad a procedimientos almacenados, puesto que FB 2.5 trae una buena colección de funciones internas, que facilitan dicha labor. Como parte de dicha migración he concluido un procedimiento, que se basa a su vez en otro que permite conocer el literal de cualquier número, positivo o negativo, entero o fraccionario, con una determinada precisión (no mayor que 6). Para ello hay dos procedimientos: 1º IUDF_NUMERAL, que admite como parámetro un número entero positivo y devuelve el literal. Este es recursivo, y permite con las cadenas básicas componer cualquier número. 2º IUDF_NUMLITERAL, utiliza el anterior, y permite la entrada de cualquier número decimal de hasta precisión 6, y un parámetro que ajustará la precisión de salida. La salida es un número, positivo o negativo, entero o fraccionario, con la precisión solicitada, en formato literal. Ahí va un script con el código:
Si hay algo erróneo, por favor hacérmelo saber, en todo caso, que os resulte de provecho. Un saludo. |
#2
|
||||
|
||||
Gracias por compartirlo
![]() |
#3
|
||||
|
||||
Muchas gracias por tu aporte birmain.
Saludos. ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#4
|
||||
|
||||
Excelente aporte.
Gracias.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#5
|
||||
|
||||
Excelente aportación.
Muchas gracias.
__________________
Guía de Estilo de los Foros Cita:
![]() |
#6
|
||||
|
||||
Que curioso.
Le he tenido que quitar los acentos a los comentarios para que me acepte crear los procedimientos almacenados. Aparte de eso, parece funcionar perfectamente. ![]() Gracias de nuevo por la aportación, Fernando.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#7
|
|||
|
|||
Conversion de Numeros a Letras... en Delphi
Buen dia
Gracias por la ayuda, el codigo que enviastes, logre ejecutarlo pero sigo igual no me convierte los centavos ejemplo (125.10), solo me convierte... CIENTO VEINTICINCO... lo que necesito es que me diga.. Ciento Veinticinco con 10 Centavos..... si me envias ese mismo codigo con esas modificaciones saludos gracias |
#8
|
|||
|
|||
Esta con error, conversion de numeros a letras
Estimado gracias por tu ayuda, pero ahora ya no convierte a letras todos los numeros, ejemplo 1425.50, solo convierte
MIL...esto despues de cambiar la linea.. if (prec > 6) then prec = 2 lo demas no ignora saludos |
#9
|
||||
|
||||
Hola sam123.
Es curioso... A mi me funciona correctamente, al ejecutar:
Obtengo el resultado: Cita:
Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 16-07-2015 a las 19:15:34. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Stored Procedure | gluglu | Conexión con bases de datos | 16 | 24-02-2011 17:41:24 |
Aportacion Funcion para calcular dias : DaysForDate | bitbow | Varios | 1 | 08-11-2010 20:49:24 |
Conversion de números | donald shimoda | Varios | 7 | 07-10-2008 19:57:48 |
Stored Procedure genera codigo | Carlos Hurtado | Firebird e Interbase | 2 | 19-10-2005 19:38:19 |
Stored Procedure | tgsistemas | SQL | 1 | 27-02-2004 13:10:33 |
![]() |
|