Fehler #410
offenLeere individuelle Lieferadressen werden angelegt
0%
Beschreibung
Beim Speichern eines Belegs (Angebot/Auftrag (alte Maske) / Lieferschein/Rechnung) werden (fast) leere individuelle Lieferadressen (custom shipto) angelegt.
Der Code in SL::Form::add_shipto prüft, ob eines der Felder gesetzt ist und shiptocp_gender ist auf 'm' voreingestellt und damit immer gesetzt.
Das lässt sich leicht beheben (siehe angehängten patch).
Ein Upgrade-Skript wäre sicher noch sinnvoll. Alle Lieferadressen, deren Felder bis auf shiptocp_gender leer sind, löschen. Aber nur, wenn module != 'CT' (oder auch dann?).
Ich habe in einer DB auch den Fall, dass es eine "leere" shipto gibt, die zu einer Storno-Rechnung gehört (shipto_id der Storno-RG = shipto.shipto_id). In dieser shipto ist die trans_id = ar.id der orignalen (stornierten Rechnung). Wo das herkommt, weiß ich nicht.
Ich denke, entweder alle "leeren" shiptos löschen, wo module != 'CT' ist und die nicht in shipto_id von oe, delivery_orders, ar sind.
Oder alle "leeren" shiptos löschen und evtl. Verweise in customer/vendor/oe/delivery_order/ar auch entfernen.
Ah - und inzwischen gibt es ja auch CVars - die müssten dann entspr. auch gelöscht werden bzw. dann auch nur die shiptos, bei denen die CVars nicht gesetzt sind. Was ein Problem ist, da die CVars auch angelegt werden und wenn die einen default-Wert haben, dann sind die nicht leer.
Vielleicht hat ja jemand eine Idee.
Dateien