Hola.
Tengo un problema al ejecutar un procedimiento almacenado en Delphi 2010 con los drivers dbexpress.
El procedimiento funciona correctamente al ejecutarlo desde ibexpert, pero no se reflejan los cambios al hacerlo desde Delphi y si al hacerlo desde ibexpert. Supongo que hace falta hacer Commit, pero no sé cómo hacerlo para un procedimiento almacenado utilizando los drivers dbexpress.
Utilizo el componente TSQLStoredProc de la paleta de componentes en la pestaña dbexpress.
Esta es el código que tengo, así ejecuto otros procedimientos almacenados y funcionan correctamente, pero este no (otros procedimientos que uso son más simples).
Código Delphi
[-]
try
with dmDatos.SQLStoredProcExistencia do
begin
Close;
StoredProcName := 'TRASPASOINVENTARIO';
ParamByName('PRODUCTO').AsInteger := StrToInt(grdDatos.Cells[0, i]);
ParamByName('ALMACENDESTINO').AsInteger :=
dmDatos.SQLStoredProcAlmacenD.ParamByName('clave').AsInteger;
ParamByName('ALMACENORIGEN').AsInteger :=
dmDatos.SQLStoredProcAlmacenO.ParamByName('clave').AsInteger;
ParamByName('SOLICITADO').AsFloat := StrToFloat
(grdDatos.Cells[3, i]);
Prepared := true;
ExecProc;
Open;
end;
except
on E: Exception do
ShowMessage(E.Message);
end;
Muchas gracias por su ayuda.