Cuando intento abrir un TSQLQuery que previamente lo hab�a abierto y despu�s le hab�a pasado como par�metro un grupo de �ndices cuando lo intento abrir de nuevo con otro SQL me dice que un campo no existe. Yo se que no existe porque no est� en el SQL, estaba en el SQL con que lo hab�a abierto anteriormente, pero no con el que lo estoy intentando abrir de nuevo.
Relizo lo siguiente:
strsql := 'select s.cuenta, s.subcta, s.capitulo, s.subcap, s.elemento,
s.empresa, s.debe, s.haber, s.saldo, s.nat, s.descripcion, ';
strsql := strsql + '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)';
dm.p_rssc3(strsql, false);despu�s le paso un �ndice d ela siguiente forma:
dm.rssc3.IndexFieldNames:='cuenta; sctaor; subcta; capor; capitulo; scapor;
subcap; eleor; elemento; empor; empresa';Y cuando lo intento abrir de nuevo con:
strsql := 'select s.cuenta, s.subcta, s.capitulo, s.subcap, s.elemento,
s.empresa, s.saldo, s.descripcion, ';
strsql := strsql + 's.sctaor, s.capor, s.scapor, s.eleor from scsal s where
(s.idsa is null)';
dm.p_rssc3(strsql, false);Me da error en la l�nea: rssc3.Open;
Me dice que falta el campo empor el cual use en la cunsulta anterior, pero que por supuesto no est� en esta.
El procedimiento que llamo es:
procedure Tdm.p_rssc3();
begin
if trasc3.Active then trasc3.EndTransaction;
rssc3.Close;
end;
procedure Tdm.p_rssc3(sqlstr: string; blnread: boolean);
begin
p_rssc3();
rssc3.Filter:='';
rssc3.SQL.Clear;
rssc3.SQL.Text := sqlstr;
rssc3.ReadOnly := blnread;
trasc3.StartTransaction;
rssc3.Open;
end;Se que el error me lo est� dando por usar:
dm.rssc3.IndexFieldNames:=xxxxPero lo necesito usar.
E intentado resetear dicha propiedad por todas las v�as antes de decir: rssc3.Open; pero no he encontrado la forma de como hacerlo sin que me de error.
Toda ayuda ser� bien venida.
Saludos Cordiales
========
| ISMAEL |
========
Only for the small landowners and Cubans companies Website: www.sisconge.byethost15.com
www.sisconge.hol.es
