0

Preisermittlung

Hallo Ninox-Gemeinde,

ich wende mich an euch, weil ich Unterstützung bei einem spezifischen Problem brauche.

Ich arbeite mit einer Tabelle namens "Überführung", die zur Koordination unserer Logistik-Aufträge dient. Bisher wurden diese Aufträge basierend auf Kilometerzonen, Tourenarten und kundenspezifischen Kriterien berechnet. Nun steht ein neues Projekt an, bei dem für einen bestimmten Kunden und ausschließlich in diesem Projekt eine Sonderkondition berechnet werden soll.

Die Aufträge lassen sich in der Tabelle "Überführung" über das Feld "Kunde des Kunden" identifizieren, während in der Tabelle "Produkte" das Feld "Sonderprojekt" zur Identifizierung verwendet wird.

Ich habe bereits verschiedene Ansätze ausprobiert, unter anderem diesen:

let gesamtKm := 'KM Gesamt';
let Kunde := Kunde.'Unternehmen Kurzname';
let Auftragsart := 'Touren Art';
let Sonderprojekt := 'Kunde des Kunden';
let Produkte := first(select Produkte
   where 'Kilometer von' <= gesamtKm and 'Kilometer bis' >= gesamtKm and
   (Kunde = Kunde_Kurzname_1 or Sonderprojekt = Sonderprojekt) and Auftragsart = Touren_Art);
if Produkte then Produkte.'VK Preis' end
```

Leider wird die Standardkondition ermittelt, ohne die Sonderkondition zu berücksichtigen.

Ich wäre sehr dankbar für eure Hilfe oder Tipps, wie ich das Problem beheben kann.

Vielen Dank im Voraus!

6 Antworten

null
    • pma_mgmt
    • vor 3 Wochen
    • Gemeldet - anzeigen

    Hallo Oscar, 

    wir können uns versuchen Schritt für Schritt voranzuarbeiten. 

    Ich empfehle als erstes, sicherzustellen, eindeutige Namen zu verwenden. Sonderprojekt ist in diesem Fall gerade eine Variable in der Tabelle Produkte und auch in deinem Code. Zudem werden "Produkte" mal als Tabelle und mal als Variable angesprochen. 

    Sobald du das korrigierst, kann es sein, dass es funktioniert, da Ninox dann eindeutig weis, ob du auf die Tabelle oder die Variable zugreifen möchtest.

     

    Grüße

    Peter

    • Oscar
    • vor 3 Wochen
    • Gemeldet - anzeigen

    Hallo Peter,

     

    vielen Dank für Deine Antwort ich habe es nach Deinem Hinweis etwas umgeschrieben leider ohne Erfolg.

    Nach dem ich die Variable "Produkte" auf "Produkt" geändert habe, wird das Feld "VK Preis" in der Tabelle Produkte nicht mehr gefunden. Vor der Änderung wurde mir der normale VK Preis aus der Tabelle Produkte zurückgegeben.

      • Oscar
      • vor 3 Wochen
      • Gemeldet - anzeigen

       Sorry Fehler gefunden,  habe auf Produkt.'VK Preis' korrigiert, aber leider funktioniert das ganz immer noch nicht .

      • pma_mgmt
      • vor 3 Wochen
      • Gemeldet - anzeigen

       Hallo Oscar, deine Abfragen sind falsch herum: "Kunde_Kurzname_1 = Kunde or Sonderprojekt = S_Projekt"

      Links ist das Datenfeld in "Produkt", rechts deine Variable

      • pma_mgmt
      • vor 3 Wochen
      • Gemeldet - anzeigen

      Dann verstehe ich nicht, wie du weiter machen willst. Du wählst das erste Produkt aus. Von diesem willst du den VK-Preis? Dann wäre es if cnt(Produkt)>0 ... und auf den VK-Preis des ersten Produkts kommst du mir Produkt.'VK Preis'

      • Oscar
      • vor 2 Wochen
      • Gemeldet - anzeigen

       Hallo Peter, ich habe eine Tabelle "Überführungen" in der die Aufträge geplant werden, und eine Tabelle "Produkte" in dem die Preise für die Dienstleistungen geführt werden.

      Die Preise werden ermittelt anhand :

      Touren-Art, Gesamtkilometer und Kunde, das hat bis jetzt auch gut geklappt. Jetzt kommt ein Sonderprojekt auf uns zu für die wir eine Sondervergütung berechnen. Diese können wir aus dem Feld "Kunde des Kunden" in der Tabelle "Überführung und Feld "Sonderprojekt" in Tabelle "Produkte" ermitteln. Ich benötige bei diesem Kunden nur die Sondervergütung wenn "Kunde des Kunden" in der Tabelle "Überführung und Feld "Sonderprojekt" in Tabelle "Produkte" übereinstimmen. Sonst immer normaler Preis.

       

      Viele Grüße

      Oscar