Seite 1 von 1

Felder im Formular in Spaltenform anzeigen

Verfasst: So 14. Nov 2021, 19:46
von AndreasB
Ein freundliches Hallo an das Forum,

Ich befasse mich erst seit kurzem mit LO-Base und verwende die eingebettete HSQLDB.

Meine Frage: Das Ergebnis einer Abfrage liefert eine Liste mit z.B. 4 Zeilen (Datensätze) mit z.B. 3 Feldern. Diese Daten sollen in einem Formular angezeigt werden, bei dem horizontal die Datensätze und vertikal die 3 Felder als Blöcke nebeneinander angezeigt werden. Diese Darstellung wird auch bei Vergleichs-Testberichten verwendet, wo mehrere Produkte nebeneinander dargestellt werden und die Eigenschaften zeilenweise darunter angeordnet sind, sodass man die Eigenschaften der Produkte zeilenweise vergleichen kann.
Bei LO-Base habe ich keine standardmäßige Lösung gefunden. Das Thema ist eventuell vor längerer Zeit bereits im Forum besprochen worden; gibt es zwischenzeitlich eine Möglichkeit der Realisierung ?
Über einen Lösungsvorschlag würde ich mich freuen.
Vielen Dank.

Mit freundlichen Grüßen
Andreas

Re: Felder im Formular in Spaltenform anzeigen

Verfasst: Mo 15. Nov 2021, 16:50
von RobertG
Hallo Andreas,

das, was Du beschreibst (horizontal Datensätze, vertikal Felder) ist doch das Standardverhalten von Tabellen und auch, im Formular, von Tabellenkontrollfeldern.

Willst Du etwas Datensätze vertikal und Felder horizontal erreichen?

Gruß

Robert

Re: Felder im Formular in Spaltenform anzeigen

Verfasst: Di 16. Nov 2021, 14:30
von AndreasB
Hallo Robert,

es geht um die Darstellung der Inhalte von Produkt-Datensätzen in folgender Form:

Produkt1 Produkt2 Produkt3 Produkt4 …
<Best.Nr.1> <Best.Nr.2> <Best.Nr.3> <Best.Nr.4> ...
<Gewicht1> <Gewicht2> <Gewicht3> <Gewicht4> …
<Länge1> <Länge2> <Länge3> <Länge4> …
… … … …

Die übliche Darstellung wäre:
Produkt1 <Best.Nr1> <Gewicht1> <Länge1>
Produkt2 <Best.Nr2> <Gewicht2> <Länge2>
Produkt3 <Best.Nr3> <Gewicht3> <Länge3>
Produkt4 <Best.Nr4> <Gewicht4> <Länge4>

Es könnte ja sein, dass jemand bereits früher eine Lösung gefunden hat.

Mit freundlichen Grüßen
Andreas

Re: Felder im Formular in Spaltenform anzeigen

Verfasst: Mi 17. Nov 2021, 15:49
von RobertG
Hallo Andreas,

so etwas geht nur schreibgeschützt über Abfragen. Du wirst da also eine Übersicht (in begrenztem Maße) erhalten können, aber eintragen kannst Du nichts, weil die Abfrage das nicht zulassen wirst. In bregrenztem Maße deshalb, weil der Code dafür recht umfangreich ist und die untereinanderliegenden Zellen alle in Text umgewandelt werden. Da steht dann also z.B. keine Zahl mehr drin, sondern ein Text, der schon in der Abfrage z.B. schon mit dem korrekten Dezimaltrenner versehen werden muss.

Für 2 Produkte und die Tabelle "Tabelle" mit "ID" als dem Schlüsselwert für die Produkte und eine einzeilige Tabelle "Filter" ginge das so:

Code: Alles auswählen

SELECT 'Produkt1', 'Produkt2' FROM "Filter"
UNION
(SELECT "Produkt" FROM "Tabelle" WHERE "ID" = 1), (SELECT "Produkt" FROM "Tabelle" WHERE "ID" = 2) FROM "Filter"
UNION
(SELECT "BestNr" FROM "Tabelle" WHERE "ID" = 1), (SELECT "BestNr" FROM "Tabelle" WHERE "ID" = 2) FROM  "Filter"
…
Das ist jetzt nur der Code für die Überschrift 'Produkt1' und 'Produkt2', darunter die Produktbezeichnungen und darunter wieder die Bestellnummern. Und das dann für jedes Feld …
Die einzeilige Tabelle Filter brauchst Du nur, damit die Abfrage auch bei direktem SQL in der internen HSQLDB überhaupt bereit ist, ein Ergebnis zu liefern. Ohne das FROM funktioniert das einfach nicht.

Re: Felder im Formular in Spaltenform anzeigen

Verfasst: Mi 17. Nov 2021, 18:12
von F3K Total
Moin,
warum exportierst du deine "normale" Abfrage nicht verknüpft nach Calc, und wendest dort den Befehl MTRANS() zum transponieren der Matrix an?
Gruß R