🙏 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!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
[gelöst] Makroergebnisse in einem Tabellenmodul anzeigen
[gelöst] Makroergebnisse in einem Tabellenmodul anzeigen
Hallo,
brauch Hilfe bei einem Makro.
Habe ein Makro für eine Suchfunktion geschrieben und bin dabei eine Schleife zu intergrieren.
Meine Auswertungsergebnisse sollen in einem Formular in einem Tabellenmodul oder Table Control angezeigt werden.
Momentan sieht die Schleife so aus:
While Ergebnis.next()
dim Dokumentart as string
dim Zuordnung as string
dim Nummer as Integer
dim Anlagennummer as Integer
dim Versionsnummer as Integer
dim Titel as string
dim Autor as string
dim gültig_ab as Date
dim gültig_bis as Date
Dokumentart = Ergebnis.getString(1)
Zuordnung = Ergebnis.getString(2)
Nummer = Ergebnis.getInt(3)
Anlagennummer = Ergebnis.getInt(4)
Versionsnummer = Ergebnis.getInt(5)
Titel = Ergebnis.getString(6)
Autor = Ergebnis.getString(7)
gültig_ab = Ergebnis.getDate(8)
gültig_bis = Ergebnis.getDate(9)
Tabelle_Ergebnis.?
ich möchte dass ins Table Control eine Zeile eingetragen wird.
Ich kenne nur die Funktion addRow, aber die funktioniert hier nicht. Weiss auch noch nicht ob die Nummern für die Spaltenreihenfolge so angegeben wird.
Sorry bin Anfängerin. Konnte auch keinerlei Dokumentation hierzu gefunden.
Sogar im Handbuch von Andrew Pitonyak finde ich unter den Steuerelementen nichts über Tabellen.
Könnte mir bitte jemand auf den richtigen Weg helfen? Und weiss jemand wo ich hierzu richtig gute Lektüre finde? Bitte eine die auch jemand wie ich versteht.
Vielen Dank
Alice
brauch Hilfe bei einem Makro.
Habe ein Makro für eine Suchfunktion geschrieben und bin dabei eine Schleife zu intergrieren.
Meine Auswertungsergebnisse sollen in einem Formular in einem Tabellenmodul oder Table Control angezeigt werden.
Momentan sieht die Schleife so aus:
While Ergebnis.next()
dim Dokumentart as string
dim Zuordnung as string
dim Nummer as Integer
dim Anlagennummer as Integer
dim Versionsnummer as Integer
dim Titel as string
dim Autor as string
dim gültig_ab as Date
dim gültig_bis as Date
Dokumentart = Ergebnis.getString(1)
Zuordnung = Ergebnis.getString(2)
Nummer = Ergebnis.getInt(3)
Anlagennummer = Ergebnis.getInt(4)
Versionsnummer = Ergebnis.getInt(5)
Titel = Ergebnis.getString(6)
Autor = Ergebnis.getString(7)
gültig_ab = Ergebnis.getDate(8)
gültig_bis = Ergebnis.getDate(9)
Tabelle_Ergebnis.?
ich möchte dass ins Table Control eine Zeile eingetragen wird.
Ich kenne nur die Funktion addRow, aber die funktioniert hier nicht. Weiss auch noch nicht ob die Nummern für die Spaltenreihenfolge so angegeben wird.
Sorry bin Anfängerin. Konnte auch keinerlei Dokumentation hierzu gefunden.
Sogar im Handbuch von Andrew Pitonyak finde ich unter den Steuerelementen nichts über Tabellen.
Könnte mir bitte jemand auf den richtigen Weg helfen? Und weiss jemand wo ich hierzu richtig gute Lektüre finde? Bitte eine die auch jemand wie ich versteht.
Vielen Dank
Alice
Zuletzt geändert von alice80 am Fr 23. Mai 2014, 10:17, insgesamt 1-mal geändert.
-
- * LO-Experte *
- Beiträge: 3041
- Registriert: Mo 12. Nov 2012, 16:59
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Bist in "Programmierung" besser als hier unter "base" aufgehoben.
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Alice,
aus dem Handbuch 4.2, S. 290f. :
Robert
aus dem Handbuch 4.2, S. 290f. :
GrußFür einen neuen Datensatz gibt es eine spezielle Methode (vergleichbar mit dem Wechsel in eine neue Zeile im Tabellenkontrollfeld). Es werden also folgende Maßnahmen benötigt:
1. Bereite einen neuen Datensatz vor: oForm.moveToInsertRow()
2. Trage alle vorgesehenen und benötigten Werte ein. Dies geht ebenfalls mit den updateXxx-Methoden, wie im vorigen Abschnitt beschrieben.
3. Bestätige die Neuaufnahme mit folgendem Befehl: oForm.insertRow()
Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Robert,
danke für die schnelle Antwort, aber ich glaube Du hast mich falsch verstanden.
Ich will mit dem Makro in das Table Control Daten reinschreiben, ohne die Tabellen in der Datenbank zu verändern.
Dieses Table Control dient allein dem Zweck Suchergebnisse anzuzeigen.
Das ist der bisherige Code und ich Suche eine Möglichkeit zeilenweise Daten in das Table Control zu schreiben.
Hoffentlich kannst Du mir helfen.
Danke
danke für die schnelle Antwort, aber ich glaube Du hast mich falsch verstanden.
Ich will mit dem Makro in das Table Control Daten reinschreiben, ohne die Tabellen in der Datenbank zu verändern.
Dieses Table Control dient allein dem Zweck Suchergebnisse anzuzeigen.
Code: Alles auswählen
Sub Suchfunktion
dim Datenquelle as object
Datenquelle = thisComponent.Parent.CurrentController
if not (Datenquelle.isConnected()) then Datenquelle.connect()
dim Verbindung as object
Verbindung = Datenquelle.ActiveConnection()
dim Dokument, Seite, Formular, Tabelle_Ergebnis, Dokumentart_fld, Zuordnung_fld, Nummer_fld, Versionsnummer_fld, Titel_fld, Status_fld as object
Dokument = thisComponent
Seite = Dokument.drawPage
Formular = Seite.forms.getByName ("F_Suchfunktion")
Tabelle_Ergebnis = Formular.getByName ("F_Ergebnis").getByName ("F_Dokumentenverwaltung")
Dokumentart_fld = Formular.getByName ("LF_Dokumentart")
Zuordnung_fld = Formular.getByName ("LF_Zuordnung")
Nummer_fld = Formular.getByName ("TF_Nummer")
Versionsnummer_fld = Formular.getByName ("TF_Versionsnummer")
Titel_fld = Formular.getByName ("TF_Titel")
Status_fld = Formular.getByName ("LF_Status")
dim sql as string, stmt as object
sql = "select ""Dokumentart"", ""Zuordnung"", ""Nummer"", ""Anlagennummer"", ""Versionsnummer"", ""Titel"", ""Autor"", ""gültig ab"", ""gültig bis"" "&_
"from ""Dokumentenverwaltung"" "&_
"where ""Dokumentart""= 'A' and ""Zuordnung""= 'QS' and ""Nummer""= ? and ""Versionsnummer""= ? and ""Titel"" like '%" & Titel_fld.Text & "%'"
stmt = Verbindung.prepareStatement (sql)
'stmt.setString(1,Dokumentart.Text)
'stmt.setString(2,Zuordnung.Text)
stmt.setInt(1,Nummer_fld.Text)
stmt.setInt(2,Versionsnummer_fld.Text)
dim Ergebnis as object
Ergebnis = stmt.executeQuery()
While Ergebnis.next()
dim Dokumentart as string
dim Zuordnung as string
dim Nummer as Integer
dim Anlagennummer as Integer
dim Versionsnummer as Integer
dim Titel as string
dim Autor as string
dim gueltig_ab as String
dim gueltig_bis as String
Dokumentart = Ergebnis.getString(1)
Zuordnung = Ergebnis.getString(2)
Nummer = Ergebnis.getInt(3)
Anlagennummer = Ergebnis.getInt(4)
Versionsnummer = Ergebnis.getInt(5)
Titel = Ergebnis.getString(6)
Autor = Ergebnis.getString(7)
gueltig_ab = Ergebnis.getString(8)
gueltig_bis = Ergebnis.getString(9)
dim Spalte_1 as object
Formular.getByName ("F_Ergebnis").moveToInsertRow()
Spalte_1 = Tabelle_Ergebnis.getByName("Dokumentart")
Spalte_1.Text = Dokumentart
Wend
End Sub
Hoffentlich kannst Du mir helfen.
Danke
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Alice,
darauf wäre ich nie gekommen, dass Du tatsächlich ohne Datenbankanbindung Suchergebnisse in ein Tabellenkontrollfeld schreiben willst.
Nein, über so etwas habe ich mir noch nie Gedanken gemacht. Du machst doch auch eine Abfrage, die zu dem darzustellenden Ergebnis führen soll. Warum lässt Du nicht einfach das Tabellenkontrollfeld auf diese Abfrage Bezug nehmen? Welche Funktion bietet Dir das Makro, die Base nicht sowieso schon (ohne Makros) bietet?
Gruß
Robert
darauf wäre ich nie gekommen, dass Du tatsächlich ohne Datenbankanbindung Suchergebnisse in ein Tabellenkontrollfeld schreiben willst.
Nein, über so etwas habe ich mir noch nie Gedanken gemacht. Du machst doch auch eine Abfrage, die zu dem darzustellenden Ergebnis führen soll. Warum lässt Du nicht einfach das Tabellenkontrollfeld auf diese Abfrage Bezug nehmen? Welche Funktion bietet Dir das Makro, die Base nicht sowieso schon (ohne Makros) bietet?
Gruß
Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Robert,
ich habe es mit den Abfragen probiert allerdings das mit den Suchfeldern im Formular nicht hinbekommen.
In meinem Formular gibt es 6 verschiedene Suchmöglichkeiten, die aber optional gewählt werden können.
In der Abfrage hingegen muss man alle 6 eingeben.
Weiss also nicht genau wie ich das hinbekommen soll. Hinzu kommt das bei den Suchfeldern eins ein Listenfeld sein muss, da in der Haupttabelle nur eine ID gespeichert wird.
Ich habe mir gerade die Beispieldatenbanken 4.2 runtergeladen und hoffe mir dort noch etliche Tipps zu holen.
Aber zum Thema dass mit der Abfrage hab ich nicht hinbekommen, da mir immer noch das Abfragefeld erschien.
Übrigens weisst Du vllt. eine Möglichkeit sich einen Tutor für Base zu suchen oder wo es gute Seminare gibt?
Liebe Grüsse
Alice
ich habe es mit den Abfragen probiert allerdings das mit den Suchfeldern im Formular nicht hinbekommen.
In meinem Formular gibt es 6 verschiedene Suchmöglichkeiten, die aber optional gewählt werden können.
In der Abfrage hingegen muss man alle 6 eingeben.
Weiss also nicht genau wie ich das hinbekommen soll. Hinzu kommt das bei den Suchfeldern eins ein Listenfeld sein muss, da in der Haupttabelle nur eine ID gespeichert wird.
Ich habe mir gerade die Beispieldatenbanken 4.2 runtergeladen und hoffe mir dort noch etliche Tipps zu holen.
Aber zum Thema dass mit der Abfrage hab ich nicht hinbekommen, da mir immer noch das Abfragefeld erschien.
Übrigens weisst Du vllt. eine Möglichkeit sich einen Tutor für Base zu suchen oder wo es gute Seminare gibt?
Liebe Grüsse
Alice
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Alice,
wenn Du eine Beispieldatenbank hier hochladen könntest oder, falls Du das lieber willst, per privater Mail schicken könntest, dann würde ich mir die fehlgeschlagene Abfrage einmal ansehen.
Ich wüsste wirklich nicht, ob es irgendwo jemanden gibt, der Seminare zu Base veranstaltet. Meine Wissensquelle sind dazu Mailinglisten, Foren (neben diesem das OpenOffice-Forum) und das Buch "Datenbanken mit OpenOffice.org 3" von Thomas Krumbein. Wenn Du also Hilfe bei der Zusammenstellung von einer Datenbank brauchst, dann bist Du hier mit Sicherheit richtig.
Gruß
Robert
wenn Du eine Beispieldatenbank hier hochladen könntest oder, falls Du das lieber willst, per privater Mail schicken könntest, dann würde ich mir die fehlgeschlagene Abfrage einmal ansehen.
Ich wüsste wirklich nicht, ob es irgendwo jemanden gibt, der Seminare zu Base veranstaltet. Meine Wissensquelle sind dazu Mailinglisten, Foren (neben diesem das OpenOffice-Forum) und das Buch "Datenbanken mit OpenOffice.org 3" von Thomas Krumbein. Wenn Du also Hilfe bei der Zusammenstellung von einer Datenbank brauchst, dann bist Du hier mit Sicherheit richtig.
Gruß
Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Robert,
sorry bin noch nicht dazu gekommen.
Vielen Dank für Dein Angebot, ich würde es gerne annehmen.
Wenn ich morgen dazu komme meine Änderungen wieder rückgängig zu machen, schicke ich sie Dir privat zu.
Vielen Dank
Liebe Grüsse
Alice
sorry bin noch nicht dazu gekommen.
Vielen Dank für Dein Angebot, ich würde es gerne annehmen.
Wenn ich morgen dazu komme meine Änderungen wieder rückgängig zu machen, schicke ich sie Dir privat zu.
Vielen Dank
Liebe Grüsse
Alice
Re: Makroergebnisse in einem Tabellenmodul anzeigen
Hallo Alice,
ich habe Dir die DB in geänderter Fassung wieder zugeschickt. Weiß nicht, ob die Mail überhaupt angekommen ist ...
Gruß
Robert
ich habe Dir die DB in geänderter Fassung wieder zugeschickt. Weiß nicht, ob die Mail überhaupt angekommen ist ...
Gruß
Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare
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.