Bonjour à tous, je vous souhaite une bonne année 2011.
Je veux savoir est ce que possible d'enregistrer des données sous la forme 001 002 séquentielle est automatiquement pour chaque enregistrement.
Merci
Bonjour à tous, je vous souhaite une bonne année 2011.
Je veux savoir est ce que possible d'enregistrer des données sous la forme 001 002 séquentielle est automatiquement pour chaque enregistrement.
Merci
désolé, mais vous ne donnez pas assez de détail pour que je comprenne votre question. Si vous détailliez vos besoins clairement et avec examples dès le début, cela permettrait de gagner du temps.
Bonjour Mr Yerbouti,
j'ai un champ NUM_COMMANDE de type varchar2 et un trigger pre-insert qui incrémente ce champ, lorsque j'enregistre ma première enregistrement il va afficher 1 or je veux qu'il m'affiche 001 et donc la 2ème enregistrement aura le numéro 002.
Voir la fonction TO_CHAR()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 To_Char(1, '000');
Mr Yerbouti, j'ai ce codeoù je dois mettre l'instruction to_char?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select nvl(max(to_number(NUM_COMMANDE)),0)+1 into :NUMERO from COMMANDE;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 To_Char(nvl(max(to_number(NUM_COMMANDE)),0)+1, '000')
Merci beaucouuuuuuuuuup ça marche pafaitement maiiiiiiiiiiis une erreur lors du lancement de l'état à partir de forms, le message est le suivant: REP-0788: Avertissement! Valeur du paramètre LOV restreint NUMERO_COMMANDE absente des valeurs sélectionnables.
mais ça marche si la valeur est 1 non 001. (le paramètre est un char contient ce code comme filtrage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Select num_commande, date_commande from commande order by num_commande;
c'est sur que si vous voulez transmettre un nombre formatté, vous ne pouvez plus utiliser un NUMBER mais un VARCHAR.
Merci Mr. Yerbouti c'est résolu, le problème c'est l'espace avant '000' de votre instruction. Merci de nouveau.
Bonjour,
J'ai essayé de reprendre la solution proposée mais ça ne marche plus en lançant un état à partir de forms. Le problème c'est que l'instruction proposée même j'ai éliminé l'esopace avant '000' l'enregistrement dans la base se fait de cette manière: " 001", l'espace avant 001 est le problème que je ne trouve pas de solution à l'éliminer.
Essayez avec le format mode :
Code : Sélectionner tout - Visualiser dans une fenêtre à part To_Char(1, 'fm000');
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Ltrim(To_char( ..., '000'))
Merci pour vos solutions, ça marche parfaitement.
Partager