Numéroter en continu

Le
John
Bonjour,

J'ai une table vierge, celle-ci reçoit des données importées d'une requête
ajout,

Champs: "DateValeur"
"Code"
"Qté"

Cette table est une table mémoire, parfois elle est vide parfois elle est
remplis, serait-il possible d'ajouter un compteur dans un champ par exemple
"Ordre" qui commencerait de 1 jusqu'à X, mais toujours commençant par 1, si
je met un numéro auto ça ne va pas car une fois les données supprimées le
chiffre redemarre au dernier + 1 une fois les données renvoyées.

Merci, en espérant avoir été explicite.
--
John.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilbert
Le #6790301
Bonjour,
Si tu vides la table, il suffit de compacter la base pour que le numéro auto
redémarre à 1

--
Cordialement,

Gilbert


"John"
Bonjour,

J'ai une table vierge, celle-ci reçoit des données importées d'une requête
ajout,

Champs: "DateValeur"
"Code"
"Qté"

Cette table est une table mémoire, parfois elle est vide parfois elle est
remplis, serait-il possible d'ajouter un compteur dans un champ par
exemple
"Ordre" qui commencerait de 1 jusqu'à X, mais toujours commençant par 1,
si
je met un numéro auto ça ne va pas car une fois les données supprimées le
chiffre redemarre au dernier + 1 une fois les données renvoyées.

Merci, en espérant avoir été explicite.
--
John.



John
Le #6790281
Merci Gilbert,

--
John.



Bonjour,
Si tu vides la table, il suffit de compacter la base pour que le numéro auto
redémarre à 1

--
Cordialement,

Gilbert


"John"
Bonjour,

J'ai une table vierge, celle-ci reçoit des données importées d'une requête
ajout,

Champs: "DateValeur"
"Code"
"Qté"

Cette table est une table mémoire, parfois elle est vide parfois elle est
remplis, serait-il possible d'ajouter un compteur dans un champ par
exemple
"Ordre" qui commencerait de 1 jusqu'à X, mais toujours commençant par 1,
si
je met un numéro auto ça ne va pas car une fois les données supprimées le
chiffre redemarre au dernier + 1 une fois les données renvoyées.

Merci, en espérant avoir été explicite.
--
John.








3stone
Le #6790261
Salut,

"John"
| J'ai une table vierge, celle-ci reçoit des données importées d'une requête
| ajout,
|
| Champs: "DateValeur"
| "Code"
| "Qté"
|
| Cette table est une table mémoire, parfois elle est vide parfois elle est
| remplis, serait-il possible d'ajouter un compteur dans un champ par exemple
| "Ordre" qui commencerait de 1 jusqu'à X, mais toujours commençant par 1, si
| je met un numéro auto ça ne va pas car une fois les données supprimées le
| chiffre redemarre au dernier + 1 une fois les données renvoyées.


Si tu ne souhaites pas compacter entre chaque coup...

Dans ta requête ajout, tu crées le champ calculé "Ordre"

Ordre: Nz(DMax("Ordre";"T_Memo");0)+1

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
John
Le #6790771
Merci pour ta réponse
@+
--
John.



Salut,

"John"
| J'ai une table vierge, celle-ci reçoit des données importées d'une requête
| ajout,
|
| Champs: "DateValeur"
| "Code"
| "Qté"
|
| Cette table est une table mémoire, parfois elle est vide parfois elle est
| remplis, serait-il possible d'ajouter un compteur dans un champ par exemple
| "Ordre" qui commencerait de 1 jusqu'à X, mais toujours commençant par 1, si
| je met un numéro auto ça ne va pas car une fois les données supprimées le
| chiffre redemarre au dernier + 1 une fois les données renvoyées.


Si tu ne souhaites pas compacter entre chaque coup...

Dans ta requête ajout, tu crées le champ calculé "Ordre"

Ordre: Nz(DMax("Ordre";"T_Memo");0)+1

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)




John
Le #6799531
Bonsoir 3stone,

Ta formule ne m'ajoute pas dans ma table des chiffres qui se suivre, mais
"1" partout sur le premier lancement de la requête ajout alors que je
souhaite voir 1 2 3 4 5 6 etc..

