0

Tabelle um Untertabelle ergänzen

Hallo zusammen, vor Zeiten haben wir eine Tabelle: Arbeitsblatt angelegt um Werte für eine aussagekräftige Statistik zu sammeln. Dabei ist der Inhalt von einer Berechnung (EPreis1*Menge1=GPreis1) auf drei Berechnungen erweitert worden, ich habe da also jetzt zusätzlich EPreis2*Menge2=GPreis2 und EPreis3*Menge32=GPreis3 verarbeitet und ziehe hieraus die Summe für statistische Zwecke. Das ist sowas wie die Statistik der Fakturierung.

Jetzt denken wir über den Schritt nach, die Tabelle Arbeitsblatt per .csv zur Fakturierung zu schicken. Dazu braucht es aber pro Berechnung einen Datensatz. An anderer Stelle ist das per Untertabelle gelöst.

Was würdet Ihr vorschlagen, und wie bekomme ich die historischen Daten in diese Untertabelle geschrieben? 

Danke! Wolfgang

5 Antworten

null
    • Ninox-Professional
    • planoxpro
    • vor 6 Tagen
    • Gemeldet - anzeigen

    Hallo Wolfgang, werden die drei Formeln alle berechnet oder jeweils immer nur eine davon? In letzterem Fall müsste es ja eine Bedingung geben, anhand derer entschieden wird, ob GPreis1, -2 oder -3 berechnet wird. Dann würde ich auch nur 1 Formelfeld nutzen und die entsprechende Bedingung schon zur Berechnung des Ergebnisses heranziehen. So nach diesem Schema:

    GPreis := switch BEDINGUNG do
       case "A": EPreis1 * Menge1
       case "B": EPreis2 * Menge2
       case "C": EPreis3 * Menge3
       default: 0
    end

    Dann gäbe es immer nur 1 Ergebnisfeld (GPreis), das ausgewertet werden müsste.

      • wolfgangmohr
      • vor 6 Tagen
      • Gemeldet - anzeigen

       sie werden immer alle berechnet, deswegen brauche ich auch drei Datensätze für die csv Tabelle zwecks Übergabe an die Fakturierung. 

      • Ninox-Professional
      • planoxpro
      • vor 5 Tagen
      • Gemeldet - anzeigen

      Ok, aber dann verstehe ich das Problem nicht.

    • mirko3
    • vor 4 Tagen
    • Gemeldet - anzeigen

    Hallo Wolfgang. Versuche mal folgendes: Lege die verknüpfte Untertabelle an, nenne sie "Statistik", lege drei Zahlenfelder an (GPreis1, GPreis2, GPreis2) und in der Tabelle Arbeitsblatt einen Button mit folgendem Code.

    for i in select Arbeitsblatt do
        let fields := ["GPreis1", "GPreis2", "GPreis3"];
        let values := [i.EPreis1 * i.Menge1, i.EPreis2 * i.Menge2, i.EPreis3 * i.Menge3];
        let me := i.this;
        for j in range(3) do
            let new := (create Statistik);
            new.(
                set(this, item(fields, j), item(values, j));
                Arbeitsblatt := me
            )
        end
    end
    

    Jetzt wird für jeden GPreis ein eigener Datensatz in der Untertabelle angelegt und das entsprechende Feld gefüllt. Ein Zahlenfeld deshalb, damit nicht zu viele Funktionsfelder benutzt werden (Rechenleistung) und die Werte fix geschrieben sind, nicht referenziert. Den Code im Button kann man später noch einschränken, dass nur die aktuellen Records herangezogen werden. Wenn es viele Datensätze sind, lohnt es sich, den Code in do as server...end einzubetten. Mirko

      • wolfgangmohr
      • gestern
      • Gemeldet - anzeigen

       Danke Dir. Habe das probiert, hat im Moment noch nicht wie erwartet/erhofft reagiert.
      Versuche weiter, melde  mich. Wolfgang

Content aside

  • gesternZuletzt aktiv
  • 5Antworten
  • 30Ansichten
  • 3 Folge bereits