title: Is there a way to iterate over FireDAC's TFDParams using Delphi's for .. in .. do?
body: <p>With Delphi 10.2 (Tokyo), I just want to do something as simple as:</p>
  
  <pre><code>function ShowFinalSQL(const qry: TFDQuery): String;
  var
    cSQL: String;
    oParam: TFDParam;
  begin
    cSQL := qry.SQL.Text;
    for oParam in qry.Params do
      cSQL := cSQL.Replace(oParam.Name, oParam.Value);
    Result := cSQL;
  end;
  </code></pre>
  
  <p>But I always get the error message: </p>
  
  <blockquote>
    <p><code>[dcc32 Error] DTUtilBD.pas(3115): E2010 Incompatible types: 'TFDParam' and 'TCollectionItem'</code></p>
  </blockquote>
  
  <p>Is there a way of doing it?</p>