Quick Report drucken?



  • habt ihr euch schon mal

    OnNeedData

    angesehen?
    bei dem ereignis kann man auf nicht datenbankbasierte Druckausgaben reagieren
    und solange MoreData==true ist wird eine neue "zeile" angefangen



  • Label->Left = 100;
    Label->Top = 40;
    


  • Also ich hab die Schleife jetzt mal testweise so gelöst:

    Ich leg mir also auf meinem QuickRep1 zur Laufzeit ein "Band" an, auf jedes Band leg ich ein paar Labels...
    Dann folgt das nächste Band usw.

    Hier mal der Code:

    void TVerwaltung::drucken(void)
    {
     for (int Zeile = 0;Zeile < Form1->StringGrid1->RowCount;Zeile++)
     {
       TQRBand *Band = new TQRBand(Form2->QuickRep1);
       for (int Spalte = 0;Spalte < Form1->StringGrid1->ColCount;Spalte++)
       {
         TQRLabel *lbl = new TQRLabel(Band);
         lbl->Parent = Band;
         lbl->Caption = "hallo";
         //lbl->Left=100;
         //lbl->Top=20;
       }
     }
     Form2->QuickRep1->Print();
     //Form2->Show();
    }
    

    wenn ich jetzt drucken will, erscheint zwar kurz eine Meldung "Drucken" aber dann passiert nichts mehr...
    Das Programm läuft aber ganz normal weiter...


  • Mod

    Hallo

    natuerlich kann mann ein Stringgrid (strings) ueber QuickRep drucken)
    ->QRStringsBand

    MfG
    Klaus



  • Wie funktioniert das mit dem QRStringsBand so ganz grob?
    Finde in der Hilfe nichts dazu... 😞

    Hat mir irgendjemand mal nen guten Link wo ich mich damit vertraut machen kann?


  • Mod

    Hallo

    schau in die Hilfe des BCB
    da gibt es ein Beispiel - wenn auch etwas ....

    MfG
    Klaus



  • ok, aber was mach ich falsch, dass er mir auf dem QuickRep, wenn ich mir den ausdrucken oder mit preview anschauen will, garnichts anzeigt.
    Irgedwas ist da doch schon falsch. 😞

    //Edit
    Könnte mir mal jemand ein Beispiel schreiben, mit dem ich die Daten aus einem StrinGrid durch einen QuickReport ausgeben (ausdrucken) kann...
    Ich glaub dann würd ich das verstehen... 😉
    Wäre echt super!!

    Oder mir sagen was an meinem Code falsch ist... 👍

    Danke!!! 🕶



  • tribblexer schrieb:

    Könnte mir mal jemand ein Beispiel schreiben, mit dem ich die Daten aus einem StrinGrid durch einen QuickReport ausgeben (ausdrucken) kann...

    Das macht aber doch gar keinen Sinn... QuickReport läßt sich m.E. nur sinnvoll mit Datenbanken einsetzen. Robert hat das ja schon gesagt...

    Es ist einfacher, die Daten in eine (temporäre) Tabelle zu schreiben und diese für den QR zu verwenden. Auch das hat Robert bereits angeregt.



  • Ich hab es jetzt mal mit dem QRStringsBand versucht.
    Funktioniert auch ganz gut! 👍
    Hab mich an das Beispiel im BCB gehalten...

    hier mal der Code:

    void TVerwaltung::drucken(void)
    {
     Form2->QRStringsBand1->Items = Form1->StringGrid1->Cols[1];
     Form2->QRExpr1->Width = Form2->QRStringsBand1->Width;
     Form2->QuickRep1->PrinterSetup();
     if (Form2->QuickRep1->Tag != 1)
     {
      Form2->QuickRep1->Preview();
     }
    }
    

    Aber wie kann ich jetzt mehrere Spalten nebeneinander bekommen?



  • und was müsste man schreiben wenn man eine Datenbank benutzt?


Anmelden zum Antworten