Página 1 de 1

Tipo Date en DB2

NotaPublicado: Jue Mar 29, 2007 5:32 pm
por ornate
Hola.
Tengo un procedimiento (SP) en DB2, en el cual uno de los parametros en una fecha, y al momento de ejecutarlo me sale el siguiente error

Atributos del parámetro 3 no válidos para procedimiento o función SP_FECHA en LIBSP

Claro el parametro 3 es de tipo Dateiso en plex y en DB2 es DATE

Nota: El SP solo realiza un insert y retorna un valor

Gracias.

NotaPublicado: Jue Abr 05, 2007 9:48 am
por pacopicon
Hola Ornate:

En principio no veo ningún problema, ya que una DateISO de Plex se corresponde con una DATE de DB2. Yo miraría más por el formato de la fecha (como se está pasando y como se espera) o incluso por el contenido, ya que DB2 creo recordar, no acepta fechas inferiores a 1901.

Saludos

NotaPublicado: Jue Abr 05, 2007 2:56 pm
por ornate
pacopicon escribió:Hola Ornate:

En principio no veo ningún problema, ya que una DateISO de Plex se corresponde con una DATE de DB2. Yo miraría más por el formato de la fecha (como se está pasando y como se espera) o incluso por el contenido, ya que DB2 creo recordar, no acepta fechas inferiores a 1901.

Saludos


Estimado.
He probado cambiando la variante, cambiando el formato de la fecha (aaaa-mm-dd en la conf de mi pc) y nada funciona, sigue con el mismo error, ahora lo que si me funciona es devolver un date, para lo cual la recibo en un shortdescription de largo 10.
Nota: La variable que uso solo hereda de un DateIso y los procedimientos son generados por Navigator.

Este es el mensaje del ISeries (3 es el date de entrada)

Mensaje . . . . : Atributos del parámetro 3 no válidos para procedimiento o
función SERV_00013 en PRUEBASDB2.
Causa . . . . . : El tipo de datos, la longitud o el valor del parámetro 3
no son válidos para el lenguaje especificado para el procedimiento o función
SERV_00013 en PRUEBASDB2. El nombre del parámetro es *N. A continuación se
muestra una lista de condiciones para los parámetros:
-- Para C: no es válido el tipo de datos NUMERIC.
-- Para PL/I: no son válidos los tipos de datos NUMERIC, BIGINT, GRAPHIC,
VARGRAPHIC, CLOB, BLOB y DBCLOB.
-- Para COBOL: la precisión para DECIMAL o NUMERIC no puede ser mayor que
18. No son válidos los tipos de datos FLOAT, GRAPHIC, BIGINT, VARGRAPHIC,
CLOB, BLOB ni DBCLOB.
-- Para REXX: no son válidos los tipos de datos SMALLINT, BIGINT, NUMERIC,
Unicode graphic, CLOB, BLOB y DBCLOB. FLOAT no es válido si la precisión es
de 1 a 24. La precisión para DECIMAL no puede ser superior a 63.
-- Para RPG: no son válidos los tipos de datos FLOAT, BIGINT, VARCHAR,
VARBINARY, GRAPHIC, VARGRAPHIC, CLOB, BLOB, DBCLOB ni ROWID.
-- Para CL: no son válidos los tipos de datos BIGINT, NUMERIC, VARCHAR,
VARBINARY, FLOAT, GRAPHIC, VARGRAPHIC, CLOB, BLOB ni DBCLOB. No puede
especificarse GENERAL WITH NULLS para CL.
-- Los enlaces de datos no son tipos de datos válidos para parámetros a
menos que la rutina sea una función o un procedimiento SQL.
-- Los LOB con AS LOCATOR no son tipos de datos válidos para los
parámetros de un procedimiento o una función SQL.
Recuperación . : Corrija el tipo de datos o la precisión que se ha
especificado para el parámetro en la sentencia DECLARE PROCEDURE, CREATE
PROCEDURE o CREATE FUNCTION. Vuelva a intentar la petición.
Gracias.