Lorsqu'une erreur arrive depuis le B2B comme celle-ci dessous avec le message "L'état du stock de l'article XXXX ne permet de créer la ligne", cela signifie qu'une commande n'a pas été importée dans Sage car un article de celle-ci n'était pas disponible dans Sage lors de son import.
Il va donc falloir se connecter à la base B2B du client pour forcer son réimport.
Par ex, pour drinkeat, la base B2B s'appelle DrinkEAT_B2B et vous avez une table Order qui stocke les commandes passées sur le site
Elles sont ensuite intégrées dans Sage via une tâche planifiée et si l'import crée un BL et que l'article n'a pas assez de stock alors son import est bloquée
Il suffit alors d'afficher les commandes via la requête ci dessous pour retrouver celle qui est restée bloqué
select * from [order]
order by id desc
order by id desc
Et dans l'exemple si on regarde la colonne "ProcessMessage" on va retrouver la commande en erreur
Pour les autres commande cette colonne affichera le numéro du document créé dans Sage comme vous pouvez le voir sur la copie d'écran ci-dessous

Avant de forcer le réimport il va falloir modifier le contenu de la commande pour enlever l'article qui pose problème (celui qui apparait dans le message d'erreur).
Pour cela il suffit de copier/coller le contenu de la colonne OrderDetail dans Notepad++ par exemple, et formater l'affichage en JSON pour que ce soit facilement lisible via le menu "Module d'extension" "JSON Viewer" "Format JSON (car après le copier/coller vous aurez tout sur un même ligne)
PS : cette fonction est une extension à installer dans Notepad++ si vous ne l'avez pas
Il suffit alors d'aller chercher dans le fichier l'article qui pose problème simplement, dans notre exemple ce sera l'article SOFCANCANBUBGUM33
Il suffit alors de supprimer tout le bloc de cet article de { à },
Copier ensuite le contenu du JSON (Ctrl A puis Ctrl C)
Et donc pour forcer le réimport dans Sage de cette commande, il suffit de remettre à NULL les colonnes "ProcessDate" et "ProcessMessage" sur la commande en question ainsi que le nouveau contenu copié de la colonne OrderDetail
Vous pouvez le faire via la requête :
update [order]
set
set
OrderDetail = 'Contenu de votre fichier JSON corrigé'
ProcessDate=NULL,
ProcessMessage=NULL
where id =XXX --Remplacer XXX par l'id de la commande en erreur
where id =XXX --Remplacer XXX par l'id de la commande en erreur
La tâche planifiée réimportera cette commande lors de sa prochaine éxécution
Cet article a-t-il été utile ?
C'est super !
Merci pour votre commentaire
Désolé ! Nous n'avons pas pu vous être utile
Merci pour votre commentaire
Commentaires envoyés
Nous apprécions vos efforts et nous allons corriger l'article