title: Delphi ADOQuery not picking up record after another ADOQuery inserted it
body: <p>I am not sure why this is occurring so I will explain the situation briefly (should be easy to follow):</p>
  
  <p>Form1 a procedure that executes a  sql select statement and displays it on a dbgrid linked to a ADOQuery1 component via a TDataSource component:</p>
  
  <pre><code>procedure form1. Selectp;
  begin
     ADOQuery1.Active:=false;
     ADOQuery1.SQL.Text:='select * from tbl';
     ADOQuery1.Active:=true;
  end;
  </code></pre>
  
  <p>Form1 has a button that opens a new form to enter record fields:</p>
  
  <pre><code>procedure form1. buttonaddrecordClick(Sender: TObject);
  var
  form2:Tform;
  begin
     form2:=Tform2.Create(nil); 
     try
        form2.ShowModal; 
     finally
        form2.Release; 
     end;
     selectp;//executes but new record doesn’t show up although in database;
  end;
  </code></pre>
  
  <p>Form2 has a procedure that inserts values into database through form2.ADOQuery2.</p>
  
  <pre><code>procedure form2.Insertp;
  begin
      ADOQuery2.Active:=false;
      ADOQuery2.SQL.Text:='insert into tbl (field1) values ('''+ sfield +''')';
      ADOQuery2.ExecSql;
      ModalResult := mrOk;
  end;
  </code></pre>
  
  <p>If I place a button on form1 to run selectp I have to press it 2+ times before the new record shows up but it doesn’t matter how many times I call selectp after showmodal in buttonaddrecord the new record doesnt show up.</p>
  
  <p>What is causing this and how can it be corrected?</p>