Menu

Requête : Générer plusieurs enregistrements selon la valeur d'un champ.

Messages postés
395
Date d'inscription
mercredi 26 mars 2014
Dernière intervention
7 mars 2019
- - Dernière réponse : PlacageGranby
Messages postés
395
Date d'inscription
mercredi 26 mars 2014
Dernière intervention
7 mars 2019
- 7 mars 2019 à 14:53
Bonjour,

Nous avons une BD qui liste les commandes des clients, et pour chaque enregistrement, il y a le nombre de boite reçue.

Nous avons un état qui permet l'impression d'étiquette pour chaque commande, mais nous devons imprimer plusieurs fois la même page s'il y a plusieurs boites.

Si par exemple, nous avons les enregistrements suivant :
commande A125 qui contient 3 boites
commande B126 qui contient 2 boites

Nous aimerions avoir une requête qui retourne
CMD Boite
A125 1
A125 2
A125 3
B126 1
B125 2

Avec cette requête, nous allons pouvoir générer une page par boite au lieu d'une page par commande et devoir modifier à chaque fois la quantité à imprimer..

Donc, comment peut-on avoir un enregistrement "dupliqué" selon la valeur d'un champ.

Merci
Afficher la suite 

Votre réponse

3 réponses

Messages postés
24741
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
26 mars 2019
9019
0
Merci
Bonjour,

Plutôt qu'en sql, il faudrait le faire dans un langage procédural (du plsql par exemple avec Oracle). Je ne sais pas ce qui existe avec Access.

En sql pur (façon de parler) on pourrait imaginer un artifice :

select cmd, 1 from table where boite =1
union
select cmd, 2 from table where boite >1
union
select cmd, 3 from table where boite >2
...
union
select cmd, 20 from table where boite >19

Commenter la réponse de jee pee
0
Merci
Bonjour
Peux tu mettre ta base compressée dans un lien avec ci joint dans uns message de comment ça marche. Cela aidera à mieux comprendre ton problème.
Commenter la réponse de castours
Messages postés
395
Date d'inscription
mercredi 26 mars 2014
Dernière intervention
7 mars 2019
14
0
Merci
Re-Bonjour,

J'aide une collègue, je n'ai pas accès direct aux données.

Les 2 options que j'entrevois pour elle:
- à l'entrée des commandes, boucler selon le nombre de boite et créer dans une table bidon des enregistrements selon le nombre de boite, ces enregistrements vont être inutiles jusqu'à temps qu'on termine la commande et imprime les étiquettes.
- Ou faire la même chose au moment de l'impression des étiquettes pour immédiatement les supprimer après.

Je me demandais si un peu comme Jee Pee le suggère, il était possible de le faire au niveau de la requête. Changer de BD n'est évidemment pas une option.

Pour résumer, en ce moment, on génère un état, basé sur une requête qui fait une page par commande;
il faudrait plutôt faire, pour chaque commande, une page par boite.
Mais les boites n'ont pas d'enregistrement distinct, c'est seulement une valeur dans un champ.

Merci
Commenter la réponse de PlacageGranby