Informix y BDE o ADO
Hola mira yo he utilizado los componentes de acceso a datos de BDE y de ADO voy primero con BDE
En efecto en los storeprocedures no reconoce los nombres, solo las posiciones por lo tanto al indicarle al componente TStoreProcedure el nombre del procedimiento almacenado y te vas a la sección de [PARAMS], guíate por el nombre que ahí te marca de igual manera cuando agregues los campos de respuesta, luego en tu código donde les asignes los valores a los parametros puedes utilizar la siguiente instruccion
[Nombre Procedimiento].ParamByName('[nombre de parametro]').[tipo de dato] (AsString, AsInteger, AsDatetime, etc)
Como Informix permite regresar un conjunto de registros, manéjalo como un simple dataset (Instrucciones First, Next, Previous, etc) y para hacer referencia a la columna sigues la siguiente instrucción:
[Nombre Procedimiento].FieldByName('[nombre de columna]').[tipo de dato] (AsString, AsInteger, AsDatetime, etc)
o
[Nombre Procedimiento].Fields[posición de columan (inicia en cero)].[tipo de dato] (AsString, AsInteger, AsDatetime, etc)
Bueno ahora con ADO tiene un componente que se denomina ComandText, dónde tú puedes introducir una instrucción de sql en la propieda comantext:
EXECUTE PROCEDURE [NombreProcedimiento](valor parametro1, valor parametro2)
y posteriormente a la instrucción [nombre componente].exec te puede devolver un dataset que lo manejas como cualquier otro y haces referencia a sus columnas por la posición
[Nombre Procedimiento].Fields[posición de columan (inicia en cero)].[tipo de dato] (AsString, AsInteger, AsDatetime, etc)
Espero que te sirva ..
Saludos
|