Jump to content


Photo

TDBadvGrid con problemas para leer información


  • Please log in to reply
7 replies to this topic

#1 bcp9520

bcp9520

    Member

  • Miembros
  • PipPip
  • 18 posts

Posted 11 September 2013 - 06:17 PM

Estimados buenas noches.

Estoy trabajando con un TDBadvGrid el cual lleno desde un SP de SQL, necesito darle un formato especial separado por "|" a las líneas para luego exportarlo a un archivo plano. Intento leer la grilla para cargarla otra y darle el formato que necesito pero al leer la primera grilla, por alguna razón solo me lee datos de las filas y columnas que están visibles por el scroll, es decir, si la  primera vista me muestra 14 filas, en la número 15 la muestra en blanco, pero si muevo el scroll a la línea 15 y posiciono el puntero del mouse  sobre la misma línea, recien me muestra el valor.
Por esta razón al intentar leer la grilla completa recorriendola y al llegar a las líneas que nos están visibles se muestra valores en blanco.

Gracias por su apoyo.

saludos.



  • 0

#2 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4483 posts
  • LocationVenezuela

Posted 11 September 2013 - 06:45 PM

No conozco ese grid pero al tener ese db en el nombre asumo que se conecta a un dataset De ser así debes recorrer este  dataset en lugar del grid
  • 0

#3 bcp9520

bcp9520

    Member

  • Miembros
  • PipPip
  • 18 posts

Posted 11 September 2013 - 07:03 PM

eduarcol gracias por tu respuesta.
TDBadvGrid, es un componente TMS Grid DBadvGrid, entiendo lo que me indicas hare la prueba y te comento.

gracias.

  • 0

#4 bcp9520

bcp9520

    Member

  • Miembros
  • PipPip
  • 18 posts

Posted 11 September 2013 - 07:43 PM

Estimados, no logro cargar la grilla en forma manual recorriendo el dataset.
Me pueden ayudar.

gracias.

  • 0

#5 Wilson

Wilson

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2137 posts

Posted 11 September 2013 - 08:47 PM

Estimados, no logro cargar la grilla en forma manual recorriendo el dataset.
Me pueden ayudar.

gracias.


Intenta con esto:


delphi
  1. procedure Tform1.ExportarDataset;
  2. var
  3.   D: TDataset;
  4.   L: TStringList;
  5.   S: CHAR; // SEPARADOR
  6. begin
  7.   D:= TuDataset;
  8.   S := ','; // o el caracter que quieras
  9.   L := TStringList.Create;
  10.   try
  11.     D.First;
  12.     while not D.Eof do
  13.     begin
  14.       L.Add(
  15.       D.FieldByName('NOMBE_CAMPO_1').Text + s +
  16.       D.FieldByName('NOMBE_CAMPO_2').Text + s +
  17.       D.FieldByName('NOMBE_CAMPO_N').Text );
  18.       D.Next;
  19.     end;
  20.     L.SaveToFile('Ruta del archivo');
  21.   finally
  22.     L.Free;
  23.   end;
  24. end;


  • 0

#6 bcp9520

bcp9520

    Member

  • Miembros
  • PipPip
  • 18 posts

Posted 12 September 2013 - 12:23 PM

Estimado Wilson, me fue bien con la ayuda que me entregaste, pude recorrer el dataset sin problemas y la exportación del archivo quedo perfecta.

muchas gracias.

saludos cordiales.
  • 0

#7 Wilson

Wilson

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2137 posts

Posted 12 September 2013 - 04:27 PM

Me alegra que hayas solucionado, hay que asegurarse de que el usuario no toque el grid ni los controles asociados al dataset durante la exportación, para lograr eso agrega un par de líneas al procedimiento:



delphi
  1. procedure Tform1.ExportarDataset;
  2. var
  3.   D: TDataset;
  4.   L: TStringList;
  5.   S: CHAR; // SEPARADOR
  6. begin
  7.   D:= TuDataset;
  8.   S := ','; // o el caracter que quieras
  9.   L := TStringList.Create;
  10.   try
  11.     D.DisableControls; //Inhabilita los controles
  12.     D.First;
  13.     while not D.Eof do
  14.     begin
  15.       L.Add(
  16.       D.FieldByName('NOMBE_CAMPO_1').Text + s +
  17.       D.FieldByName('NOMBE_CAMPO_2').Text + s +
  18.       D.FieldByName('NOMBE_CAMPO_N').Text );
  19.       D.Next;
  20.     end;
  21.     L.SaveToFile('Ruta del archivo');
  22.   finally
  23.     L.Free;
  24.     D.EnableControls;//Habilita los controles
  25.   end;
  26. end;


  • 0

#8 bcp9520

bcp9520

    Member

  • Miembros
  • PipPip
  • 18 posts

Posted 13 September 2013 - 08:48 AM

Perfecto... buen dato.
muchas gracias nuevamente.

  • 0




IP.Board spam blocked by CleanTalk.