pixiReadItemTagMatching
Liefert die Zuordnungen von Artikel-Tags zu Artikeln seitenweise mit Keyset-Paging über die Zuordnungs-ID.
Liest Tag-Zuordnungen aus TagMatch und liefert nur solche, deren Tag in Tag den Wert TypeId = 1 hat. Laut Code-Kommentar sind das Artikel-Tags.
- Es werden nur Zuordnungen mit einer ID größer als
@Startgeliefert. - Es werden höchstens
@RowCountZeilen geliefert. - Die Sortierung erfolgt aufsteigend nach der Zuordnungs-ID (
ItemMatchKey).
Paging: @Start ist kein Zeilen-Offset, sondern der zuletzt erhaltene ItemMatchKey. Zum Lesen aller Zuordnungen mit Start = 0 beginnen. Danach erneut aufrufen und Start auf den höchsten ItemMatchKey der vorherigen Seite setzen. Aufhören, sobald weniger als RowCount Zeilen zurückkommen.
Hinweise
- Beide Tabellen werden mit
NOLOCKgelesen. Nicht festgeschriebene Änderungen können daher sichtbar sein, und bei gleichzeitigen Schreibvorgängen können Zeilen fehlen oder doppelt erscheinen. - Die Bedeutung von
TypeId = 1(Artikel-Tags) stammt aus dem Kommentar der Prozedur; andere Tag-Typen werden ignoriert. - Der Aufruf liefert nur IDs. Tag-Namen und Artikeldetails müssen über andere Aufrufe gelesen werden.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
Start
|
int | 0 |
Es werden nur Zuordnungen mit einer ID ( Beispiel: |
RowCount
|
int | 1000 |
Maximale Anzahl der gelieferten Zeilen. Beispiel: |
Antwort
Result-Set 1 · Immer (kann leer sein).
Zuordnungen von Artikel-Tags zu Artikeln, aufsteigend nach ItemMatchKey sortiert.
| Spalte | Typ | Beschreibung |
|---|---|---|
ItemMatchKey
|
int |
ID der Tag-Zuordnung ( |
TagRef
|
int |
ID des zugeordneten Tags ( |
ItemRef
|
int |
ID des Artikels, dem der Tag zugeordnet ist ( |
Beispielantwort
<SqlRowSet1>
<row>
<ItemMatchKey>101</ItemMatchKey>
<TagRef>5</TagRef>
<ItemRef>23817</ItemRef>
</row>
<row>
<ItemMatchKey>102</ItemMatchKey>
<TagRef>7</TagRef>
<ItemRef>23817</ItemRef>
</row>
</SqlRowSet1>
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:pixiReadItemTagMatching>
<!-- <Start>0</Start> -->
<!-- <RowCount>1000</RowCount> -->
</ns1:pixiReadItemTagMatching>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
curl -X POST 'https://apigateway.descartes.com/tms/pixi/' \
--user 'USERNAME:PASSWORD' \
--header 'Content-Type: text/xml; charset=utf-8' \
--data-binary @- <<'XML'
<?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:pixiReadItemTagMatching>
<!-- <Start>0</Start> -->
<!-- <RowCount>1000</RowCount> -->
</ns1:pixiReadItemTagMatching>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
XML
<?php
$soapClient = new SoapClient(null, [
'login' => 'USERNAME',
'password' => 'PASSWORD',
'location' => 'https://apigateway.descartes.com/tms/pixi/',
'uri' => 'https://apigateway.descartes.com/tms/pixi/',
]);
$arguments = [
// 'Start' => '0',
// 'RowCount' => '1000',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiReadItemTagMatching', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiReadItemTagMatching