Trigger bei Mehrfachauswahlfeld funktioniert nicht
Hallo zusammen.
Ich bin auf folgendes Problem gestoßen.
Ich möchte ein dyn.Mehrfachauswahlfeld mit dem Namen "A.H.-Satz" in der Tabelle "Gefahrstoffe" nutzen. Dieses Feld verweist auf die Tabelle: H-Sätze. Hier gibt es zwei Felder: H-Satz und H-Bezeichnung.
Der Verweis funktioniert prima mit der Formel:
let myArt := 'A.H-Satz';
(select 'H-Sätze') order by 'H-Satz'
Nun möchte ich aber bei Auswahl eines H-Satzes den in der Tabelle "H-Sätze" hinterlegte H-Bezeichnung in dem Feld "A.Zus.H-Satz" ausgeben.
Schwierig zu erklären.
In der Tabelle H-Sätze steht
In der Tabelle Gefahrstoffe
Ist das dyn.Mehrfachauswahlfeld
Bei Klick auf H200 soll in der gleichen Tabelle "Gefahrstoffe" das Feld "A.Zus.H-Satz" gefüllt werden. Und zwar mit der H-Bezeichnung aus den H-Sätzen. Also sollte in A.Zus.H-Satz" dann geschrieben werden:
- Instabil, explosiv
Wenn ich dann noch H201 im Auswahlfeld wähle soll darunter dann stehen:
- Explosiv, Gefahr der Massenexplosion usw.
Bislang habe ich in dem dyn. Mehrfachauswahlfeld folgenden Trigger.
Funktioniert nur leider nicht.
let myID := number('A.H-Satz');
if not 'A.Zus.H-Satz' then
'A.Zus.H-Satz' := text('H-Sätze'.'H-Bezeichnung')
else
'A.Zus.H-Satz' := 'A.Zus.H-Satz' +
"
" +
text('H-Sätze'.'H-Bezeichnung')
end;
let myID := number('A.H-Satz');
let myM := concat((select 'H-Sätze' where Nr = myID).'H-Bezeichnung');
'A.Zus.H-Satz' := myM
Bestimmt liege ich vollkommen falsch.
Könnt ihr mir hierbei helfen?
Herzlichen Dank.
4 Antworten
-
If I understand you correctly:
When you select a choice in 'A.H-Satz' then you want the text from the field 'H-Bezeichnung' from the record that was selected in the choice copied to 'A.Zus.H-Satz'.
You should use the record() command whenever you have a single choice dynamic field.
let selectedRec := record('H-Sets', number('A.H-Satz')); 'A.Zus.H-Satz' := selectedRec.'H-Bezeichnung'
I'm not sure what or when you want the if statement to happen. The way you wrote your code what ever happens in the if statement is forgotten cause the last line is what ends up in 'A.Zus.H-Satz'.
Do you have a reference field called 'H-Satze'?
-
Hallo Jens versuch's mal so (Trigger "Nach Änderung" im DynMAF 'A.H-Satz'):
'A.Zus.H-Satz' := join(for i in numbers('A.H-Satz') do record('H-Sätze',i).'H-Bezeichnung' end, " ")
In "Dynamischer Wert" von 'A.H-Satz' müsste eigentlich nur stehen:
(select 'H-Sätze') order by 'H-Satz'
Content aside
- Status Answered
- vor 8 TagenZuletzt aktiv
- 4Antworten
- 41Ansichten
-
4
Folge bereits