Werte automatisiert in im Dyn.Mehrfachauswahlfeld setzen
Hallo,
scheinbar unterscheiden sich Dyn. von "normalen" Mehrfachauswahlfeldern.
Ich kann über den nachfolgenden Code keine Werte in einem DMAF setzen:
Ausstattung := for i in split(concat(numbers(Ausstattung)) + ",7", ",") do
number(i)
end
Wie mache ich das da?
Vielen Dank für die Hilfe im vorraus.
4 Antworten
-
hallo SvH,
laut Entwicklung wird es gerade daran gearbeitet die Werte für dmulti-Felder per Array füllen zu können. Als workaround kann man eine globale Funktion setzen:
---
function putDmulti(arr : text) do
let myTarr := parseJSON(arr);
let myDarr := for i in myTarr do
number(i)
end;
let myOBJ := {
'1000': "8",
'1001': "9",
'1010': "a",
'1011': "b",
'1100': "c",
'1101': "d",
'1110': "e",
'1111': "f",
'0000': "0",
'0001': "1",
'0010': "2",
'0011': "3",
'0100': "4",
'0101': "5",
'0110': "6",
'0111': "7"
};
let len := max(myDarr);
len := len + (len - floor(len / 4) * 4) + 4;
let bin_result := rpad("", len, "0");
for i in myDarr do
bin_result := substr(bin_result, 0, len - number(i) - 1) + "1" + substr(bin_result, len - number(i))
end;
let myArr := for i from 0 to len - 3 step 4 do
let str := lpad(substr(bin_result, length(bin_result) - 5, 4), 4, "0");
bin_result := substr(bin_result, 0, length(bin_result) - 4);
text(item(myOBJ, str))
end;
if last(myArr) = "0" or cnt(myDarr) = 1 and first(myDarr) % 4 = 0 then
myArr := slice(myArr, 0, cnt(myArr) - 1)
end;
join(myArr, "")
end
---
und dann:
---
Ausstattung := putDmulti (formatJSON(unique(numbers(Ausstattung),7)))
---
Leo
-
Hallo Leo,
vielen Dank für die schnelle Antwort.
Leider verstehe ich nicht was in der Funktion passiert und kann es nicht nachvollziehen, trotzt Programmierkenntnissen ;-)
... baue es daher ungern ein --> aber es funktiniert. Vielen Dank.
Grüße
Sven
-
Hallo Leo,
meine Nachricht von eben ist leider verschwunden, oder?
Wie kann man Werte abwählen. Vllt. auch mehrere, die in der dynamischen Datenbank den Wert auto gesetzt haben?
Vielen Dank im Voraus.
Grüße Sven
-
@SvH
Sollte deine Frage weiterhin offen sein, kannst du diese gerne in unserer offenen Sprechstunde stellen. Unter dem folgenden Link findest du unsere Webinare:
Beste Grüße
Ricardo
Content aside
- vor 3 JahrenZuletzt aktiv
- 4Antworten
- 481Ansichten