Warum ein Clear und dann ein Add (wenn dann sowieso Append!)?
Setze doch einfach den Text...
Delphi-Quellcode:
function TFormMain.MaxUnivID(tb: string): Integer;
begin
qu.Close;
qu.SQL.Text:=Format('SELECT MAX(ID) MaxID FROM %s', [tb]);
qu.Open;
Result:= qu.FieldByName('MaxID').AsInteger;
end;