Moin, Entwicklungsumgebung: Delphi 2006 für Windows Platform: Windows 7 Anforderung: - Hole bestimmte Artikel mit REST API Get - Ändere im erhaltenen Artikel bei den Details das Feld inStock (Lagerbestand) Alter Wert im Feld inStock (Lagerbestand) = 12 Geänderter Wert im Feld inStock (Lagerbestand) = 30 - Schreibe den geänderten Artikel mit REST API Put in den Webshop zurück Ergebnis: Die REST API Funktion Put liefert als Ergebniss: String ret = {“success”:true,“data”:{“id”:139,“location”:“http://dev-wawi.roon24.de/api/articles/139”}} Problem: Wenn in der Webapplikation der Artikel, in diesem Fall Artikel ID = 139 angezeigt wird, enthällt er den alten Wert im Feld inStock (Lagerbestand) Beim nochmaligen Auslesen des Artikels mit der ArtikelID 139 mit REST API Get, steht im Feld inStock der Wert 12 nicht 30, wie ich erwartet hätte. Die eigentliche Frage ist : Warum wird der Wert im Feld inStock, für den Artikel 139 nicht gespeichert ? Artikeldetail nach REST API Get: … … … “details”:[{ “id”:630, “articleId”:139, “unitId”:null, “number”:“SW10139.1”, “supplierNumber”:"", “kind”:2, “additionalText”:"", “active”:1, “inStock”:12, “stockMin”:0, “weight”:“0.000”, “width”:null, “len”:null, “height”:null, “ean”:"", “position”:0, “minPurchase”:1, “purchaseSteps”:null, “maxPurchase”:null, “purchaseUnit”:null, “referenceUnit”:null, “packUnit”:"", “shippingFree”:false, “releaseDate”:null, “shippingTime”:"", “attribute”: { “id”:641, “articleId”:139, “articleDetailId”:630, “attr1”:"", “attr2”:"", “attr3”:"", “attr4”:"", “attr5”:"", “attr6”:"", “attr7”:"", “attr8”:"", “attr9”:"", “attr10”:"", “attr11”:"", “attr12”:"", “attr13”:"", “attr14”:"", “attr15”:"", “attr16”:"", “attr17”:null, “attr18”:"", “attr19”:"", “attr20”:"" }, “images”:, “prices”:[{ “id”:742, “articleId”:139, “articleDetailsId”:630, “customerGroupKey”:“EK”, “from”:1, “to”:“beliebig”, “price”:126.00840336134, “pseudoPrice”:0, “basePrice”:0, “percent”:0, “customerGroup”: { “id”:1, “key”:“EK”, “name”:“Shopkunden”, “tax”:true, “taxInput”:true, “mode”:false, “discount”:0, “minimumOrder”:10, “minimumOrderSurcharge”:5 } }], “configuratorOptions”:[{ “id”:69, “groupId”:6, “name”:“M”, “position”:23 }] }] … … … Artikeldetail nach REST API Put: … … … “details”:[{ “id”:630, “articleId”:139, “unitId”:null, “number”:“SW10139.1”, “supplierNumber”:"", “kind”:2, “additionalText”:"", “active”:1, “inStock”:30, “stockMin”:0, “weight”:“0.000”, “width”:null, “len”:null, “height”:null, “ean”:"", “position”:0, “minPurchase”:1, “purchaseSteps”:null, “maxPurchase”:null, “purchaseUnit”:null, “referenceUnit”:null, “packUnit”:"", “shippingFree”:false, “releaseDate”:null, “shippingTime”:"", “attribute”: { “id”:641, “articleId”:139, “articleDetailId”:630, “attr1”:"", “attr2”:"", “attr3”:"", “attr4”:"", “attr5”:"", “attr6”:"", “attr7”:"", “attr8”:"", “attr9”:"", “attr10”:"", “attr11”:"", “attr12”:"", “attr13”:"", “attr14”:"", “attr15”:"", “attr16”:"", “attr17”:null, “attr18”:"", “attr19”:"", “attr20”:"" }, “images”:, “prices”:[{ “id”:742, “articleId”:139, “articleDetailsId”:630, “customerGroupKey”:“EK”, “from”:1, “to”:“beliebig”, “price”:126.00840336134, “pseudoPrice”:0, “basePrice”:0, “percent”:0, “customerGroup”: { “id”:1, “key”:“EK”, “name”:“Shopkunden”, “tax”:true, “taxInput”:true, “mode”:false, “discount”:0, “minimumOrder”:10, “minimumOrderSurcharge”:5 } }], “configuratorOptions”:[{ “id”:69, “groupId”:6, “name”:“M”, “position”:23 }] }] … … …
Ich habe das gleiche Problem. Artikel ist im Shop vorhanden und deaktiviert. Über die REST API schalte ich den Artikel auf aktiv. Im Backend ist der Artikel dann als aktiv markiert. Aber im Frontend wird der Artikel erst angezeigt, nachdem ich den Artikel im Shop Backend manuell abspeichere. Cache im Backend leeren bring nichts, Artikel erscheint im Frontend immer erst nachdem der geänderten Artikel nochmal manuell abgespeichert wird. Aktuelle Shopware Version 5.1.2. Kennt jemand das Verhalten? Wie bekomme ich den Artikel sofort frei geschaltet im Frontend? Gelöst: post147814.html?hilit=REST#p147814