Hinzufügen von Elementen zum Kombinationsfeld im Bearbeitungsmodus Openoffice Base

453
Aiko Wolf

Ich versuche einer Combobox in openoffice base einige Optionen hinzuzufügen. Die Combobox hat immer nur zwei Optionen, die ausgewählt werden können, so dass es eine Tabelle für die Angabe der Elemente in der Liste ist. Wie füge ich der Combobox die Optionen im Bearbeitungsmodus hinzu? Ich weiß, dass ich dies in Visual Studio erreichen kann, indem Sie einfach ein Combobox-Steuerelement erstellen und die Eigenschaften öffnen, zur Eigenschaft "Inhalt auflisten" scrollen und jedes Element durch einen Zeilenumbruch getrennt eingeben. Wie mache ich das in der Openoffice-Basis? Nachdem ich das Internet durchsucht habe, kann ich die Antwort nirgendwo finden.

0
Welchen Motor benutzen Sie? Zum Beispiel die Standard-HSQLDB 1.8. Jim K vor 8 Jahren 0

1 Antwort auf die Frage

0
Jim K

Bearbeiten Sie die Eigenschaften eines Kombinationsfelds. Geben Sie auf der Registerkarte Daten für Type of list contentsan SQL [Native]. Für List contentgeben Sie die folgende Abfrage:

SELECT 'No' FROM DUAL UNION SELECT 'Yes' FROM DUAL 

Das ist, wenn die Engine Oracle ist. Für MySQL wird nur dies benötigt:

SELECT 'Yes' UNION SELECT 'No'; 

Für die eingebettete HSQLDB-Engine muss in Version 1.8 eine spezielle Tabelle erstellt werden. [1] Erstellen Sie eine Tabelle MY_DUMMYmit nur einer Spalte und einer Zeile. Dies wird sich wie die DUAL- Tabelle von Oracle verhalten . Geben Sie dann die Abfrage wie folgt an:

SELECT 'No' FROM MY_DUMMY UNION SELECT 'Yes' FROM MY_DUMMY 

[1] In neueren Versionen von HSQLDB ist es möglich, (VALUES (0)) als Dummy-Tabelle zu verwenden, LO verwendet jedoch standardmäßig die ältere Version.

[2] UNION kombiniert zwei SELECT-Anweisungen.

BEARBEITEN :

Hier finden Sie schrittweise Anweisungen für Apache OpenOffice 4.1.2. Alle Tabellen und Felder sind Großbuchstaben, um SQL zu vereinfachen.

  1. Gehen Sie in OpenOffice zu File -> New -> Database.
  2. Radio Create a new database. [3] Weiter.
  3. No, do not register the database.
  4. Finish. Speichern Sie die Datei irgendwo.
  5. Create Table in Design View.
  6. Feldname: ID. Feldtyp: Integer [ INTEGER ].
  7. Klicken Sie mit der rechten Maustaste links von IDund geben Sie an Primary key.
  8. Speichern Sie als MY_DUMMYund schließen Sie die Tabelle.
  9. Create Table in Design View.
  10. Erstellen Sie erneut ein IDFeld als Primärschlüssel.
  11. Erstellen Sie auch ein Feld, das VALUEals Typ bezeichnet wird Text [ VARCHAR ].
  12. Speichern unter MY_TABLE1und schließen
  13. Doppelklicken Sie auf die Tabelle MY_DUMMYund fügen Sie einen Datensatz mit Wert hinzu 0.
  14. Drücken Sie die Eingabetaste, um den Datensatz zu speichern, und schließen Sie die Tabelle.
  15. Doppelklicken Sie auf Tabelle, MY_TABLE1und fügen Sie zwei Datensätze mit IDder 0und 1.
  16. Setzen Sie das VALUEFeld Nofür beide Datensätze auf und schließen Sie die Tabelle.
  17. In der FormsUmgebungUse Wizard to Create Form...
  18. Tables or queries: Table: MY_TABLE1.
  19. Klicken Sie sich >>zu bewegen IDund VALUEauf die rechte Seite.
  20. Drücken Sie Finishund schließen Sie das Formular.
  21. Klicken Sie mit der rechten Maustaste auf das MY_TABLE1Formular und wählen Sie Edit.
  22. Ziehen Sie mit dem Kombinationsfeld-Werkzeug ein großes Quadrat, um das Kombinationsfeld zu erstellen.
  23. Drücken Sie Cancel, um den Assistenten zu schließen.
  24. Klicken Sie mit der rechten Maustaste auf das Kombinationsfeld und wählen Sie Control.
  25. DataGeben Sie in der Registerkarte für Data fieldan VALUE.
  26. Für Type of list contentsangeben Sql [Native].
  27. Für List contentangeben SELECT 'No' FROM MY_DUMMY UNION SELECT 'Yes' FROM MY_DUMMY.
  28. Speichern Sie und schließen Sie das Formular.
  29. Doppelklicken Sie, um das Formular zu öffnen.
  30. Klicken Sie im Kombinationsfeld auf Yes.
  31. Klicken Sie oben im Kombinationsfeld auf nach rechts Yes, um den Cursor dorthin zu bewegen.
  32. Drücken Sie Enter, um den Wert des Kombinationsfelds zu übernehmen.

Jetzt sollte sich der Wert in der Tabelle in ändern Yes.

[3] Diese Option verwendet eine eingebettete Datenbank, die nicht für Produktionsumgebungen empfohlen wird, sondern nur zum Testen und Entwickeln. Die Engine ist HSQLDB 1.8.

Danke für die Antwort. Das werde ich morgen ausprobieren. Aber was ist "Union" und "Dual". Ich bin neu im Open Office und habe lange nicht mehr mit SQL gearbeitet, daher verstehe ich das nicht ganz Aiko Wolf vor 8 Jahren 0
Um zu sehen, was sie tun, versuchen Sie es an einer SQL-Eingabeaufforderung oder in LO Base unter `Tools -> SQL`. Ich habe auch Links hinzugefügt, die diese Begriffe erklären. Jim K vor 8 Jahren 0
Das funktioniert nicht. Nur die HSQLDB-Methode erzeugt keinen Fehler, fügt jedoch nichts zur Combobox hinzu. Kannst du das bitte weiter erklären? Ist es wichtig, wie ich den Spaltennamen oder den Datentyp nenne? Aiko Wolf vor 8 Jahren 0
Bitte erläutern Sie (WERTE (0)). Der Post, auf den Sie verlinkt haben, erklärt nichts darüber. Aiko Wolf vor 8 Jahren 0
Ich habe Schritt für Schritt Anweisungen hinzugefügt. Sehen Sie, ob Sie sie zur Arbeit bringen können. Wenn nicht, lassen Sie mich wissen, wenn ein bestimmter Schritt unklar ist. Jim K vor 8 Jahren 0