Ver Mensaje Individual
  #2  
Antiguo 30-04-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola JM1985.

No sé con que RDBMS estes trabajando, pero dudo mucho que puedas enviar un argumento tipo TDataSet...
Lo que se me ocurre es que envíes el nombre de la tabla al stored procedure para que en él se realicen las acciones necesarias sobre ella.

Un ejemplo para Firebird:
Código SQL [-]
SET TERM ^ ;

CREATE OR ALTER PROCEDURE SP_TABLE_COUNT ( TABLE_NAME VARCHAR(31) )
RETURNS ( RESULT INTEGER )
AS
BEGIN
 EXECUTE STATEMENT 'SELECT COUNT(*) FROM ' || TABLE_NAME INTO :RESULT;
END^

SET TERM ; ^

Llamada:
Código PHP:
void __fastcall TForm1::Button1Click(TObject *Sender) {
  
TSQLStoredProc *sp static_cast<TSQLStoredProc*>( SQLStoredProc1 );

  
sp->StoredProcName "SP_TABLE_COUNT";
  
sp->ParamByName("TABLE_NAME")->AsString "CLIENTES";
  
sp->ExecProc();
  
ShowMessagesp->ParamByName("RESULT")->AsString );

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita