Werte extrahieren
Bestimmt wurde es schon oft gefragt, trotzdem will es nicht in meinen Kopf,
wie kann ich die werte extrahieren?
let myY := year(Anfang_Auswertungszeitraum);
let n := number('Vertragspartner auswählen');
let myYM := yearmonth(Anfang_Auswertungszeitraum);
let vArray1 := [];
let vArrayObj1 := [];
let vObj1 := {};
let datorder := ((select Abrechnungen
where 'Aufträge'.Vertragspartner.Nr = n and 'anfahrt Nr' = 1 and
yearmonth('Abrechnung vom') >= myYM) order by 'Abrechnung vom');
for ZY in range(myY, year(today()) + 1) do
let myArray := for ZM in range(1, 13) do
cnt(datorder[year('Abrechnung vom') = ZY and month('Abrechnung vom') = ZM])
end;
vObj1 := {
Jahr: ZY,
value: myArray
};
vArrayObj1 := [vObj1];
vArray1 := array(vArray1, vArrayObj1)
end;
formatJSON(vArray1)
---
Ergebniss sieht dann so aus:
[{"Jahr":2022,"value":[4,6,6,9,4,6,10,6,12,8,4,4]},{"Jahr":2023,"value":[4,3,5,3,1,2,1,1,0,0,0,1]},{"Jahr":2024,"value":[0,0,0,0,0,0,3,2,4,0,0,0]}]
wie kann ich jetzt die value für die Jahre separieren und ausgeben?
.........................................
benötigen würde ich es so:
let jahr1:= [4,6,6,9,4,6,10,6,12,8,4,4];
let jahr2:= [4,3,5,3,1,2,1,1,0,0,0,1];
.
.
---
7 Antworten
-
Bei einem Array mit Objekten kann man mit item() die jeweiligen Objekts ansprechen. Die Nummerierung beginnt mit 0.
item(Array,0).value ergibt die value des ersten Objekts
-
Z. B. ergibt das ein Array der Ergebnisse, die Du dann ansprechen kannst. Mirko
let result := [{ Jahr: 2022, value: [4, 6, 6, 9, 4, 6, 10, 6, 12, 8, 4, 4] }, { Jahr: 2023, value: [4, 3, 5, 3, 1, 2, 1, 1, 0, 0, 0, 1] }, { Jahr: 2024, value: [0, 0, 0, 0, 0, 0, 3, 2, 4, 0, 0, 0] }]; for i in result do i.value end
-
...oder wie der schnellere Uwe schrieb;-)
-
Jetzt hab ich trotzdem noch eine blöde frage?
wenn ich let vArray1 ein leeres Objekt mitgebe
let vArray1 := [{}];
[{},{"Jahr":2022,"value":[4,6,6,9,4,6,10,6,12,8,4,4]},{"Jahr":2023,"value":[4,3,5,3,1,2,1,1,0,0,0,1]},{"Jahr":2024,"value":[0,0,0,0,0,0,3,2,4,0,0,0]}]
kann ich über item(vArray1, 1).value auf die Objekte zugreifen.
Lasse ich es so :
let vArray1 := [];
[{"Jahr":2022,"value":[4,6,6,9,4,6,10,6,12,8,4,4]},{"Jahr":2023,"value":[4,3,5,3,1,2,1,1,0,0,0,1]},{"Jahr":2024,"value":[0,0,0,0,0,0,3,2,4,0,0,0]}]
findet: item(vArray1, 1).value , das objekt value nicht.
Content aside
- Status Answered
- vor 2 MonatenZuletzt aktiv
- 7Antworten
- 93Ansichten
-
3
Folge bereits