Postman-Collection
Suppliers Schreiben

pixiSupplierOrderLineLocQtyUpdate

Aktualisiert die Menge und/oder offene Menge eines Lagerort-Mengendatensatzes einer Lieferantenbestellposition.

Aktualisiert einen einzelnen Lagerort-Mengendatensatz einer Lieferantenbestellposition, identifiziert über SupplierOrderLineLocQtyId. Die eigentliche Aktualisierung übernimmt die interne Prozedur pixi.SupplierOrderLineLocQtyUpdate. Dieser Wrapper geht so vor:

  1. Öffnet eine Transaktion. Besteht beim Aufrufer bereits eine offene Transaktion, wird stattdessen ein Savepoint gesetzt.
  2. Ermittelt den Benutzer. Ist UserId angegeben, wird diese unverändert verwendet. Andernfalls wird der Benutzer über UserName in UCS_USERS gesucht. Existiert kein Benutzer mit diesem Namen, wird der Benutzer pixiAdministration verwendet.
  3. Normalisiert die Parameter:
    • ConsiderPackageUnits und ConsiderMinOrderQty werden bei NULL zu 0.
    • Qty und UndeliveredQty werden bei NULL oder 0 zu NULL.
  4. Ruft pixi.SupplierOrderLineLocQtyUpdate mit diesen Werten auf. Dabei wird immer ReturnUpdatedIds = 1 übergeben, die interne Prozedur soll also die aktualisierten IDs zurückgeben.
  5. Bestätigt die Transaktion, sofern sie von diesem Aufruf geöffnet wurde.

Bei einem Fehler wird die Transaktion bzw. der Savepoint zurückgerollt. Der Aufruf liefert dann eine Zeile mit ReturnCode = 'ERROR' und der SQL-Fehlermeldung.

Hinweise

  • Interne Prozedur nicht beigefügt: Die Definition von pixi.SupplierOrderLineLocQtyUpdate liegt nicht vor. Daher ist offen:
    • welche Tabellen sie ändert,
    • welche Prüfungen sie durchführt,
    • welche Spalten ihre Ergebnismenge im Erfolgsfall hat,
    • wie sie NULL für Qty oder UndeliveredQty behandelt (vermutlich "unverändert lassen").
  • Wert 0 nicht setzbar: Wegen der Prüfung ISNULL(@Qty, '') = '' wird der Wert 0 wie "nicht angegeben" behandelt und als NULL weitergegeben. Dasselbe gilt für UndeliveredQty. Eine Menge lässt sich über diesen Aufruf also nicht auf 0 setzen.
  • Ungenutzter Parameter: AppName ist Pflicht, wird im Code aber nicht verwendet.
  • Rollback im Fehlerfall: Wird die Transaktion durch einen Fehler nicht mehr festschreibbar, rollt der Code auf den Savepoint zurück. SQL Server erlaubt das bei nicht festschreibbaren Transaktionen nicht und kann einen weiteren Fehler auslösen.

Parameter

Parameter Typ Standardwert Beschreibung
AppName
Pflicht
varchar(255)
string
–

Name der aufrufenden Anwendung. Pflichtfeld, wird im Code aber nicht verwendet.

Beispiel: MyWarehouseTool

UserId
int NULL

ID des ausführenden Benutzers. Fehlt sie, wird der Benutzer über UserName ermittelt.

Beispiel: 12

UserName
Pflicht
varchar(50)
string
–

Benutzername, über den der Benutzer ermittelt wird, wenn UserId fehlt. Wird der Name nicht gefunden, wird pixiAdministration verwendet.

Beispiel: jdoe

SupplierOrderLineLocQtyId
Pflicht
int –

ID des zu aktualisierenden Lagerort-Mengendatensatzes der Lieferantenbestellposition.

Beispiel: 4711

ConsiderPackageUnits
bit
boolean
0

Ob Verpackungseinheiten berücksichtigt werden. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Verpackungseinheiten nicht berücksichtigen
  • 1 – Verpackungseinheiten berücksichtigen

Beispiel: 0

ConsiderMinOrderQty
bit
boolean
0

Ob die Mindestbestellmenge berücksichtigt wird. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Mindestbestellmenge nicht berücksichtigen
  • 1 – Mindestbestellmenge berücksichtigen

Beispiel: 0

Qty
int NULL

Neue Bestellmenge. 0 wird wie NULL (nicht angegeben) behandelt.

Beispiel: 24

UndeliveredQty
int NULL

Neue offene (nicht gelieferte) Menge. 0 wird wie NULL (nicht angegeben) behandelt.

Beispiel: 10

Antwort

Result-Set 1 · Bei Erfolg: was pixi.SupplierOrderLineLocQtyUpdate zurückgibt (Aufruf mit ReturnUpdatedIds = 1)

Ergebnis der internen Prozedur, vermutlich die IDs der aktualisierten Datensätze. Die Spalten sind im vorliegenden Code nicht sichtbar.

Result-Set 2 · Im Fehlerfall

Fehlerzeile mit der SQL-Fehlermeldung.

Spalte Typ Beschreibung
ReturnCode varchar(5)
string

Immer ERROR.

ErrorMessage
Kann leer sein
nvarchar(4000)
string

Text des aufgetretenen SQL-Fehlers.

Fehlermeldungen

Status Meldung Ursache
ERROR {ERROR_MESSAGE()} Jeder Fehler bei der Benutzerermittlung oder innerhalb von `pixi.SupplierOrderLineLocQtyUpdate`, z. B. eine ungültige `SupplierOrderLineLocQtyId` oder fehlgeschlagene Prüfungen. Die Änderungen werden zurückgerollt. Die eigentliche Ursache steht im Meldungstext.

Beispiele

POST https://apigateway.descartes.com/tms/pixi/
Content-Type: text/xml; charset=utf-8
Authorization: Basic BASE64(USERNAME:PASSWORD)

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
  <SOAP-ENV:Body>
    <ns1:pixiSupplierOrderLineLocQtyUpdate>
      <AppName>MyWarehouseTool</AppName>
      <!-- <UserId>12</UserId> -->
      <UserName>jdoe</UserName>
      <SupplierOrderLineLocQtyId>4711</SupplierOrderLineLocQtyId>
      <!-- <ConsiderPackageUnits>0</ConsiderPackageUnits> -->
      <!-- <ConsiderMinOrderQty>0</ConsiderMinOrderQty> -->
      <!-- <Qty>24</Qty> -->
      <!-- <UndeliveredQty>10</UndeliveredQty> -->
    </ns1:pixiSupplierOrderLineLocQtyUpdate>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

UCS_USERS · Lesen
SQL-Objekt:
dbo.pipiSupplierOrderLineLocQtyUpdate
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben