Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Parametros Delphi 2006 (https://www.clubdelphi.com/foros/showthread.php?t=34106)

raorre 27-07-2006 12:28:51

Parametros Delphi 2006
 
:confused: El Problema es el siguiente, pasamos una aplicacion de delphi 6 a deplhi 2006, hasta ahi todo correcto el problema nos viene con el componente TSqlQuey, cuando le pasamos los parametros con la funcion parambyname.
Toma el valor la primera vez pero la siguiente no hace caso, a continuacion detalle el trozo de codigo:

Sql:=... query que le asignamos el parametro.
Close;
try
SQLQueryBase.ParamByName('PARAM_TERCERO').AsString:=idTercero.caption;
except; end;
open;


El mismo codigo en delphi 6 funciona perfectamente, ha alguien le pasa lo mismo y lo ha solucionado. Saludos.;)

Lepe 27-07-2006 17:01:45

Yo por lógica, primero cerraría la consulta y despues le asignaría el SQL.

Por otra parte me aseguraría de que idTercero.Caption tuviese un valor válido, en lugar de asignar el parámetro. La cuestión es que si se trata de un Edit, podría no tener nada escrito, la asignación del parámetro se ejecuta correctamente, es precisamente al Abrir la consulta donde pueden aparecer errores (por la inconsistencia del SQL).

Saludos

raorre 28-07-2006 13:39:46

continua el problema...
 
:( El idTercero.caption tiene un valor valido, ademas el mismo codigo funciona correctamente en delphi 6.el problema reside al pasar a delphi 2006 que no funciona,he probado a asignar los parametros primero, cerrar la consulta y luego abrirla, funciona pero no estoy seguro de que el problema este resuelto.
Ha alguien se le ocurre otra forma o le ha pasado algo similiar.
Saludos.

Lepe 28-07-2006 18:18:58

Tengo consultas en Delphi 2006 y en delphi 6, la mecánica es la misma:
- Cerrar consulta
- Asignar el SQL.TEXT (nada de Sql.Clear ni sql.Add, es más simple asignar esa propiedad y punto).
- pasar parámetros
- Abrir consulta.

Cualquier forma de cambiarlo es enredar el bolillo de lana como un gato.

Por otra parte el try except está ocultando las posibles excepciones que salga, es decir "el programa no hace lo que se espera, y además tú no te enteras del fallo".

Así debe funcionar, y si no lo hace, explica:
- Que base de datos usas y que componentes (ado, bde, mdo)
- cual es el SQL de la consulta
- qué es idtercero.caption
- qué clase de campos (enteros, fechas, floats) se ven implicados con los parámetros.

Saludos y suerte.


La franja horaria es GMT +2. Ahora son las 18:41:06.

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