0
Branching Checklist – verzweigtes Checklisten-System
Das Beispiel zeigt eine solche Checkliste, welche hier an einer Stelle abzweigen muß. Die Liste enthält 10 Felder, von denen nur jeweils 1-2 angezeigt werden. Abschliessend wird die jeweilige Triagefarbe ohne Schrift angezeigt. Es sind sicher auch weiter verzweigtere Entscheidungsbäume möglich. Falls jemand so einen eher exotischen Code mal benötigt, mülle ich hier mal wieder die Tipps voll. In den "flowchartValues" sind alle Checklistenfelder enthalten. Der "displayedIndex" enthält die nach Auswahl des Eintrags anzuzeigenden Checklistenfelder. Man benötigt also nur ein dchoice-Feld. Um kurze Einträge zu haben, habe ich mich für das mathematische "Nicht" entschieden: "¬".
Hier die Papierform:

Hier der Code für das dchoice namens "dchoice":
let dchoiceValue := number(dchoice);
let flowchartValues := [{
ID: 1,
color: "seagreen",
value: "walking",
displayedIndex: [1]
}, {
ID: 2,
color: "clear",
value: "¬ walking",
displayedIndex: [3, 4]
}, {
ID: 3,
color: "firebrick",
value: "severe bleeding",
displayedIndex: [3]
}, {
ID: 4,
color: "clear",
value: "¬ severe bleeding",
displayedIndex: [5, 6]
}, {
ID: 5,
color: "clear",
value: "talking",
displayedIndex: [7, 8]
}, {
ID: 6,
color: "clear",
value: "¬ talking",
displayedIndex: [9, 10]
}, {
ID: 7,
color: "firebrick",
value: "penetrating",
displayedIndex: [7]
}, {
ID: 8,
color: "gold",
value: "¬ penetrating",
displayedIndex: [8]
}, {
ID: 9,
color: "firebrick",
value: "breathing",
displayedIndex: [9]
}, {
ID: 10,
color: "gray",
value: "¬ breathing",
displayedIndex: [10]
}];
let display := if dchoiceValue = null then
[1, 2]
else
for i in item(flowchartValues, dchoiceValue - 1).displayedIndex do
number(i)
end
end;
for i in display do
let object := {};
setItem(object, "id", number(item(flowchartValues, i - 1).ID));
setItem(object, "color", color(text(item(flowchartValues, i - 1).color)));
setItem(object, "caption", text(item(flowchartValues, i - 1).value));
setItem(object, "textColor", if dchoiceValue = first(item(flowchartValues, i - 1).ID) then
color(text(item(flowchartValues, i - 1).color))
end);
object
end
Antwort
Content aside
- vor 3 StundenZuletzt aktiv
- 5Ansichten
-
1
Folge bereits
