Befüllen mittels Button
Hallo miteinander
Nachdem ich nun schon länger herumspiele - stelle ich hier die Frage.
Ich habe zwei Tabellen:
Liste_Jagd mit den Felder
Gamswildräume
wobei Nr ist die eindeutige Datensatznummer.
Ziel:
Befüllen des Feldes Nummer_aus _Jagd mit der Datensatznummer des Jeweiligen Jagdgebietes aus der Tabelle Liste_Jagd auf Basis Jagdrevier in der Tabelle Gamswildraum
Jagdrevier = Jagdgebiet --> Datensatznummer in Nummer_aus_Jagd
(In der Tabelle Gamswildraum kommt das Jagdrevier öfters vor, das Jagdgebiet in der Tabelle Liste_Jagd ist eindeutig)
Mein Versuch:
alert("Warte.....");
for i in select 'Gamswildräume' do
let Jagd := (select 'Gamswildräume').Jagdrevier;
i.(Nummer_aus_Jagd := first(select Liste_Jagd where Jagdgebiet = Jagd.Jagdgebiet.Nr))
end;
alert("Warte ...
Fertig!")
derzeitiger Fehler: Expression does not return a record
weiß nicht mehr weiter -
6 Antworten
-
Warum benötigst du ein eigenes Feld "Nummer_aus_Jagd", wenn die Liste_Jagd als Jagdrevier bereits verknüpft ist ?
Sowas müsste aber funktionieren :
for i in select 'Gamswildräume' do
let Jagd := i.Jagdrevier;
i.(Nummer_aus_Jagd := first(select Liste_Jagd where Jagdgebiet = Jagd.Jagdgebiet.Nr))
end
-
Grund:
Jagdrevier und Hegegemeinschaft ist eine 1:n Verbindung - wobei das Jagdrevier eindeutig ist in der Tabellebeim Gamswildraum ist es anders - mehrere Jagdgebiete haben mehrere Gamwildräume
Im einem Formular für die Gamsbewertung, soll sowohl die Hegegemeinschaft, wie auch der Gamswildraum automatisch ausgefüllt werden, wenn das Jagdgebiet eingegeben wird. Für die Hegemeinschaft funktioniert das bereits (mit der Datensatznummer aus der Tabelle Liste_Jagd)
Spannend wird für mich nun noch, wie ich das Feld Gamswildraum als Auswahlfeld mache auf Grund des Jagdgebietes: Thema - manches Jagdgebiet hat nur einen Gamswildraum, einige aber zwei oder drei und diese müssen dann ausgewählt werden können - da bin ich noch gespannt
-
sowas?
-
Anbei eine Kopie mit einem Auszug aus meiner db
Im Formular BZ_Gams wird die HGNr und die Hegegemeinschaft automatisch ausgefüllt, wenn das Jagdrevier ausgewählt wird. Nun soll auch das Auswahlfeld Gamswildraum (Wunsch) die, den Jagdgebieten zugeteilten Gamswildräume, als Auswahl zur Verfügung stehen. (so wie im Formular eingefüllt - nur automatisch auf Grund der Eingabe des Jagdreviers) -
Also ich würde das dringend überarbeiten..
So werden dir nur die Räume im "Gamswildraum (Wunsch)" angezeigt, die die selbe Nummer haben
let f:= this;
if f.Jagdgebiet != null then
let gg := record(Liste_Jagd,number(f.Jagdgebiet));
select 'Gamswildräume' where Nummer_aus_Jagd = gg.Nr
end -
Vielen Dank auf alle Fälle mal vorab - wahrscheinlich wäre eine Lösung mit einer Untertabelle sinnvoll gewesen - aber eigentlich sollen nur diese Gamswildräume zur Auswahl stehen, in die dieses Jagdrevier/gebiet auch hineinfällt.
Vielen Dank vorab
Bernhard
Content aside
- vor 2 WochenZuletzt aktiv
- 6Antworten
- 68Ansichten
-
2
Folge bereits