hallo
Das Problem hatten wir auch und habe es für uns gelöst.
Ich habe in der Übersicht Artikel nach einem Datenfeld gesucht, welches angezeigt werden kann, aber bei uns nicht genutzt wird. Bei uns ist es das Datenfeld SERIE. Zur Zeit steht das Datenfeld in der Tabelle dbo.tartikel und heißt dort cSerie und kann Daten bis zu 255 Zeichen als Text aufnehmen.
Alles, was zum Marktplatz gesendet wird, steht derzeitig in der Tabelle SCX.TOFFER
Mein erster Gedanke war einen Trigger auf die Tabelle zu setzen und mit der Funktion UPDATE() einzelne Spalten zu überwachen. Trigger lief, aber die WAWI nicht mehr. Trigger gelöscht, alles wieder OK.
Ich habe eine Batch geschrieben und rufe jetzt alle 15 Minuten diese Batchdatei auf. Ich lese aus der Tabelle SCX.TOFFER die Felder kShop und nIsListed wandle das zu einem Text um und schreibe das in die Tabelle dbo.tArtikel ins Datenfeld cSerie.
Mein Batch sieht so aus:
rem echo off
SET SQLCMD=" D:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn>SQLPS.EXE"
SET PATH="D:\Users\Administrator\Documents\SQL Server Management Studio\"
SET SERVER=".\JTLWAWI"
SET DB="eazybusines"
SET LOGIN="xxxxxxxxxxxx"
SET PASSWORD="xxxxxxxxxxxxxxxxxxx"
SET OUTPUT="C:\OutputLog.txt"
CD %PATH%
ECHO %date% %time% >> %OUTPUT%
for %%f in (*.sql) do (
%SQLCMD% -S %SERVER% -d %DB% -U %LOGIN% -P %PASSWORD% -i %%~f >> %OUTPUT%
)
Mein SQL-Script sieht so aus:
use eazybusiness
go
update a
set cSerie = cast(o.kShop*10 + o.nIsListed as nvarchar(3))
from dbo.tartikel a
inner join scx.toffer o on a.kArtikel = o.kArtikel
in der Tabelle dbo.tShop finde ich, welche Nummer meine Marktplätze haben. Bei uns ist Kaufland kShop = 12
also habe ich in cSerie die Werte 120 bzw 121 und kann jetzt die bedingte Formatierung anwenden, die ich gerne möchte.
Ich weiß, dass es eine völlig fremde Verwendung von Objekten ist, aber es funktioniert. Die anderen Status wie "in Prüfung", "Warte auf Rückmeldung" habe ich noch nicht gefunden.
Verbesserungsvorschläge und Kritik jederzeit. Ich hoffe, dass ich einigen Helfen konnte. Anbei ein screenshot.