Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Vérification du statut "sommeil" et "hors stock" à la validation d'un document

0000003166     -      13/06/2023

Mercator 10.10 ou ultérieur permet de vérifier à nouveau

  • si le document contient des articles en sommeil
  • si le document contient des articles qui ne sont plus en stock.

Cette vérification a lieu de lors de la validation. Cela permet de se rendre compte que des articles repris d’un ancien document sont passés depuis lors « en sommeil » ou ne sont plus disponibles. Cela permet aussi d’avoir un contrôle après un import depuis un terminal portable (ou PtFile).

Le paramétrage s'effectue dans les séquences, onglet « Evénements » :

Si des articles en sommeil ou indisponibles sont trouvés lors de ce contrôle, les lignes sont alors mises en surbrillance (sélectionnée comme via CTRL-B). Le contrôle peut être bloquant ou un simple avertissement. Par défaut, ces déroulants sont sur « Aucun contrôle ».


Il est possible d'appeler par code ces méthodes du BillingEngine qui effectuent ces contrôles :

  • bool? DormantItemsFound() : pour les articles en sommeil
  • bool? OutOfStockItemsFound() : pour les articles indisponibles

La valeur retournée est 

  • null si le contrôle n'a pu être effectué (erreur SQL),
  • True si des articles en sommeil / non disponibles sont trouvés. Dans ce cas, ces lignes ont la valeur sel à true,
  • False si aucun article en sommeil / non disponible n'est trouvé.

Les requêtes SQL qui sélectionnent les articles en sommeil / non disponibles peuvent être modifiées si nécessaire. Pour cela, il faut que le customizer de la séquence implémente l'interface IStringUpdaterWithContextInfo.

L'objet de contexte est le BillingEngine.

Les deux requêtes se reconnaissent grâce à ces id :

  • /*<ID>CHECK_DORMANT</ID>*/
  • /*<ID>CHECK_OUTOFSTOCK</ID>*/

Si on souhaite exclure certains articles de la vérification de stock, il faut ajouter cette colonne

alter table STOCK add S_NON_BLOCK_NONDISPO bit not null default 0

et y associer une case à cocher dans la fiche articles.

Si on souhaite exclure certains dépôts de la vérification de stock, il faut ajouter cette colonne

alter table MAGASINS add NON_BLOCK_NONDISPO bit not null default 0

et utiliser le paramétrage sans code des grilles de paramètres pour qu'une colonne supplémentaire avec une case à cocher apparaisse dans la liste des magasins.