Seite 1 von 2

Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Mo 11. Jun 2018, 10:21
von FigureOfMerit
Hallöchen,

ich habe direkt zwei Fragen. Ich möchte in ein Formular Diagramme als Grafik einbinden. So weit so gut. Allerdings soll sich dann in dem Formular die Grafik in einem Popup öffnen, so dass ich es dann vergrößert sehen kann. Die Diagramme sind detailreich und daher nur in Originalgröße nützlich. Die sind dann aber zu groß, um sie im Formular so darzustellen. Gibt es da eine Möglichkeit?

Desweiteren möchte ich sowas wie ein Dropdownmenü erstellen. Ich möchte im Formular ein Feld X. Das soll ein Dropdownmenü sein, wo ich dann die Werte X1-XX habe, die jeweils wieder einen Wert haben. Also zum Beispiel: Ich habe das Feld "Blumenfarbe". Klicke das an und es öffnet sich ein Menü mit 10 verschiedenen Blumennamen. Wenn ich jetzt z.B. Blume "Nelke" auswähle, soll mir "rot" angezeigt werden. Ich denke ich brauche dazu eine Tabelle, wo alle Blumen mit ihren zugehörigen Farben stehen. Wie bekomme ich jetzt so ein Menü hin? Ich weiß wie ich den gesamte Tabelle einbinden kann ins Formular, aber das möchte ich gar nicht, weil das mir zu unübersichtlich wird.

Alternativ könnte ich mir vorstellen, dass mein Formular einfach mehrere Reiter hat, in denen mir jeweils ein Diagramm bzw. die Tabelle mit den Blumen/farben angezeigt wird.

Ich wäre über Hilfe dankbar. Bitte in einfachen verständlichen Worten. Ich bin sozusagen Base-blond. ;)

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Mo 11. Jun 2018, 16:52
von RobertG
Hallo FigureOfMerit,
FigureOfMerit hat geschrieben:
Mo 11. Jun 2018, 10:21
Ich möchte in ein Formular Diagramme als Grafik einbinden. So weit so gut. Allerdings soll sich dann in dem Formular die Grafik in einem Popup öffnen, so dass ich es dann vergrößert sehen kann. Die Diagramme sind detailreich und daher nur in Originalgröße nützlich. Die sind dann aber zu groß, um sie im Formular so darzustellen. Gibt es da eine Möglichkeit?
Im Handbuch beschrieben: Die Verknüpfung von Bildern mit Base, das Starten eines externen Bildbetrachters von Base aus. Kapitel "Datenbank-Aufgaben", ca. S. 380 im aktuellen Handbuch.
Außerdem dort auch beschrieben: §Diagramme in Formulare einbinden" - dann aber nicht mit Vergrößerung, dafür aber mit Auslesen der Daten aus eingegebenen Werten. Direkt das Kapitel nach dem Verknüpfen von Bildern, ca. S. 390
FigureOfMerit hat geschrieben:
Mo 11. Jun 2018, 10:21
Desweiteren möchte ich sowas wie ein Dropdownmenü erstellen. Ich möchte im Formular ein Feld X. Das soll ein Dropdownmenü sein, wo ich dann die Werte X1-XX habe, die jeweils wieder einen Wert haben. Also zum Beispiel: Ich habe das Feld "Blumenfarbe". Klicke das an und es öffnet sich ein Menü mit 10 verschiedenen Blumennamen. Wenn ich jetzt z.B. Blume "Nelke" auswähle, soll mir "rot" angezeigt werden. Ich denke ich brauche dazu eine Tabelle, wo alle Blumen mit ihren zugehörigen Farben stehen. Wie bekomme ich jetzt so ein Menü hin? Ich weiß wie ich den gesamte Tabelle einbinden kann ins Formular, aber das möchte ich gar nicht, weil das mir zu unübersichtlich wird.
So ganz verstanden habe ich das nicht - aber vielleicht handelt es sich da um 2 Listenfelder, wobei das erste Listenfeld den Inhalt des zweiten Listenfeldes beeinflusst? Dazu brauchst Du das Makrokapitel des Handbuches, ca. S. 475.
Vielleicht reicht es für Dein Vorhaben aber auch aus, dass Du einfach mehrere Informationen aus unterschiedlichen Feldern zusammen in einem Listenfeld angibst. Da müsstest Du Dich etwas mit SQL vertraut machen.

Code: Alles auswählen

SELECT "Blume"||' - '||"Farbe" FROM "Tabelle"
zeigt die Blumen und die Farben zusammen in einem Feld an.

Gruß

Robert

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Mo 18. Jun 2018, 11:22
von FigureOfMerit
So, danke erstmal für die Antwort.

Für die zweite Tabelle habe ich jetzt eine Schaltfläche mit Makro, die diese Tabelle öffnet. Jetzt habe ich aber das Problem, dass jeder Datensatz auch einen eigenen Datensatz dieser neuen Tabelle hat, also ID 1 hat andere Werte in der neuen Tabelle als ID 2. Mir ist klar, dass ich die beiden Tabellen irgendwie verknüpfen muß. Aber wie mache ich das?

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Di 19. Jun 2018, 20:24
von RobertG
Hallo FigureOfMerit,

