Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   MYDAC Error en Parametros (https://www.clubdelphi.com/foros/showthread.php?t=89285)

omarperez.qui 28-10-2015 19:39:30

MYDAC Error en Parametros
 
Buenas, estoy usando Mydac con XE7, cuando uso un componente TMyStyoreProc me corre el orden de los parametros y da error, use el TMySQLMonitor para ver cual es el problema y me encuentro con el siguiente resultado...

Fuente Delphi
Código Delphi [-]
  with dm2.PUpdateSynRegistro do   
  try
    ParamByName('PModo').value := 'U';
    ParamByName('pcodigo_Sucursal').Value := vSyncCodSuc_Origen;
    ParamByName('pTabla').value := vSyncTabla;
    ParamByName('pSnap').value :=  vSyncSnapActual;
    ParamByName('pSyncroInicio').Value:=vSyncSnapActual;
    ParamByName('pSyncroFin').Value:= Now;
    ParamByName('pDestino_CodSucursal').Value := vSyncCodSuc_destino;
    if sError='' then sError:='OK';
    ParamByName('pResultado').Value:= sError;
    ParamByName('pArchivo').value := vSyncArchivo;
    ParamByName('pid').Value:= vIdRegistro;
    ExecProc;
  except
    on E: Exception do GuardoExcepcion('Error Actualizando Registro '+vSyncTabla+' '+E.Message);
  end;

MySqlMonitor
Código SQL [-]
SET @pid = : pid;
CALL Update_SyncroRegistro(: pmodo, : pcodigo_sucursal, : ptabla, : psnap, : psyncroInicio, : psyncroFin, : pdestino_codSucursal, : presultado, : parchivo, @pid);
SELECT CAST(@pid AS SIGNED) AS '@pid'
: pmodo(String[1],IN)='U' 
: pcodigo_sucursal(SmallInt,IN)=1 
: ptabla(String[8],IN)='usuarios' 
: psnap(DateTime,IN)=28/10/2015 02:45:44 p.m. 
: psyncroInicio(DateTime,IN)=28/10/2015 02:45:44 p.m. 
: psyncroFin(DateTime,IN)=28/10/2015 02:52:57 p.m. 
: pdestino_codSucursal(SmallInt,IN)=2 
: presultado(String[2],IN)='OK' 
: parchivo(String[56],IN)='G:/_D7/Best/SyncroWeb/Win32/Debug/Envio/01usuarios02.dat' 
: pid(LargeInt,IN/OUT)=21
SET @pid = 'U';
CALL Update_SyncroRegistro(1, 'usuarios', '2015-10-28 14:45:44', '2015-10-28 14:45:44', '2015-10-28 14:52:57', 2, 'OK', 'G:/_D7/Best/SyncroWeb/Win32/Debug/Envio/01usuarios02.dat', 21, @pid);
SELECT CAST(@pid AS SIGNED) AS '@pid'

Error:
#HY000Incorrect integer value: 'usuarios' for column 'pcodigo_sucursal' at row 1



Si observan el primer parametro :Pmodo le paso un valor 'U' y al momento de hacer el Call MYDac se lo asigna a @Pid corriendome todos los parametros un lugar. Aclaro que esto en delphi 7 funciona bien pero no se si es un tema de versiones..


Delphi XE 7
MyDac 8.4.11
MySql 5.1.50

Gracias

Casimiro Notevi 28-10-2015 19:41:59

Hola, omarperez.qui, por favor, no olvides poner las etiquetas al código para que se pueda leer mejor. Saludos. :)



Gracias :)

omarperez.qui 29-10-2015 18:26:17

mil disculpas!

Casimiro Notevi 29-10-2015 18:27:58

Solo recuérdalo para otra vez :)


La franja horaria es GMT +2. Ahora son las 23:21:18.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi