Power Builder - Solo Para Expertos En Mysql

   
Vista:

Solo Para Expertos En Mysql

Publicado por Walter  (4 intervenciones) el 25/01/2011 16:52:36
Estimados amigos:

Trabajo con Power Builder 11.5 y Mysql 5.1 sobre plataforma Windows y tengo el siguiente problema.

En la BD, cree la sgte. función :

DELIMITER $$

DROP FUNCTION IF EXISTS `FComTiempoVigencia` $$
CREATE DEFINER="root"@"localhost" FUNCTION "FComTiempoVigencia"(IdFecha DATE) RETURNS int(11)
BEGIN
RETURN (SELECT DATEDIFF(IdFecha, CURDATE()));
END $$

DELIMITER ;

Esta función funciona bien desde el ambiente de Base de datos del PB.
EL problema se presenta cuando intento "llamarla" desde el script de PB asi:

SELECT FComTiempoVigencia(gs_usuario.fcambio) INTO :ll_dias FROM SEG001;

Donde gs_usuario.fcambio es una estructura con este campo en DATE
SEG001 es una tabla cualquiera de la BD.

Cuando la función no tiene argumento, la puedo llamar, pero en este caso, me sale el siguiente error:

C0038: SQLSTATE =S0022[MySQL][ODBC 5.1 Driver][mysqld-5.5.8-debug]Unknow column 'gs_usuario.fcambio' in 'field list'

Soy nuevo trabajando con Mysql pero lo curioso del asunto es que, si al argumento, lo pongo entre comillas simples ('gs_usuario.fcambio'), el PB compila sin error el programa.

Gracias mil por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Solo Para Expertos En Mysql

Publicado por Victor German (25 intervenciones) el 28/01/2011 21:48:57
No soy un experto en el tema, pero de casualidad no le faltaran los dos puntos ":" al argumento de tu funcion ??

Esto...
SELECT FComTiempoVigencia(gs_usuario.fcambio) INTO :ll_dias FROM SEG001;

Por esto...
SELECT FComTiempoVigencia(:gs_usuario.fcambio) INTO :ll_dias FROM SEG001;

El error se me ha presentado cuando no le digo a la cosulta que le estoy enviando un valor, y este la toma como una columna.

C0038: SQLSTATE =S0022[MySQL][ODBC 5.1 Driver][mysqld-5.5.8-debug]Unknow column 'gs_usuario.fcambio' in 'field list'

Saludos !!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar