Skip to main content
Beantwortet

EK / VK Preisprobleme

  • November 5, 2025
  • 4 Antworten
  • 54 Ansichten

Forum|alt.badge.img
  • Regelmäßiger Teilnehmer
  • 3 Antworten

Hallo alle,

mir ist jetzt schon seit langer Zeit dieses Problem bekannt, hab gehofft es würde mal angegangen werden, aber vielleicht weiß auch keiner davon:
Es ist ziemlich problematisch, dass man mehrere gleichzeitig aktive EK / VK Preise der gleichen Art haben kann.
Dazu habe ich ein Bild angehangen. Es sind alles Standardpreise, mit teils unterschiedlichen, teils gleichen Start / Enddaten - keine Gruppen oder Kundenpreise.
Dass das überhaupt möglich ist, einen Preis anzulegen, der überlappt mit einem aktiven macht keinen Sinn. Shopware 6 Übertragungen funktionieren dann nicht mehr und wenn man den Artikel verkaufen will - da bin ich gar nicht sicher, welcher Preis dann da zufällig gewählt wird.

Es ist auch relativ problematisch, dass man, meines Wissens nach, keine Möglichkeit hat, diese Fehler zu entdecken, wenn man nicht a) alles manuell durchgeht (wahnsinn bei mehr als 1000 Artikeln), oder b) über die API sich alle Preise pro Artikel holt, Start / Endzeiten vergleicht, fehlerhafte löscht.

Es sollte am besten zukünftig unmöglich gemacht werden, dass das Problem entsteht, da Artikel letztlich der Grundbaustein sind für alles andere im System. Im PHP ist’s ne einfache if-Abfrage mit SQL Query, ungefähr so:

SELECT 1
FROM artikel_preise
WHERE artikel_id = :artikel_id
  AND (:ab <= gueltig_bis AND gueltig_ab <= :bis)
LIMIT 1
SQL;
Dann ne Meldung “Achtung, überlappende Daten” und fertig.

 

Beste Antwort von Pau Ferrandiz

Hi ​@nomnom  danke für die ausführliche Erklärung! 😊

Das Verhalten mit überlappenden Preisen tritt aktuell nur über die API und Connect auf. Dafür gibt es schon einen Change Request, der genau dieses Verhalten künftig verhindern soll.

Über das Frontend oder die Importvorlage kann so etwas nicht passieren, dort wird beim Anlegen eines neuen Preises mit denselben Parametern der alte automatisch deaktiviert. In Xentral selbst kann man Verkaufspreise per Import nicht direkt überschreiben oder die Gültigkeit ändern.

Wenn du einen Preis aktualisieren willst, geht das über den Importvorlagen: Ein neuer Preis mit denselben Parametern wie Menge, Gruppe und Währung macht den alten automatisch inaktiv.

Kurz gesagt: Das System verhält sich außerhalb der API schon „sicher“, und für die API kommt bald eine Lösung. 👍

4 Antworten

Pau Ferrandiz
Xentraleer
Forum|alt.badge.img+2
  • Xentraleer
  • 103 Antworten
  • Antwort
  • November 10, 2025

Hi ​@nomnom  danke für die ausführliche Erklärung! 😊

Das Verhalten mit überlappenden Preisen tritt aktuell nur über die API und Connect auf. Dafür gibt es schon einen Change Request, der genau dieses Verhalten künftig verhindern soll.

Über das Frontend oder die Importvorlage kann so etwas nicht passieren, dort wird beim Anlegen eines neuen Preises mit denselben Parametern der alte automatisch deaktiviert. In Xentral selbst kann man Verkaufspreise per Import nicht direkt überschreiben oder die Gültigkeit ändern.

Wenn du einen Preis aktualisieren willst, geht das über den Importvorlagen: Ein neuer Preis mit denselben Parametern wie Menge, Gruppe und Währung macht den alten automatisch inaktiv.

Kurz gesagt: Das System verhält sich außerhalb der API schon „sicher“, und für die API kommt bald eine Lösung. 👍


Forum|alt.badge.img
  • Autor
  • Regelmäßiger Teilnehmer
  • 3 Antworten
  • November 10, 2025

Hallo ​@Pau Ferrandiz,

Danke für deine Antwort. Ich bin nicht sicher, ob wir gegebenenfalls eine alte Version haben, aber bei uns ist es noch möglich fehlerhafte Preise zu erstellen. Bin mir nicht sicher, ob du meinst, dass man bei neuen Preise Start & Enddatum nicht setzt? Das würde aber frühzeitiges Eintragen für automatische Preisänderung zum Tag X verhindern.

Meistens haben wir Preisimporte über die Import Zentrale gemacht.
Ich hab jetzt eben testweise drei neue VK angelegt, über die Oberfläche. Gleiche Parameter, einmal gleicher Zeitraum, einmal überlappender Zeitraum, einmal mehrfach überlappender Zeitraum, anderer Preis (1€). Welcher ist nun aktiv, und welcher wird aktiv am 01.01.2026? (“alte Verkaufspreise anzeigen” ist deaktiviert).
Es gibt bislang nur die Möglichkeit, sowas festzustellen, wenn man per API sich alle Preise holt, nach Artikel gruppiert und dann nach zeitlichen Überlappungen schaut.

Vielleicht wäre es noch besser, über Constraint / Trigger oder bei PostgreSQL über Extension es unmöglich zu machen, dass solche Einträge entstehen können. Das würde es effektiv über die GUI, API, Import Zentrale, neuer CSV Importer? - immer unmöglich machen, ungültiges anzulegen. Man muss dann nur die Exception ordentlich behandeln.

 


Daniel Schmidtchen
Partner
Forum|alt.badge.img+5

@Pau Ferrandiz ich fürchte ​@nomnom hat Recht, die Logik greift wohl, zumindest direkt in der GUI, nicht mehr. Man kann einfach Preise hinzufügen, die bestehenden werden nicht auf gültig bis gesetzt. 


Pau Ferrandiz
Xentraleer
Forum|alt.badge.img+2
  • Xentraleer
  • 103 Antworten
  • November 13, 2025

@Daniel Schmidtchen ​@nomnom Danke für die Hinweise, wir prüfen das intern und melden uns hier zurück!