Seite 1 von 1
Schaltfläsche aktivieren um Bericht zu öffnen
Verfasst: Sa, 25.10.2008 09:20
von whoopy84
Guten Morgen,
ich möchte gerne eine Schaltfläsche im Formular aktivieren! Die Schaltfläsche soll beim anklicken automatisch den Bericht öffnen ! wer kann helfen gruss whoopy84

Re: Schaltfläsche aktivieren um Bericht zu öffnen
Verfasst: So, 26.10.2008 17:46
von hema
Hallo Whoopy,
versuch mal der Schaltfläche ein Makro zu hinterlegen. z.B. so wie folgendes
Code: Alles auswählen
sub ClickBericht_oefnnen
Dim Context AS Object
Dim Conn As Object
Dim DB As Object
Dim ReportDoc As Object
Dim Args(1) As New com.sun.star.beans.PropertyValue
Dim ReportName As String
ReportName = "Berichtname"
Context=CreateUnoService("com.sun.star.sdb.DatabaseContext")
DB=Context.getByName("Datenbankname")
Conn=DB.getconnection("","")
Args(0).Name="ActiveConnection" : Args(0).Value=Conn
Args(1).Name="OpenMode" : Args(1).Value="open"
ReportDoc=DB.DatabaseDocument.ReportDocuments.loadComponentFromURL(ReportName,"_self",2,Args) REM << BASIC-Laufzeitfehler.
ReportDoc.CurrentController.Frame.ContainerWindow.setFocus()
End Sub
Im Makro noch den Berichtname und den Datenbankname anpassen.
Gruss Markus
Re: Schaltfläsche aktivieren um Bericht zu öffnen
Verfasst: Mo, 10.11.2008 19:43
von whoopy84
Hallo markus ,danke für deine antwort, ich habe dein code in makro feld eingefügt, dateiname geändert ,sowie den report bericht. leider zeigt er eine fehlermeldung an wie folg aussieht = Basic laufzeitfehler es ist eine exception aufgetreten
typ com.sun.sun.container No such element exception
message obst&gemüse
Zeile DB=Context.getByName( "Fisch")
eingabe fehler bei den datenbankname
gruss whoopy84
Re: Schaltfläsche aktivieren um Bericht zu öffnen
Verfasst: Do, 04.12.2008 14:50
von eBayer
Hallo,
die Vorschläge, wie man einen Bericht aus einem Formular aufrufen kann, waren sehr hilfreich.... bei mir funktioniert es so ganz gut.
Allerdings bleibt nach dem Aufruf des Berichtes, auch wenn ich OO komplett geschlossen habe, lck-Datei bestehen.
Beim Versuch, diese zu löschen, sagt mir Vista, daß löschen nicht möglich ist, weil die Datei noch in einem anderen Programm geöffnet ist.
Es sieht also so aus, als ob beim Aufruf des Drucks aus einem Formular eine 2 Instanz meiner Anwendung (Datenbank) geöffnet wird, die dann nicht mehr freigegeben wird. Ist das Problem bekannt?
Wie kann ich das lösen?
Danke für Eure Hilfe bereits im Voraus.
Gruß eBayer