Exportar DataSet a Csv en una línea de código. (ADO)

En el artículo Usar archivos CSV en modo Tabla con Delphi y ADO pudimos aprender que con ADO es muy sencillo leer archivos CSV al tratarlos como tablas.  Pero, ¿Qué sucede si deseamos exportar un Dataset a un formato CSV?. Bueno, esto no es algo complicado pues la mayoría de nosotros lo solucionamos con un ciclo que recorra el Dataset de inicio a fin mientras se escriben los valores separados por coma.

Con ADO, es tan sencillo exportar un DataSet a CSV, que solo necesitaremos una sola línea de código para realizar esto, pues solo requerimos invocar al método: GetString.  La documentación del método puedes encontrarla en el siguiente enlace: http://msdn.microsoft.com/es-es/library/windows/desktop/ms676975(v=vs.85).aspx

Para ejemplificar el uso de este método tomaré el ejemplo usado en la entrada: Mantener un DataSet activo sin conexión con ADO, agregaremos un componente TMemo y un Botón, en el evento OnClick del botón colocaremos el siguiente Código:

procedure TForm1.Button1Click(Sender: TObject);
begin
  ADODataSet1.Open;
  memo1.Lines.Text :=  ADODataSet1.Recordset.GetString(2,-1,',',#13,'""');
end;

donde el primer parámetro StringFormatEnum de acuerdo a la documentación recibirá como valor el número 2, después establecemos el número de filas a exportar (-1 = todas), el separador de columna (,) , el separador de línea (#13) y el valor para aquellos campos nulos.

Este sería el resultado de dar click en el botón:

DatatsetTocsv

 

2 Trackbacks / Pingbacks

  1. Iniciar el 2013 con optimismo
  2. Iniciar el 2013 con optimismo | Delphi Básico

Deja un comentario