Update Sales Order
Zuletzt geändert: 28.05.2026 17:46

Übersicht

Update-SalesOrder #

ÜBERSICHT #

Aktualisiert ausgewählte Kopffelder eines vorhandenen Auftrags in EULANDA.

SYNTAX #

Update-SalesOrder [-XmlFile] <string> [-Conn] <__ComObject> [<CommonParameters>]

BESCHREIBUNG #

Diese Funktion aktualisiert ausschließlich Kopffelder eines bereits existierenden Auftrags aus einer EULANDA-AUFTRAG-XML. Im Gegensatz zu Import-SalesOrder legt sie keinen Auftrag an. Im Gegensatz zu Update-SalesOrderLineItems fasst sie keine Positionen an.

Aktualisiert werden ausschließlich die folgenden Spalten - jeweils nur dann, wenn das zugehörige XML-Element vorhanden und nicht leer ist. Leere oder fehlende Elemente lassen die Spalte in EULANDA unverändert; es findet kein NULL-Override statt. Damit ist es ungefährlich, die Funktion gegen Aufträge laufen zu lassen, die ihre Texte aus anderen Quellen (z. B. EDI/EDIFACT, Tabelle AuftragText) befüllt bekommen haben - was nicht im XML kommt, wird auch nicht überschrieben.

  • Vortext aus <VORTEXT> (varchar(MAX); 1:1 in die Spalte Auftrag.Vortext geschrieben; die Tabelle AuftragText wird nicht angefasst)
  • Nachtext aus <NACHTEXT> (varchar(MAX); 1:1 in die Spalte Auftrag.Nachtext)
  • UserVC1 aus <USERVC1> (varchar(50))
  • UserVC2 aus <USERVC2> (varchar(50))
  • UserVC3 aus <USERVC3> (varchar(100))

Zu lange Werte für die UserVCn-Spalten werden auf die jeweilige DB-Maximallänge gekürzt und der Vorgang per Write-Warning protokolliert - das verhindert einen SQL-Truncation-Fehler, macht den Datenverlust aber sichtbar.

Enthält das XML mehrere <VORTEXT>-Knoten (z. B. strukturierte Einträge mit SubjectCode/ContentCode-Attributen, wie sie der Export aus AuftragText erzeugt), wird nur der erste als Plaintext in die Spalte übernommen. Strukturierte Vortexte werden von dieser Funktion bewusst nicht zurückgeschrieben - dafür gibt es in EulandaXtools derzeit keinen Import-Pfad.

Der Auftrag wird wie in Update-SalesOrderLineItems lokalisiert: bevorzugt über <AUFTRAGSNUMMER> (eindeutig, dbo.Auftrag.KopfNummer), Fallback über <BESTELLNUMMER> mit Eindeutigkeits-Check.

PARAMETER #

-XmlFile #

Type: string

Pfad zur EULANDA-AUFTRAG-XML-Datei.

-Conn #

Type: __ComObject

Eine aktive COM-Verbindung zur EULANDA-Datenbank.

AUSGABEN #

[int]

Anzahl der tatsächlich gesetzten Spalten. 0, wenn das XML zu keiner der unterstützten Spalten einen befüllten Wert mitbringt.

BEISPIELE #

# Vortext und Nachtext aus einer zurückgespielten App-XML übernehmen
Update-SalesOrder -Conn $conn -XmlFile 'C:\eulanda\order_rueck.xml'
# In Kombination mit Update-SalesOrderLineItems im Re-Import-Workflow
Update-SalesOrder           -Conn $conn -XmlFile $localFile
Update-SalesOrderLineItems  -Conn $conn -XmlFile $localFile -ReplaceLineItems