Freigeben über


Batchauftragsprobleme mit dem Feature "Preisänderungsnachverfolgung"

Dieser Artikel enthält eine Lösung für die häufig auftretenden Probleme mit Batchaufträgen zur Preisänderungsnachverfolgung in Microsoft Dynamics 365 Commerce.

Problembeschreibung

Das Microsoft Dynamics 365 Commerce-Feature zur Preisänderungsnachverfolgung löst Batchaufträge aus, die im Hintergrund ausgeführt werden. Hier sind häufige Probleme mit den Batchaufträgen:

  • Ein Batchauftrag zur Preisänderungsnachverfolgung dauert lange.
  • Zu viele Batchaufträge zur Preisänderungsnachverfolgung werden ausgelöst und warten in der Warteschlange.

Lösung

Führen Sie die folgenden Schritte aus, um die Probleme zu lösen:

Schritt 1: Beenden des Erstellens weiterer Batchaufträge

Führen Sie die folgenden Schritte aus, um das Erstellen weiterer Batchaufträge zu beenden:

  1. Wechseln Sie in der Geschäftszentrale zum Hauptsitz des Einzelhandels und der>Handelszentrale, um Parameter Commerce>gemeinsam genutzte Parameter>Preise und Rabatte einzurichten.>
  2. Entfernen Sie unter "Preisänderungsnachverfolgung" alle juristischen Personen aus dem Raster, und wählen Sie dann "Speichern" aus.
  3. Starten Sie den Application Object Server (AOS) neu.

Im Allgemeinen empfiehlt Microsoft, eine Batchgruppe für Batchaufträge zur Preisänderungsnachverfolgung anzugeben, bevor sie das Feature für die Preisänderungsnachverfolgung aktivieren. Diese Aktion beschränkt die Auswirkungen der Batchaufträge für die Preisänderungsnachverfolgung auf AOS-Instanzen, anstatt den Standardmäßigen Batchauftragspool zu blockieren.

Schritt 2: Beenden und Löschen vorhandener Batchaufträge

Führen Sie zum Beenden und Löschen vorhandener Batchaufträge das folgende SQL-Skript in der Datenbank des Commerce-Hauptsitzes aus.

-- find the existing executing jobs
select count(*) from BATCH where CAPTION like '%Price change%' and status = 2 --executing
select count(*) from BATCHJOB where CAPTION like '%Price change%' and status = 2 --executing

-- update the job status (DO NOT update to 0-Hold status; when the batch service restarts, they will be picked up again.) 
update BATCH set STATUS = 3 where CAPTION like '%Price change%' and STATUS = 2 --set to error
Update BATCHJOB set STATUS = 3 where CAPTION like '%Price change%' and STATUS = 2 --set to error

-- clear the jobs
delete from BATCH where CAPTION like '%Price change%' and status = 3 --error
delete from BATCHJOB where CAPTION like '%Price change%' and status = 3 --error