Seite 1 von 1

Subformular dynamisch erweitern?

Verfasst: So 23. Aug 2015, 13:33
von MacLeod
Hallo,
ich habe eine Frage zur Erstellung von Formularen mit Subformularen.
Mein Formular soll ein Subformular enthalten. Dieses Subformular basiert auf einer Abfrage, die immer eine unterschiedliche Anzahl von Zeilen enthalten kann. Zwischen Block 1 und 2 besteht eine 1:n Beziehung.

Wenn ich für das Subformular die Tabellendartstellung (Datenblatt) verwende, ist werden alle Zeilen komplett dargestellt. Soweit alles gut ;)

Besteht die Möglichkeit den Block 2 für das Subformular (mit Textfeldern) dynamisch in der Anzahl der Ergebniszeilen zu kopieren?
Beispiel:
a) 1 Zeile für Subformular -> siehe Skizze
b) 2 Zeilen für Subformular -> der Feldblock wird ein zweites Mal am unteren Ende angefügt (bei n Ergebnissen halt n-mal)
Ist das möglich?

VG
MacLeod

Re: Subformular dynamisch erweitern?

Verfasst: So 23. Aug 2015, 20:31
von RobertG
Hallo MacLeod,

prinzipiell müsste so etwas möglich sein:
Du hast das Hauptformular, z.B. im Makro als oForm definiert. Über oForm.insertByName mit der Angabe von (aName as string, aElement as variant) sollte sich so etwas erstellen lassen. Das habe ich allerdings noch nie gemacht und würde es auch nicht in Angriff nehmen wollen. Jedes dieser Formulare müsste nämlich fest auf einen bestimmten Datensatz ausgerichtet sein. Was passiert, wenn Du den ersten Datensatz im Unterformular löscht?
Ich würde schlicht das Unterformular mit seinen Feldern erstellen und dann eine Navigationsleiste hinzufügen. Existieren mehrere Datensätze, so ist das auf der Liste sichtbar und die Daten können ohne Probleme dargestellt werden.

Gruß

Robert

Re: Subformular dynamisch erweitern?

Verfasst: So 23. Aug 2015, 20:50
von MacLeod
Ich habe das Formular "ganz normal" per Assistenten in Base erstellt und nichts programmiert. Wie kann ich da eine Navileiste hinzufügen?

Dann habe ich aber gerade auch noch festgestellt, dass in der Version mit der Tabelle für das Subformular sich die Daten nicht editieren lassen. Aber in den Formulareigenschaften ist eingestellt, dass Daten hinzufügen, verändertn oder löschen erlaubt ist :?

Re: Subformular dynamisch erweitern?

Verfasst: Mo 24. Aug 2015, 04:04
von F3K Total
Hi,
mein Tipp: Schon die Abfrage ist nicht editierbar.
Damit eine Abfrage editierbar ist, muss sie die Primärschlüssel aller beteiligten Tabellen enthalten.
Gruß R

Re: Subformular dynamisch erweitern?

Verfasst: Mo 24. Aug 2015, 07:02
von MacLeod
Hm das könnte sein. Da u.a. auch eine View daran beteiligt ist, könnte mindestens da das Problem der Editierbarkeit liegen.
Ich werde mir das heute abend mal ansehen. Dann muss ich die Abfrage (SELECT-Statement mit CASE-Statement) direkt als Subselect einbauen.

Re: Subformular dynamisch erweitern?

Verfasst: Mo 24. Aug 2015, 17:33
von F3K Total
Hi,
Ansichten (Views) sind grundsätzlich nicht editierbar, damit ist die Abfrage dann auch nicht editierbar.
Eine Navigationsleiste einzubauen geht so:
  • Formular schließen
  • Rechtsklick auf Formular -> Bearbeiten
  • Über Menü Ansicht/Symbolleisten Formular-Entwurf und Formular-Steuerelemente einschalten
  • Auf Formular-Entwurf findest du den Formular-Navigator, um den Aufbau des Formulars zu sehen/bearbeiten dazu Rechtsklick auf Kontrollelement oder strukturelles Formular ...wichtig: Neu/Eigenschaften
  • Auf Formular-Steuerelemente findest du verschiedene Steuerelemente sowie einen Button der die Symbolleiste Weitere Steuerelemente einschaltet
  • Auf Weitere Steuerelemente findest Du die Navigationsleiste.
Navigationsleiste.png
Navigationsleiste.png (31.1 KiB) 2575 mal betrachtet
Gruß R