Report Generator Programmierbeispiele
Start des Designers
Druckausgabe
.NET
protected void design_Click (object sender, System.EventArgs e) { try { // An ein DataSet Objekt binden LL.SetDataBinding(myDataSet, "Orders");
// Setzen von Eigenschaften
LL.AutoDesignerFile = "subrep.lst"; LL.AutoProjectType = LlProject.List; LL.AutoDialogTitle = "Beispiel"; LL.AutoShowSelectFile = true; // Start des Designers LL.Design(); } // Ausnahmen abfangen catch (Exception LlException) { MessageBox.Show("Information: " + LlException.Message,"Information", MessageBox.IconInformation | MessageBox.OK); } }
Visual Basic
Private Sub ButtonDesign_Click() 'Startet den Designer mit dem Titel "Rechnung" und der Datei "Rechnung.lst" ListLabel1.Design(0, hWnd,_"Rechnung", LL_PROJECT_LIST,_"Rechnung.lst", 1) End Sub
Für die Datendefinition wird der Event ListLabel1_CmndDefineFields genutzt.
Delphi
{Designer starten}
procedure TForm1.DesignButtonClick(Sender: TObject); begin //Datenquelle zuweisen LL.DataSource := dsCustomers;
//Die customer master Daten sollen als Felder angemeldet werden LL.AutoMasterMode := mmAsFields;
//Den Standard-Projektnamen setzen LL.AutoProjectFile := 'subrep.lst';
//Druckziel auf Preview setzen LL.AutoDestination := adPreview;
//Start des Designers LL.AutoDesign('Invoice List'); end;
C++
// Spezialfelder definieren
// normales Textfeld LlDefineFieldExt(job, "Text", "Testtext", LL_TEXT, NULL);
// Fußzeilenfelder, z.B. numerisch LlDefineFieldExt(job, "Zwischensumme", "12.34", LL_NUMERIC | LL_TABLE_FOOTERFIELD, NULL);
// Barcodefelder LlDefineFieldExt(job, "BC_EAN_128", "123456789abcd", LL_BARCODE_EAN128, NULL);
// variable Grafiken über Dateinamen LlDefineFieldExt(job, "Normalbild","sunny.bmp", LL_DRAWING, NULL);
// Dateiauswahldialog mit Skizze LlSelectFileDlgTitleEx(job, hWnd, "Dateiauswahl", LL_PROJECT_LIST, szFile,sizeof(szFile), NULL);
// Bestimmten Menübefehl aus dem Designer entfernen LlDesignerProhibitAction(job, 211);
// Start des Designers mit obigen Feldern LlDefineLayout(job, hWnd, "Titel", LL_PROJECT_LIST, szFile);
.NET
private void button2_Click(object sender, System.EventArgs e) { try { // An ein DataSet Objekt binden LL.SetDataBinding(myDataSet, "Orders");
// Setzen von Eigenschaften LL.AutoDesignerFile = "supreport.lst"; LL.AutoProjectType = LlProject.List; LL.AutoDialogTitle = "Beispiel"; LL.AutoShowSelectFile = true; // Druck starten LL.Print(); } // Ausnahmen abfangen: catch (Exception LlException) { MessageBox.Show("Information: " + LlException.Message,"Information", MessageBox.IconInformation | MessageBox.OK); } }
Visual Basic
Private Sub ButtonPrint_Click()
'Druckt das Projekt "test.lst" auf dem Drucker aus: Data1.Recordset.MoveFirst ListLabel1.Print(0, LL_PROJECT_LIST, "test.lst",_ True, LL_PRINT_NORMAL,_ LL_BOXTYPE_NORMALWAIT, hWnd,_ "Drucken, True, Environ$("temp"))
End Sub
Private Sub ListLabel1_CmndDefineFields(ByVal nUserData As Long, ByVal bDummy As Long, nProgressInPerc As Long, pbLastRec As Long)
'Dieser Event wird von den Befehlen Print und Design ausgelöst. 'Er wird für jeden Datensatz aufgerufen, um die Felder und 'deren Inhalt an List & Label zu übergeben. 'Wiederholung für alle Felder eines Datensatzes: For i = 0 To Form1.Data1.Recordset.Fields.Count - 1 content$ = Data1.Recordset.Fields(i) nRet = ListLabel1.LlDefineFieldExt _ (Data1.Recordset.Fields(i).Name,_ content$, LL_TEXT) Next i 'Gehe zum nächsten Datensatz: Form1.Data1.Recordset.MoveNext 'Wenn kein weiterer Datensatz mehr folgt, dann wird der Druck beendet: If Form1.Data1.Recordset.EOF = True Then pbLastRec = 1 End If
End Sub
Delphi
{Druck aufrufen}
procedure TForm1.PrintButtonClick(Sender: TObject); begin //Datenquelle zuweisen LL.DataSource := dsCustomers;
//Die customer master Daten sollen als Felder angemeldet werden LL.AutoMasterMode := mmAsFields;
//Den Standard-Projektnamen setzen LL.AutoDesignerFile := 'subrep.lst';
//Printmode auf PreviewControl stellen LL.AutoDestination := adPreview;
//Drucken LL.AutoDesign('Invoice List', ,); end;
C++
//===================================== void
CMainFrame::DoLabelPrint() //===================================== { // Normale Textvariable LLDefineVariableExt(job, "Text", "Testtext",LL_TEXT, NULL);
// Numerische Variable LLDefineVariableExt(job, "Zwischensumme", "12.34", LL_NUMERIC, NULL);
// Barcodevariable LLDefineVariableExt(job, "BC_EAN_128", "123456789abcd", LL_BARCODE_EAN128, NULL);
// variable Grafiken über Dateinamen LLDefineVariableExt(job, "Normalbild","sunny.bmp", LL_DRAWING, NULL);
// Druck starten LlPrintWithBoxStart(job, LL_PROJECT_LABEL, szFile, LL_PRINT_EXPORT, LL_BOXTYPE_BRIDGEMETER, hWnd, "Printing..."); //Etikett drucken nErrorValue = LlPrint(job);
// Druck beenden LlPrintEnd(job,0); }
|