![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Hola:
Claro que es posible. De esta manera mantengo aislado el programa de la capa de acceso a datos (donde tengo los componentes DBExpress), accediendo a través de la capa intermedia. Y puedo tratar las capas de manera independiente. Si se configura tal y como he puesto en el primer mensaje, puede hacerse, de una manera similar a
En este caso CodNuevo es el TClientDataSet, enlazado a un proveedor que a su vez está enlazado al componente de procedimiento almacenado, que tiene un parámetro de entrada Tipo, y uno de salida Codigo del tipo VARCHAR(10). Lo utilizo para obtener un nuevo código para la tabla. Si lo que devuelvo es un entero no hay problema, pero con el VARCHAR si falla. |
#2
|
||||
|
||||
Hola.
¿ Estás seguro que el problema es el parámetro ?. Por el mensaje de error también pueden ser 2 cosas : a) Tienes una asignación en tu procedimiento, que intenta pasar una cadena dentro de una variable más corta (un varchar(12) a un varchar(10)). En lugar de truncar la cadena te salta esta excepción. b) Numeric overflow o arithmetic exception : Tienes alguna operación cuyo resultado falla (tipo división por 0), o no cabe en la variable destino (tipo asignar a un entero el resultado de una división, que puede ser un valor decimal). Asegúrate, ejecutando este procedimiento desde IBConsole, IBExpert, IBAccess, ... o similar. NOTA : Comprueba también que los parámetros, tanto en en el SQLStoredProc como en el ClientDataset sean varchar(10). PD : Piensa que el driver dbExpress de Borland es para Interbase. A medida que Firebird sigue su evolución te puedes encontrar con problemas de incompatibilidad de este tipo. En este caso, se soluciona instalando un driver dbExpress específico para Firebird, como por ejplo. : http://www.upscene.com/products/dbx/dbx_fb.htm Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
![]() |
|
|
![]() |
|