es kommt natürlich drauf an wie du die Lieferanten-Lagerbestände im Shop speicherst.
Wenn beispielsweise der Lagerbestand des Lieferanten im Freitextfeld 1 des Artikels speichert ist, so kann du das folgende im Textbaustein „DetailDataInfoInstock“ einfügen.
{if $sArticle.instock > 0} Sofort verfügbar {else if $sArticle.instock == 0 && $sArticle.attr1 > 0}
Lieferzeit 2-3 Tage {else if $sArticle.instock == 0 && $sArticle.attr1 == 0}Lieferzeit 14 Tage.
{/if}
Den Abverkaufsmodus muss man natürlich ausschalten, da sonst der Arikel bei Bestand 0 als ausverkauft angezeigt wird.
Damit öffne ich FTP,SFTP Verbindungen zu den Servern der Lieferanten.
Dann hole ich mir deren Lagerbestandslisten ab (XML, XLSX, CSV, TXT).
Dann lese ich diese Dateien aus und forme sie ggf um.
Dann lade ich die Datei direkt in die Datenbank (LOAD … INFILE)
Parallel baue ich eine Temporäre Tabelle mit allen IDs zu den wichtigsten Shopware-DB-Tabellen zum Synchronisieren (ean, articleID, articledetailsID, priceID, attrID, taxID) und lege index auf ean (damit geht es schneller und man muss keine Systemdatei manipulieren)
Dann matche ich alle Lieferanten mit diesen Infos aus der temporären Tabelle.
Zum Schluss lasse ich ein Script laufen, welches den höchsten Wert des Lagerbestandes aus allen Lieferanten ermittelt und pfeffer diesen in den Artikel.