🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Letzten Datensatz im Formular anzeigen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
nikolay
Beiträge: 5
Registriert: So 27. Okt 2013, 08:52

Letzten Datensatz im Formular anzeigen

Beitrag von nikolay » So 1. Dez 2013, 10:28

Hallo,

ich habe eine Datenbank mit einigen Formularen. Man kann per Schaltfläche aus dem einen Formular das nächste aufmachen. Das Problem ist daß jedes neu aufgemachte Formular wieder Datensatz Nr.1 anzeigt. Aktuell seht mein Makro hinter der Schaltfläche so aus:

Code: Alles auswählen

Sub open_closeForm
    ThisDatabaseDocument.FormDocuments.getbyName( "Formular1" ).close    
    ThisDatabaseDocument.FormDocuments.getByName( "Formular2" ).open
End Sub

Wie kann ich es machen, dass die Schaltfläche das Formular2 öffnet und gleichzeitig auf den letzten Datensatz springt?
So habe ich es auch versucht, klappte aber nicht:

Code: Alles auswählen

Sub open_closeForm
    ThisDatabaseDocument.FormDocuments.getbyName( "Stammdaten" ).close    
    ThisDatabaseDocument.FormDocuments.getByName( "Eingriffe" ).open
    rem ----------------------------------------------------------------------
    rem define variables
    dim document   as object
    dim dispatcher as object
    rem ----------------------------------------------------------------------
    rem get access to the document
    document   = ThisComponent.CurrentController.Frame
    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

    rem ----------------------------------------------------------------------
    dispatcher.executeDispatch(document, ".uno:LastRecord", "", 0, Array())
End Sub
Vielen Dank im Voraus!

Nikolay

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Letzten Datensatz im Formular anzeigen

Beitrag von F3K Total » So 1. Dez 2013, 11:52

Hi,
dies könnte funktionieren:

Code: Alles auswählen

Sub open_closeForm
    ThisDatabaseDocument.FormDocuments.getbyName( "Formular1" ).close   
    oformdoc2 = ThisDatabaseDocument.FormDocuments.getByName( "Formular2" ).open
    oform = oFormdoc2.DrawPage.Forms(0)
    do 
        wait 100
    loop until oform.isLoaded
    oform.last
End Sub
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

nikolay
Beiträge: 5
Registriert: So 27. Okt 2013, 08:52

Re: Letzten Datensatz im Formular anzeigen

Beitrag von nikolay » So 1. Dez 2013, 14:36

Jupp, funktioniert

Vielen Dank ;)


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten