Partager via


Problèmes de travail Batch avec la fonctionnalité de suivi des modifications de prix

Cet article fournit une résolution des problèmes courants liés aux travaux de traitement par lots de suivi des modifications de prix dans Microsoft Dynamics 365 Commerce.

Symptômes

La fonctionnalité de suivi des modifications de prix microsoft Dynamics 365 Commerce déclenche des travaux de traitement par lots qui s’exécutent en arrière-plan. Voici les problèmes courants liés aux travaux de traitement par lots :

  • Un travail de traitement par lots de suivi des modifications de prix prend beaucoup de temps.
  • Un trop grand nombre de travaux de traitement par lots de suivi des modifications de prix sont déclenchés et attendent dans la file d’attente.

Résolution

Pour résoudre les problèmes, procédez comme suit :

Étape 1 : Arrêter la création d’autres travaux par lots

Pour arrêter la création d’autres travaux par lots, procédez comme suit :

  1. Dans le siège commercial, accédez au siège commercial et>au siège commercial configure>parameters>Commerce partagé paramètres>Prix et remises.
  2. Sous Suivi des modifications de prix, supprimez toutes les entités juridiques de la grille, puis sélectionnez Enregistrer.
  3. Redémarrez le serveur d’objets d’application (AOS).

En général, Microsoft vous recommande de spécifier un groupe de lots pour les travaux de traitement des modifications de prix avant d’activer la fonctionnalité de suivi des modifications de prix. Cette action limite l’impact des travaux par lots de suivi des modifications de prix sur les instances AOS, au lieu de bloquer le pool de travaux par lots par défaut.

Étape 2 : Arrêter et effacer les travaux de traitement par lots existants

Pour arrêter et effacer les travaux de traitement par lots existants, exécutez le script SQL suivant dans la base de données du siège commercial.

-- 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