kannst Du einmal ein Beispiel machen, wie Deine beiden Tabellen aussehen? Wenn Du einfach nur zwei nebeneinander existierende Tabellen ohne Beziehung erstellt hast (Du schreibst ID1 ist nicht gleich ID2) und auch kein anderes Feld hast, das eine Beziehung erahnen lässt, dann kannst Du keine Beziehung zwischen den Tabellen erstellen.

Gruß

Robert

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Do 2. Aug 2018, 13:57
von FigureOfMerit
Jetzt hab ich ne Weile nicht mehr an der Datenbank gefummelt, aber nun muß ich wieder...

Also, mein Formular hat ja den Button, mit dem eine zweite Tabelle aufgeht.

Nehmen wir an, mein Formular hieße Blume. ID1 wäre zum Beispiel "Rose". Eintragen kann man jetzt die Wuchshöhe, Standort, Preis usw... Klickt man auf den Button "Farbe" geht ein neues Formular auf, in welches man in den Feldern "Farbe1", "Farbe2" usw. die verfügbaren Farben eintragen kann. In der ersten Zeile steht die ID. Wenn ich jetzt also den Eintrag "Rose" habe und auf den Button "Farbe" klicke um die Farben einzutragen, soll in der Zeile ID bereits schon "Rose" drinstehen. Aktuell müßte ich das selber eintragen.

In beiden Tabellen, Blume und Farbe, habe ich als Primärschlüssel die ID. Das scheint aber wohl nicht die richtige Verknüpfung zu sein.

Hier mal das Makro, mit dem ich das Formular "Farbe" öffne:

sub S_open_Form_Farbe
oform = thisComponent.drawpage.forms.MainForm
nID = oform.getint(oform.findcolumn("ID"))
oFormDocFarbe = ThisDatabasedocument.formdocuments.getbyname("Farbe").open
oFormFarbe = oFormDocFarbe.drawpage.forms.MainForm
oFormFarbe.Filter = "(""ID"" = '"+nID+"')"
end sub

Ich hab das hier im Forum gefunden. Damit will ich sicherstellen, dass später auch immer das Formular "Farbe" der richtigen "Blume" geöffnet wird. Aber vielleicht ist das auch schon falsch?

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Do 2. Aug 2018, 15:52
von RobertG
Hallo FigureOfMerit,

die Farbe ordnest Du nicht über ein neues Formular zu, bei dem Du dann gar nicht siehst, um welche Blume es sich handelt. Die Farbe wird stattdessen in einem Unterformular hinzugefügt. Da kannst Du dann auch mehrere Farben der einen Blume zuordnen. Sichtbar wird das durch ein Tabellenkontrollfeld im Unterformular.

Das Makro öffnet Dir nur ein zweites Formular mit einem Filter. Da siehst Du dann natürlich alle "Rosen", musst aber für jeden neuen Eintrag wieder die "Rose" auswählen, damit der auch zu "Rose" hinzugefügt wird.

Gruß

Robert

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Fr 3. Aug 2018, 11:29
von FigureOfMerit
Hm ich wollte aber keine Tabelle im Formular, weil nicht jeder ndie ganzen Farben sehen will. Deshalb wollte ich so ne Buttonlösung wo man bei Bedarf draufklicken kann.

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Fr 3. Aug 2018, 12:29
von RobertG
Hallo FigureOfMerit,

das mit dem Unterformular ist nur deutlich einfacher zu erledigen. Mit einem 2. Formular müsstest Du dann gegebenenfalls einfach auf die gleiche Art vorgehen:
Hauptformular und die Farben im Unterformular. Filter für das Hauptformular auf "Rose" voreingestellt. Nur das Feld "Rose" im Hauptformular und im Unterformular dann die Farbeingaben.

Kannst natürlich auch in Deinem Hauptformular das Tabellenkontrollfeld der Unterformulars mit den Farben standardmäßig auf "unsichtbar" schalten und dann mit dem Button einblenden.

Gruß

Robert

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Mo 6. Aug 2018, 09:10
von FigureOfMerit
RobertG hat geschrieben:
Fr 3. Aug 2018, 12:29
Kannst natürlich auch in Deinem Hauptformular das Tabellenkontrollfeld der Unterformulars mit den Farben standardmäßig auf "unsichtbar" schalten und dann mit dem Button einblenden.
Wie geht das denn?

Re: Bild als Popup / Dropdownmenü / zweiter Reiter

Verfasst: Mo 6. Aug 2018, 11:27
von RobertG
Hallo FigureOfMerit,

der Button, den Du dafür machst, liegt in dem Unterformular. In den Button trägst Du unter "Zusatzinformationen" den Namen des Tabellenkontrollelementes ein (z.B. 'tablecontrol'). Dann geht der folgende Code:

Code: Alles auswählen

SUB TabelleSichtbar(oEvent AS OBJECT)
	oForm = oEvent.Source.Model.Parent
	stTag = oEvent.Source.Model.Tag
	oForm.GetByName(stTag).EnableVisible = true
END SUB
Dann brauchst Du natürlich noch ein 2. Makro, das die Sichtbarkeit wieder ausschaltest - oder das Passiert dann wieder beim Neustart.

Gruß

Robert