0

Neue Datensätze erstellen aus Tabelle

Guten Morgen, ich habe ein Thema, bei dem ich nicht weiterkommen und gerne eine Denkanstoß durch das Forum hätte. Ich möchte Datensätze in einer bestehenden Tabelle anlegen, die aus einer Selectabfrage einer anderen (nicht verknüpften Tabelle - z.B. Umsätze) stammen. 

Konkret geht es darum, dass in meiner Tabelle Umsätze in einer Artikelgruppe für ein bestimmtes Datum mehrfach für diese Artikelgruppe vorkommen. In der Zieltabelle soll aber nur der letzte Datensatz der Artikelgruppe angelegt werden. 

Mein bisheriger Ansatz sieht wie folgt aus, bei dem im Select (uamid) aber noch der Teil für die Artikelgruppe fehl: 

do as server
       let mydate := date(2022, 12, 31);
    let uamid := (select Umsaetze where Datum = mydate); 
        for i in uamid do
        let mynew := (create 'Zieltabelle');
        mynew.(Artikelgruppe := i.Artikelgruppen_ID)
    end

Frank

2 Antworten

null
    • mirko3
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Versuche es mal so. Mirko

    do as server
        let selectedNumbers := for j in select Umsaetze do
                let artGroup := j.Artikelgruppe;
                let dat := j.Datum;
                let no := j.number(Nr);
                let result := (select Umsaetze)[Artikelgruppe = artGroup and Datum = dat].number(Nr);
                if contains(result, no) and j.Nr = max(result) then
                    j.number(Nr)
                end
            end;
        for i in selectedNumbers do
            (create Zieltabelle).(
                Artikelgruppe := record(Umsaetze,i).Artikelgruppe;
                Datum := record(Umsaetze,i).Datum
            )
        end
    end
    
    • Pro BoutiquenFonds GmbH
    • Eichelfr
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Mirko , danke für den Vorschlag. Er funktioniert! Muss lediglich nochmal sehen, ob ich die Performance noch etwas verbessern kann, da das Script gefühlt recht lange läuft. 

Content aside

  • Status Answered
  • vor 1 JahrZuletzt aktiv
  • 2Antworten
  • 40Ansichten
  • 2 Folge bereits