hola amigos lo que pasa es lo siguiente:
tengo una consulta y quiero que lo que trae esa consulta en recordcount
sea el tamaño de mi arreglo;
ya probe mi consulta en el ibexpert y si me arroja todos los registros en el codigo de delphi solo me manda uno
este es el codigo
Código SQL
[-]
with frm_DataModule.qry_Selec_Materia do begin
if active then close;
frm_DataModule.qry_Selec_Materia.SQL.Clear;
frm_DataModule.qry_Selec_Materia.SQL.Add('SELECT ID_MATERIA, NOMBRE_MATERIA FROM MATERIA');
frm_DataModule.qry_Selec_Materia.SQL.Add('WHERE (MATERIA.ID_AREA = '+QuotedStr(frm_CapAlum1.combo_Nucleo.KeyValue));
frm_DataModule.qry_Selec_Materia.SQL.Add('OR MATERIA.NUCLEO_FORMACION ='+QuotedStr('TRONCO COMUN')+') ');
frm_DataModule.qry_Selec_Materia.SQL.Text;
frm_DataModule.qry_Selec_Materia.Open;
frm_DataModule.qry_Selec_Materia.First;
dimension := frm_DataModule.qry_Selec_Materia.RecordCount ;
SetLength(listMat,dimension + 1 ) ;
e := 0 ;
while not (frm_DataModule.qry_Selec_Materia.Eof) do
begin
//listMat[e].materia := frm_DataModule.qry_Selec_Materia.fields[0].AsString ;
frm_DataModule.qry_Selec_Materia.Next;
inc(e) ;
end;//end while
frm_DataModule.trans_Commit.StartTransaction;
frm_DataModule.qry_Alum_Ins_Upd.Close;
frm_DataModule.qry_Alum_Ins_Upd.SQL.Clear;
frm_DataModule.qry_Alum_Ins_Upd.SQL.Add('INSERT INTO ALU_MAT(MATRICULA, CURSADAS)');
frm_DataModule.qry_Alum_Ins_Upd.SQL.Add('VALUES('+QuotedStr(rest_Mat)+
','+QuotedStr(' ')+ ')');
frm_DataModule.qry_Alum_Ins_Upd.SQL.Text;
frm_DataModule.qry_Alum_Ins_Upd.ExecSQL;
frm_DataModule.trans_Commit.Commit;
gracias a todos!!!