Rappelle de ta formule dans la requête ajout : Ordre:
Nz(DMax("Ordre";"Table1");0)+1

Pour moi "Table1" est la table qui reçoit les enregistrements de la requête
"ordre" est en NumAuto d'accord ?

Encore merci.

--
John.



Salut,

"John"
| J'ai une table vierge, celle-ci reçoit des données importées d'une requête
| ajout,
|
| Champs: "DateValeur"
| "Code"
| "Qté"
|
| Cette table est une table mémoire, parfois elle est vide parfois elle est
| remplis, serait-il possible d'ajouter un compteur dans un champ par exemple
| "Ordre" qui commencerait de 1 jusqu'à X, mais toujours commençant par 1, si
| je met un numéro auto ça ne va pas car une fois les données supprimées le
| chiffre redemarre au dernier + 1 une fois les données renvoyées.


Si tu ne souhaites pas compacter entre chaque coup...

Dans ta requête ajout, tu crées le champ calculé "Ordre"

Ordre: Nz(DMax("Ordre";"T_Memo");0)+1

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)




3stone
Le #6818071
Salut,

"John"
| Ta formule ne m'ajoute pas dans ma table des chiffres qui se suivre, mais
| "1" partout sur le premier lancement de la requête ajout alors que je
| souhaite voir 1 2 3 4 5 6 etc..
|
| Rappelle de ta formule dans la requête ajout : Ordre:
| Nz(DMax("Ordre";"Table1");0)+1


Oublie, cela ne fonctionne pas ;-(
Car contrairement à ce qu'elle devrait, la fontion n'est réellement
exécutée qu'une seule fois ! Pour raison "d'optimisation" :-(


| Pour moi "Table1" est la table qui reçoit les enregistrements de la requête
| "ordre" est en NumAuto d'accord ?

Non, il aurait dû être un simple numérique... mais le résultat est identique.


Pour réaliser quelque chose qui fonctionne, il faudrait passer par une table
temporaire, qui elle utilise un numéroauto - entre les remplissages et
vidages de cette table, le numéroauto grandirait continuellement.
Mais l'on s'en moque, puisque la table réelle serait construite sur base
de la table temporaire et la numérotation sur une méthode qui fonctionne:
http://www.3stone.be/access/articles.php?lng=fr&pg9
Solution 1 ou 2 et ou le "champ1" serait basé sur le numéroauto de la
table temporaire.

Tout cela parce que MS ne prévoit pas de autonumber dans une requête...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Gloops
Le #6829121
3stone a écrit, le 09/06/2008 14:24 :
Salut,

"John"
| Ta formule ne m'ajoute pas dans ma table des chiffres qui se suivre, mais
| "1" partout sur le premier lancement de la requête ajout alors q ue je
| souhaite voir 1 2 3 4 5 6 etc..
|
| Rappelle de ta formule dans la requête ajout : Ordre:
| Nz(DMax("Ordre";"Table1");0)+1


Oublie, cela ne fonctionne pas ;-(
Car contrairement à ce qu'elle devrait, la fontion n'est réel lement
exécutée qu'une seule fois ! Pour raison "d'optimisation" :- (




Bonjour,

Avec un jeu d'enregistrements, on peut imaginer que ça marcherait ?

(J'ai un peu oublié une partie du fil, attention bien sûr que l a table
qui contient le dernier numéro soit toujours présente au moment où on
veut le chercher.)

3stone
Le #6838801
Salut,

"Gloops"
Avec un jeu d'enregistrements, on peut imaginer que ça marcherait ?


Tu as regardé le lien que j'avais donné ?

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Gloops
Le #7013911
3stone a écrit, le 09/06/2008 22:28 :
Salut,

"Gloops"
Avec un jeu d'enregistrements, on peut imaginer que ça marcherait ?


Tu as regardé le lien que j'avais donné ?



Je dois avouer que je suis intervenu en mode "naïf", histoire de ne pas
laisser bêtement passer un truc en pensant que ça avait dé jà été dit.

Effectivement, ça fait pataud ...

Publicité
Poster une réponse
Anonyme