[Lazarus-es] Error al intentar abrir un TSQLQuery
Maxi
maximiliano.duarte en gmail.com
Jue Sep 5 02:17:17 CEST 2013
Ahora viendo mas detenido el codigo te digo que es por la propiedad indexnames;
Todo cambio lo debes hacer cerrada la consulta.
Para que no se note un parpadeo entre cambios usas disablecontrols y
enablecontrols.
Esto deja conjelado los controles y cuando vuelve ya muesta los datos nuevos.
De todos modos si algo va a ser dinamico yo usaria directamente una
consulta y un order by desde la consulta.
with TSQLQuery.Create(nil) do
try
asigno la conexion
... y demas cosas
sql.text:= Format(CADENA_SQL,[parametro1,parametro2,parametro3,,,,,,,,,etc]) ;
open;
hago lo necesarios
Finally
Free;
end;
CADENA_SQL la guado en una unidad con todas las consultas como
constantes, y si hay que cambiar algo ya sabes donde está.
CADENA_SQL:= 'select s.cuenta, s.subcta, s.capitulo, s.subcap, s.elemento, '+
' s.empresa, s.debe, s.haber, s.saldo,
s.nat, s.descripcion, '+
' s.nota, s.nota1, s.nota2, s.nota3,
s.sctaor, s.capor, '+
' s.scapor, s.eleor, s.empor from scsal s
where (s.idsa is null)' +
' order by cuenta; sctaor; subcta; capor;
capitulo, scapor, subcap, eleor, elemento, empor,empresa';
Te sugiero el uso de vistas en el motor, te resuelven muchas cosas y
mejoran la velocidad.
--
El que pregunta aprende, y el que contesta aprende a responder.
No a la obsolecencia programada:
http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml
Linux User #495070
http://domonetic.com/blog
More information about the Lazarus-es
mailing list