Datenbankfeld Zahlungsrabatt

Thema wurde von Anonymous, 15. Oktober 2023 erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.597
    Danke erhalten:
    472
    Danke vergeben:
    165
    Hallo,
    weiss wer wo ich in der Datenbank den Wert finde der den Zahlartenzuschlag/-rabatt beinhaltet?
    Version 4802

    Danke!
     
  2. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.597
    Danke erhalten:
    472
    Danke vergeben:
    165
    Edit:
    Es geht um den Wert ot_payment aus der Tabelle orders_total
    Wie kann ich den Auslesen? Value geht nicht, weil den gibt es öfters.
    upload_2023-10-15_13-3-31.png
     
  3. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.544
    Danke erhalten:
    11.305
    Danke vergeben:
    1.612
    Du willst das nur anzeigen lassen?
    Ich würde nicht nach Value suchen, sondern nach dem Titel
    in etwas so (ungetestet);:
    Select * From orders_total WHERE class = ot_payment AND title = 1,5% Vorkasse Rabatt;

    Wenn es verschiedene Rabatte gibt, müsste der 2. Teil etwa so .....AND title LIKE "%Vorkasse Rabatt"

    Bin mir aber nciht ganz sicher, deshalb erst im Testshop probieren und auf jeden Fall eine Sicherung der DB erstellen.
     
  4. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.597
    Danke erhalten:
    472
    Danke vergeben:
    165
    #4 Anonymous, 15. Oktober 2023
    Zuletzt bearbeitet: 15. Oktober 2023
    Hallo,

    habe ich probiert, findet nix...

    Ich glaube das die Tabelle Orders_total der falsche Ansatz ist, da da die Zusammenfassung ist.
    Value kann ich jedenfalls nicht auslesen, da es mehrere Value gibt.
    Ich interpretiere "Value" als Ausgabe eines Wertes, eben den Rabattwert, der irgendwo in der DB zu finden ist.

    Ich will halt den Wert abgreifen für meine Wawi. Da fehlt die Übergabe des Wertes.
     
  5. Kai Stejuhn

    Kai Stejuhn Beta-Held

    Registriert seit:
    26. September 2014
    Beiträge:
    1.422
    Danke erhalten:
    720
    Danke vergeben:
    92
    #5 Kai Stejuhn, 15. Oktober 2023
    Zuletzt bearbeitet: 15. Oktober 2023
    SELECT value FROM orders_total WHERE class = 'ot_payment' => ergibt den Wert des gewährten Rabatt in Euro als negativen Wert (z. B. -2.50)

    SELECT text FROM orders_total WHERE class = 'ot_payment' => ergibt den Wert als Text mit der Währung (z. B. -2,50 EUR)

    SELECT title FROM orders_total WHERE class = 'ot_payment' => ergibt den Ausgabe Text ( z. B. 1,5% Vorkasse Rabatt)

    Dies gilt aber nur für den Vorkasse-Rabatt, wenn Du Rabatt-Coupons prüfen möchtest, dann musst Du 'ot_coupon' anstelle von 'ot_payment' nehmen und für den "normalen Rabatt" nimmst Du 'ot_discount'.

    Mit

    SELECT sum(value) FROM orders_total WHERE (class = 'ot_discount' OR class = 'ot_coupon' OR class = 'ot_payment') AND `orders_id` = 'Deine Order-ID'

    sollte die Summe aller Rabatte für eine Bestellung heraus kommen.
     
  6. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.597
    Danke erhalten:
    472
    Danke vergeben:
    165
    OK, das verstehe ich. Danke.

    Aber meine Schnittstelle macht keine Abfrage sondern will eine Spalte auswerten, zb. orders.payment_class

    Da ja in der Spalte Value mehrere Values der Order drin sind klappt das nicht.
    Oder gäbe es da noch einen Trenner wie:
    orders_total.ot_payment.value

    Auf dem Screenshot (extra mit Spaltenköpfen) wäre als Beispiel die Frage:
    Wie komme ich an den Wert 45.0100 dran?

    upload_2023-10-15_14-59-11.png

    Ich muss ja die Infos
    orders_total
    class
    value

    unter einen Hut bringen...
     
  7. Kai Stejuhn

    Kai Stejuhn Beta-Held

    Registriert seit:
    26. September 2014
    Beiträge:
    1.422
    Danke erhalten:
    720
    Danke vergeben:
    92
    Ich weiß ja nicht was das für eine Schnittstelle ist, aber Du musst doch die Möglichkeit haben das einzugrenzen. Woher weiß denn die Schnittstelle, welche Bestellung (order_id) gemeint ist.
     
  8. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.597
    Danke erhalten:
    472
    Danke vergeben:
    165
    Hab ich mir auch gedacht, aber die Order_ID wird vorher als globale Bestellnummer genommen zusammen mit den Kundendaten, Waren etc.
     
  9. Kai Stejuhn

    Kai Stejuhn Beta-Held

    Registriert seit:
    26. September 2014
    Beiträge:
    1.422
    Danke erhalten:
    720
    Danke vergeben:
    92
    Das ist für mich jetzt stochern im Nebel, da ich nichts über die Schnittstelle weiß. Normalerweise würde ich erwarten, das ich die Felder verknüpfen kann. Mit dieser Verknüpfung könnte man dann evtl. eine Art Filter mit geben. Die Daten werden doch aus verschiedenen Tabellen zusammengestellt. Dort muss man doch angeben können, wie die Verknüpfung erfolgt, insbesondere, wenn die order_id nicht eindeutig ist, sondern mehrfach vorkommen kann.
     
  10. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.544
    Danke erhalten:
    11.305
    Danke vergeben:
    1.612
    Wenn es für die WaWi sein soll, musst du Dir die REST-Api ansehen, bzw. die Doku dazu.
    Darüber sollte das möglich sein.
    Das direkt in der DB zu suchen ist..... Wenn das in irgend eine andere Tabelle umzieht, fängst Du wieder neu an zu suchen.
     
  11. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.597
    Danke erhalten:
    472
    Danke vergeben:
    165
    Rest API geht noch nicht.