0

Ausgabe mehrere abfragen

Kann mir einer helfen,

komm nicht weiter. Es soll am ende eine Ausgabe über join entstehen. Ausgegeben werden soll: Summer der Nettorechnungsbeträge für die Kalenderwoche + die Kalenderwoche + die Anzahl der Rechnungen für die Kalenderwoche. jeweils als übersicht für das gewählte Jahr.

"
//jahr ist die Jahresauswahl im Auswahlfeld
";
let jahr := text(Kalenderjahr)
"
//berechnung der nettosummen für die Kalenderwochen 1-53. Die fx sind die selectierten werte Kalenderwoche & Jahr aus dem Datumsfeld Leistungszeitraum. Kunde.Nr dem Auftragspartner zugeordnet.
";
for i in range(1, 53, 1) do
sum((select Rechnungsstellung)['fx Kalenderwoche von Leistungszeitraum' = i and 'fx Kalenderjahr von Leistungszeitraum'= jahr][Kunde.Nr = 243 or Kunde.Nr = 52].'Netto-Gesamt:')
end;
"
//Jetzt sollen die werte sum aus Netto gesamt für die Kalenderwoche mit der dazugehörigen KW und der Anzahl der Aufträge als join ausgegeben werden.
";

4 Antworten

null
    • Michi.1
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Raff es nicht. 

    So sieht der string im Array aus :

    let jahr := text(Kalenderjahr);
    let aa := for i in range(1, 53, 1) do
    sum((select Rechnungsstellung)['fx Kalenderwoche von Leistungszeitraum' = i and 'fx Kalenderjahr von Leistungszeitraum' = jahr][Kunde.Nr = 243 or Kunde.Nr = 52].'Netto-Gesamt:')
    end;
    aa 

    Ergebniss: 1982.8799999999999,2187.04,3924.23,2029.9499999999998,0,4011.69,1345.92,5749.07,3

    So mit concat(aa)

    Ergebniss: 1.982,88 €, 2.187,04 €, 3.924,23 €, 2.029,95 €, 0,00 €, 4.011,69 €,

    So mit join(split(concat(aa), "€"), "
    ")

    Ergebniss:

    1.982,88
    , 2.187,04
    , 3.924,23
    , 2.029,95
    , 0,00
    , 4.011,69

    Wie bekomm ich das richtig hin ??? + Kalenderwoche und Anzahl der Rechnungen

    • john_eans
    • vor 2 Jahren
    • Gemeldet - anzeigen

    let jahr := text(Kalenderjahr);
    let aa := for i in range(1, 53, 1) do
    "KW"+i+"; Summe Rechnungen: "+format(sum((select Rechnungsstellung)['fx Kalenderwoche von Leistungszeitraum' = i and 'fx Kalenderjahr von Leistungszeitraum' = jahr][Kunde.Nr = 243 or Kunde.Nr = 52].'Netto-Gesamt:'),"#,##0.0 €")+"; Anzahl Rechnungen: "+cnt((select Rechnungsstellung)['fx Kalenderwoche von Leistungszeitraum' = i and 'fx Kalenderjahr von Leistungszeitraum' = jahr][Kunde.Nr = 243 or Kunde.Nr = 52].'Netto-Gesamt:')
    end;
    join(aa,"
    ")

    Auf die Schnelle so...
    konnte es jetzt aber nicht testen.

    • Leonid_Semik
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo Michi,

    vielleicht so:

    ---

    let myYear:=number(text(Kalenderjahr));
    let mySelect:=select Rechnungsstellung [year(Leistungszeitraum)=myYear and (Kunde=243 or Kunde=52) ];
    let myArray:=for i in unique ( mySelect.yearweek(Leistungszeitraum)) do
    format(sum(mySelect[yearweek(Leistungszeitraum)=i].'Netto-Gesamt),"#,##0.00 €")+" - KW "+last(split(i,"/"))+" - "+cnt(mySelect[yearweek(Leistungszeitraum)=i])+ "Rechnungen"
    end;
    join (myArray,"
    ")
    end
    ---

    Leo

    • Michi.1
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Guten Morgen,

    Danke sehr.