Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Limitar DataSet (https://www.clubdelphi.com/foros/showthread.php?t=75198)

Paulao 04-08-2011 15:01:06

Limitar DataSet
 
hay como poner un limite en las cantidad de campos en un DataSet? Lo que quiero es esto:
Tengo un Grid, que tiene un DataSet, es obvio. Solo que este dataSet sera cargado en una planilla Excel. Que pasa es no consigo limitar la cantidad de registros en este DataSet, o sea, el solo podria llenar con algunos campos, basado en CheckListBox. Entonces lo que yo quiero es esto(No estas corecto por yo no saber hacer, pero esta es laidea del que quiero).
Esto no funciona, pero gustaria de saber como funcionar.
ClbColunas es mi ChckListBox.
AGridExcel es mi Grid(Donde estan los datos)
Código Delphi [-]
for i := 0 to ClbColunas.Items.Count - 1 do
      AGridExcel.DataSource.DataSet.???? := ClbColunas.Items[i];

Si yo consigo cargar las colunas de mi DataSet, yo consigo resolver mi problema. Todo esto es porque si yo cargo asi:
Código Delphi [-]
ExcelExport.DBGridToExcel(AGridExcel);
Esto me daria un problema con campos Memo(Tipo Text), pues ellos no aparecen en las Celdas de la planilla, aparece apenas [Memo]. Espero ter esclarecido mis dudas a usteds.

Paulao 04-08-2011 16:05:42

Esta es la funcion para cargar el Excel
Código Delphi [-]
function TF_GeraGridExcel.GerarGridNoExcel(ADBGrid : TDbgrid): boolean;
var
  ExcelExport: TOLEExcel;
  i: integer;
  s: string;
begin
  result := TRUE;
  Screen.Cursor := crHourGlass;
  ExcelExport   := TOLEExcel.Create(Application);
  try
    ExcelExport.IgnoreFont := false;
    ExcelExport.TitleFont.Style := ExcelExport.TitleFont.Style + [fsBold];
    ExcelExport.CreateExcelInstance;
    ExcelExport.DataSetToExcel(AGridExcel.DataSource.DataSet);
    //ExcelExport.DBGridToExcel(AGridExcel);//Este aca estas corecto, pero no carga los Memos.
    ExcelExport.Visible := True;
  finally
    FreeAndNil(ExcelExport);
    Screen.Cursor := crDefault;
  end;
end;


La franja horaria es GMT +2. Ahora son las 20:13:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi