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

Assurer l'unicité des valeurs d'une colonne uniquement pour les valeurs non vides

0000002712     -      29/06/2017

L'exemple de paramétrage décrit ici montre comment assurer l'unicité des valeurs pour la colonne S_CLE3 de la table STOCK. Cette unicité doit être vérifiée uniquement pour les articles qui ont une valeur non vide dans cette colonne. En d'autres termes, parmi les articles, S_CLE3 doit être vide ou unique.

En standard, Mercator offre déjà cette option : 

DEDOUB_SC3 (PARAMS)
Dédoublonnement du fichier "Articles" sur base de la clé n°3.
Si, lors de la création d'un nouvel article, un article de même clé n°3 existe déjà, un avertissement sera affiché.
Signalétiques / Dédoublonnement stock clé 3

mais cette option mise à "Oui" n'est pas bloquante. De plus, elle n'est pas prise en compte dans toutes les fonctionnalités de Mercator (par exemple : import Excel) ou par d'éventuelles applications externes.

Pour assurer strictement cette condition, il suffit d'ajouter cet index unique et filtré sur la table STOCK :

CREATE UNIQUE NONCLUSTERED INDEX S_CLE3_UNIQUE_OR_EMPTY_IN_STOCK ON dbo.STOCK(S_CLE3) where s_cle3<>''