Hola... no veo que pongas el query antes del while en el comienzo (first)
Saludos
Código Delphi
[-]
Query1.close;
Query1.ParamByName('almacen').AsInteger:=Table1CIDALMACEN.AsInteger;
Query1.ParamByName('concepto').AsInteger:= able1CIDCONCEPTO.AsInteger;
Query1.Open;
Query1.First; while not Qry1. eof do
begin
table2.append;
table2CIDALMACEN.AsInteger := qry1IDAlmacen.AsInteger;
table2CIDCONCEPTO.AsInteger := qry1IDConcepto.AsInteger;
Table2CostoTotal.ascurrency := qry1total.ascurrency;
table2TotalUnidades.asinteger := qry1total_unidades.asinteger;
table2.post;
qry1.next;
end;