Ver Mensaje Individual
  #1  
Antiguo 17-06-2018
Avatar de turbopascual5.0
turbopascual5.0 turbopascual5.0 is offline
Miembro
 
Registrado: feb 2011
Posts: 54
Reputación: 14
turbopascual5.0 Va por buen camino
Listados en FMX windows / Android

Hola a todo@s.
He desarrollado una apliacion en fmx (Tokio) en la que en en windows quería que existiese la posibilidad de imprimir un reporte.
Los componentes de reporte son fast report FMX, un TfrxDBDataset y un TfrxReport.

He probado a poner los componentes en diseño y en el uses con {$IFDEF MSWINDOWS} {$ENDIF MSWINDOWS} limitar la compilación a windows, pero automáticamente incluye las units en el apartado de android {$IFDEF ANDROID} {$ENDIF ANDROID} y en android da error al compilar.

Luego he probado en la vista windows a configurar el reporte y grabarlo en un fichero. El componente de conexión es frxDBDataset1, que es el que usa el report.

Y he borrado los componentes para crearlos en tiempo de ejecución.
Código Delphi [-]
procedure THeaderFooterForm.TMSFMXSpeedButton11Click(Sender: TObject); 
  var reporte: string; 
{$IFDEF MSWINDOWS} 
  frxReport1: TfrxReport; 
  frxDBDataset1: TfrxDBDataset; 
  DataPage: TfrxDataPage; 
{$ENDIF MSWINDOWS} 
begin 
{$IFDEF MSWINDOWS} 
  uniquery14.Active; 
  uniquery14.execsql; 
  frxDBDataset1:= TfrxDBDataset.Create(Self); 
  frxDBDataset1.DataSet:=uniquery14; 
  reporte:= Tpath.Combine(Tpath.GetDocumentsPath, 'report.fr3'); 
  frxReport1:= TfrxReport.Create(Self); 
  frxReport1.Clear; 
  frxReport1.DataSets.Add(frxDBDataset1); 
  frxReport1.LoadFromFile(reporte); 
  frxReport1.PrepareReport(); 
  frxReport1.ShowReport(); 
  frxReport1.Free; 
  frxDBDataset1.Free; 
{$ENDIF MSWINDOWS} 
end;
Y en el uses poner solo las units en el acotado para windows.

Así sí compila en windows , pero al ejecutar da un error de que frxDBDataset1 no existe.

Alguna idea?, o algún método para poder hacerlo.
Gracias de antemano por vuestro tiempo.

Última edición por Casimiro Notevi fecha: 17-06-2018 a las 21:30:43.
Responder Con Cita