Bonjour,

J'ai une table avec un champ INTEGER je souhaite stocker dedans un numéro unique selon le type d'un autre champ.

J'ai pour cela créé le TRIGGER
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
BEGIN
  IF (NEW.ID_INVOICE IS NULL) THEN
  BEGIN
    /* IF ESTIMATE TAKE ID FROM ESTIMATE GENERATOR */
    IF ((NEW.INVOICE_TYPE = 1) OR (NEW.INVOICE_TYPE > 100)) THEN
      NEW.ID_INVOICE = GEN_ID(MY_ESTIMATE_ID_INVOICE_GEN, 1);
    ELSE
      NEW.ID_INVOICE = GEN_ID(MY_INVOICE_ID_INVOICE_GEN, 1);      
  END
END
Afin d'avoir un numéro unique créé par deux générateurs selon si c'est une facture ou un devis.

Mais en application je me heurte à une contrainte qui m'empêche d'avoir des numéros en doublons.

J'ai un champ id en clé primaire, et je souhaiterais appliquer cette méthode sur mon champ id_invoice.

Est-ce que cela vous semble possible, si oui pouvez-vous m'orienter dans la bonne direction.

Merci d'avance.