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

En SQL, ajouter une contrainte d'unicité sur journal + numéro dans les ventes de la gestion commerciale

0000001793     -      26/09/2018

Par défaut, dans la gestion commerciale, il n'y a pas de contrainte d'unicité sur JOURNAL + PIECE dans la table PIEDS_V. Ceci se justifie par le fait que certains utilisateurs réinitialisent la numérotation des factures à 1 chaque année.

Si on souhaite ajouter cette contrainte, il suffit d'exécuter ce script via l'onglet SQL de l'éditeur de code :

ALTER TABLE [dbo].[PIEDS_V] ADD CONSTRAINT PIEDS_V_JOURNAL_PIECE_UNIQUE UNIQUE ( journal, piece ) ON [PRIMARY]

Attention : si, par la suite, on souhaite ajouter des champs dans la table PIEDS_V, il faudra au préalable retirer cette contrainte via cette commande :

ALTER TABLE [dbo].[PIEDS_V] DROP CONSTRAINT PIEDS_V_JOURNAL_PIECE_UNIQUE

et, après la modification de structure, la réinstaller en exécutant à nouveau la première commande.

Si la structure de la table pieds_v est modifiée alors que la contrainte est présente, le message d'erreur suivant sera produit : Creation index "PIEDS_V" : "Erreur de connectivité : Echec de l'opération car un index ou des statistiques portant le nom 'IDENT' existent déjà sur la table "dbo.PIEDS_V'. create index on IDENT ON dbo.PIEDS_V(ID,JOURNAL,PIECE)