Ver Mensaje Individual
  #4  
Antiguo 30-06-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola giulichajari.
Cita:
Empezado por giulichajari Ver Mensaje
...
Y al salir del Edit deja de estar filtrada la tabla,ya que quiero poner en form1 2 botones, uno que imprima todo, y el otro solo lo filtrado...
Si, es lo que te comentaba en el mensaje anterior.

Pero se me ocurrió este modo que te permite darle el foco a cualquier componente (que no sea alguno de los dos edits en cuestión) sin que se pierda el filtro actual:
Código:
/* Asignar al evento OnEnter de ambos edits */
void __fastcall TForm1::EditEnter(TObject *Sender)
{
  String sFilter;
  TEdit *ed = static_cast <TEdit*> (ActiveControl);

  if (ed->Name == "Edit2")
    Edit3->Text = "";
  else
    Edit2->Text = "";
  Table1->Filtered = false;
}

/* Asignar al evento OnChange de ambos edits */
void __fastcall TForm1::EditChange(TObject *Sender)
{
  String sFilter = "";
  TEdit *ed = static_cast <TEdit*> (ActiveControl);

  if (ed->Name == "Edit2" && !ed->Text.IsEmpty()) {
    Edit3->Text = "";
    sFilter = "Name = " + QuotedStr(Edit2->Text + "*");
  }
  if (ed->Name == "Edit3" && !Edit3->Text.IsEmpty()) {
    Edit2->Text = "";
    sFilter = "Capital = " + QuotedStr(Edit3->Text + "*");
  }
  Table1->Filtered = false;
  Table1->Filter   = sFilter;
  Table1->Filtered = true;
}
es decir que podras usar los TButtons para llamar a la impresión.

Cita:
...No se si poner 2 TTable o con la misma alcanza...
No es necesario usar otro TDataset, podes hacerlo con el mismo.
Cita:
He creado dos QuicReport en dos Form distinto para cada impresion respectivamente.Tal vez con un solo Report es suficiente.
Por lo que comentas pareciera que con un solo botón para imprimir y un solo TQuickRep tendría que alcanzar. Si el TDataSet está sin filtro se imprimirán todos los registros, si tiene alguno sólo los registros filtrados.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita