PDA

Ver la Versión Completa : Parametros de salida en un Store Proc. de SQL


ingel
30-05-2007, 15:33:49
Buendia a todos..
Mi problema es el siguiente .. tengo que recuperar parametros modificados en un Store procedure SQL desde delphi .. para esto en el declaro los parametros como OUTPUT .. y luego del Execproc del sql realizo la asignacion

mivar:=parambyname('@Nro_Factura').asString ;

pero me devuelve siempre el valor con que inicialice la variable en delphi y NO el valor que TOMO EN EL SP..el cual fue CORRECTO , pues lo inserto en la TABLA correspondiente ..

en el SP ..hago una asignacion del tipo

set @nro_factura = rtrim(@r2) + rtrim(@nuenrofact)

LO unico que pude observar es que cuando uso campos INT funciona como 'deberia' o sea RECUPERO desde delphi el valor modificado en el SP .. pero cuando uso campos CHAR.. NO SUCEDE LO MISMO.. no se si tendra algo que ver ....

Saludos y gracias a todos por su tiempo
Ingel.

lgarcia
30-05-2007, 16:57:50
Hola:

Haz probado a ejecutar ese SP en el Query Analizer a ver si te devuelve esos parametros, porque los SP devuelven cualquier tipo de valor.

En el caso de la cita que tu haces de:
mivar:=parambyname('@Nro_Factura').asString ;

eso esta dentro de un with?

Saludos
Luis Garcia

ingel
30-05-2007, 17:36:17
y si mi asignacion desde delphi esta dentro de un with

"with FStore.StoredCuerpoFactura do begin"

la asignacion esta despues de exceproc

lo extraño es que con valores INT funciona siempre .. y con char AVECES
y no logro darme cuenta que es lo que varia para que pase eso ..
Leer los parametros antes del with ..quizas ...

seguire probando ..GRACIAS por tu respuesta ...

ContraVeneno
30-05-2007, 17:49:23
¿estas utilizando el método "GetResults" de TStoredProcedure en delphi?

ingel
30-05-2007, 18:48:07
y el componente TMSStoredProc .. no tiene esa propiedad..
pero estoy buscando alguna similar ..
GRacias..