|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Bonjour :
Voici la table souhaitée : Auteur - Titre - Type - Langue - Période - Code - Numero * A1 * zzzy * n * n * n * ZZZ * 1 * * A1 * zzzy * n * n * n * ZZZ * 1 * * A1 * zzzy * n * n * n * ZZZ * 1 * * A2 * zzzy * n * n * n * ZZZ * 2 * * A3 * zzzy * n * n * n * ZZZ * 3 * * A1 * zzzz * n * n * n * ZZZ * 4 * * A1 * zzzx * n * n * n * ZZZ * 5 * * A2 * zzzx * n * n * n * ZZZ * 6 * * A1 * zzzy * n * n * n * ZZZ * 1 * Pourtant j'échoue dans ma démarche, utilisant le code suivant : Code :
Auteur - Titre - Type - Langue - Période - Code - Numero * A1 * zzzy * n * n * n * ZZZ * 2 * * A1 * zzzy * n * n * n * ZZZ * 2 * * A1 * zzzy * n * n * n * ZZZ * 2 * * A2 * zzzy * n * n * n * ZZZ * 3 * * A3 * zzzy * n * n * n * ZZZ * 4 * * A1 * zzzz * n * n * n * ZZZ * 4 * * A1 * zzzx * n * n * n * ZZZ * 3 * * A2 * zzzx * n * n * n * ZZZ * 7 * * A1 * zzzy * n * n * n * ZZZ * 2 * Que faire afin d'obtenir les valeurs souhaitées dans la colonne Numero ? Merci beaucoup ! |
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 395 ![]() |
bonsoir,
avec ton code et le résultat obtenu, j'ai bien compris ce que tu ne souhaitais pas Par contre je n'ai pas compris la logique de numérotation et donc ce que tu souhaites vraiment. Quelques lignes pour décrire le contexte et avec un exemple un peu plus explicite peut-être ? (les n,n n, zzz bla bla ne facilitent pas la compréhension non plus) |
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Bonsoir f-leb,
Faisons simple, tu as raison. Chaque ligne représente un livre. Les ZZZ sont un exemple (voulu) ; j'aurais pu présenter les auteurs zzzx-y-z de la façon suivante : Delarue, Delors et Deluet. On aurait alors le code DEL recouvrant des auteurs pourtant différents. Le fonds de ma démarche repose sur le regroupement de livres-lignes sous un même Numéro, et s'incrémentant au sein d'une même combinaison Type-Langue-Période-Code. Enfin, les "n" correspondent à des valeurs (variables selon une liste déroulante propre à chaque champ) et faisant de sorte que la combinaison T-L-P-C reste la même afin de rapporter un cas de similarité sur les neuf lignes d'exemple. Histoire de bien saisir le bovidé par les cornes... ![]() Dois-je expliciter davantage ? Merci en tout cas ! |
|
|
00
|
|
|
#4 | ||||||||
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
Bonjour,
Quelle est la combinaison qu'il faut numéroter ? Est-ce Auteur + Livre ? alors pourquoi pas * A1 * zzzy * n * n * n * ZZZ * 2 * ..... * A1 * zzzx * n * n * n * ZZZ * 1 * <---- la plus petite au lieu de : * A1 * zzzy * n * n * n * ZZZ * 1 * ..... * A1 * zzzx * n * n * n * ZZZ * 5 * Si c'est le cas, une solution à améliorer par un virtuose du sql : requête001 : les combinaisons Code sql :
requête002 : les combinaisons numérotées Code sql :
requête003 : les données d'origine et la combinaison Code sql :
requête004 : peut-être la solution, si toutefois j'ai compris la question Code sql :
|
||||||||
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Bonjour Claude,
Merci pour ces propositions ! ![]() Ce que je souhaite numéroter, c'est effectivement la relation Auteur+Titre et ceci, dans la limite de la combinaison Type-Langue-Periode-Code. Ce qui manque peut-être dans l'exemple (trop précis ?) précédent : Auteur-Titre : Type-Langue-Periode-Code Auteur1 - Livre1 : a-b-b-ZZZ-1 (1° exemplaire) Auteur1 - Livre1 : a-b-b-ZZZ-1 (2° exemplaire) Auteur2 - Livre1 : a-b-b-ZZZ-2 Auteur1 - Livre2 : a-b-b-ZZZ-3 Auteur1 - Livre3 : d-j-b-ZZZ-1 Auteur3 - Livre1 : g-h-x-PPO-1 Auteur4 - Livre1 : g-h-m-TRU-1 Auteur2 - Livre2 : g-h-x-ZZZ-1 Peut-être oublie-je encore des cas... (?) Je vais bien sûr essayer avec ces codes. Et la piste d'un ROW_NUMBER() OVER(PARTITION... serait-elle bonne à suivre ? |
|
|
00
|
|
|
#6 | |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
Mon code donnerait ceci.
Est-ce cela que tu cherches ? Auteur Titre Type Langue Période Code Sequence Auteur1 Livre1 a b b ZZZ-1 1 Auteur1 Livre1 a b b ZZZ-1 1 Auteur2 Livre1 a b b ZZZ-2 4 Auteur1 Livre2 a b b ZZZ-3 2 Auteur1 Livre3 d j b ZZZ-1 3 Auteur3 Livre1 g h x PPO-1 6 Auteur4 Livre1 g h m TRU-1 7 Auteur2 Livre2 g b x ZZZ-1 5 Citation:
|
|
|
|
00
|
|
|
#7 | |
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Afin de mieux te répondre, je dirai que le nombre (hors parenthèses) que je donne dans l'exemple présent, est le type de valeur que je souhaite.
Citation:
L'ayant pour ma part ôter, cela donne exactement le même résultat que toi. Nous conviendrons alors que cela ne correspond pas avec les souhaits. Peut-être (probablement?) doit-on inclure le facteur chronologique ?
|
|
|
|
00
|
|
|
#8 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
désolé, je passe la main.
Bonne chance ! |
|
|
00
|
|
|
#9 | |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 161 ![]() |
Bonjour brankorri, ClaudeLELOUP et f-leb,
Si j'ai bien compris, tu veux que tous les couples "Auteur-Livre" identiques aient le même numéro. Ta phrase : Citation:
Donc, une première requête R1 te donnerait les groupes "Auteur-Livre" différents (1 ligne par couple) : Code sql :
SELECT auteur, livre FROM TaTable GROUP BY auteur, livre Ensuite, créer une "requête mise à jour" R2 qui accède à la table T1, liée à TaTable et qui remplit ton champ Numero de TaTable avec la valeur du champ "Num" de la table T1.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
|
10
|
|
|
#10 |
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Merci tout-de-même à Claude
Pour Richard : "Type-Langue-Periode-Code" se présente sous la forme d'une combinaison de choix disponibles dans un formulaire. "Numero", lequel intervient directement après cette combinaison, est un incrément qui se développe dans la limite d'une même combinaison. Par exemple : Musset - La vie : a-b-b-MUS => 1 Musigny - La nature : a-b-b-MUS => 2 En allant plus loin : Musset - Gloria : a-b-b-MUS => 3 Mustel - Vereinigung : a-d-b-MUS => 1 Musard - En clair : a-b-c-MUS => 1 Musso - Le froid : a-b-b-MUS => 4 Marat - Ma baignoire : a-b-b-MUR => 1 Il y a, finalement, une donnée chronologique à intégrer (je dispose déjà d'un tel champ). Je vais essayer les codes tels que tu les présentes. Merci par avance. Si je peux-dois encore éclaircir, n'hésite pas : ma patience est sans fin !
|
|
|
00
|
|
|
#11 | |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 161 ![]() |
Je t'ai dit :
Citation:
Par ton exemple, tu montres que ce que j'ai compris est faux. Bien. Il me semble comprendre, maintenant, que tu souhaites, après une saisie de Type-Langue-Periode-Code :
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
|
10
|
|
|
#12 | ||
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Pour le couple "Auteur-Livre" (ou Titre), je pense pouvoir te répondre que oui.
![]() A mon sens, ce couple se trouve recouvert sous le quatuor "Type-Langue-Periode-Code". Car voici la façon dont je dois travailler avec mon équipe : * La base de données existe déjà avec tous les champs d'Auteur et Titre renseignés pour chaque ouvrage. * Le formulaire créé permet de renseigner les champs du quatuor "Type-Langue-Periode-Code". * Et lorsqu'il existe plusieurs exemplaires pour un même livre, soit pour un couple "Auteur-Titre", le quatuor est le même. Et j'ai déjà réussi à développer un incrément valable strictement pour un même couple à deux ou plusieurs entrées (ou lignes-clef primaire), agissant de façon chronologique (à la saisie validée du formulaire). Ce que je cherche à établir est donc un incrément propre au quatuor, et étant capable d'attribuer la même valeur à deux entrées mentionnant le même couple "Auteur-Titre". En synthèse de quoi : Citation:
Citation:
... laquelle valeur de "Numero" de chaque nouvel enregistrement devant se référer à la dernière valeur apparue pour le même quatuor. Nous accordons-nous ? |
||
|
|
00
|
|
|
#13 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
Ah, toi, tu ne dis pas tout le même jour !
Eh ben alors, c'est tout simple ! mais par le code. Vas-y Richard. Ca va venir ! |
|
|
00
|
|
|
#14 | |||
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 161 ![]() |
Il y a incohérence entre :
Citation:
Citation:
Je pense que c'est le quadruplé "Type-Langue-Periode-Code" qui fait foi. En effet, dans ton exemple : Citation:
Bien. Je ne connais pas VBA, mais l'esprit pourrait être le suivant : Après saisie du quadruplé, la requête Code sql :
SELECT top 1 Numero FROM TaTable WHERE (Type,Langue,Periode,Code)=valeurs saisies dans le formulaire
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|||
|
|
10
|
|
|
#15 |
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Bonsoir-Bonjour Richard,
En soi : l'ouvrage se reconnaît par l'auteur et le titre. Mais ceci reste partiel dans le cadre de notre travail, puisque ce qui importe est de pouvoir ranger et classer les ouvrages par le quatuor, le Numero (éventuellement les Exemplaires). Nous pensons qu'un même numéro apparaît pour chaque couple "Auteur-Livre", puisque chaque ouvrage recevant une cote-quatuor à partir de son contenu, des exemplaires différents retiennent logiquement d'une même combinaison : quatuor+Numero. Mais dans l'optique de l'établissement d'un incrément ou d'une valeur maximale, je pense aussi que le quatuor est primordial. De plus, je considère que la chronologie (Date-Heure) importera dans la fonction puisque nous avons à travailler aussi bien dans la correction-création d'une cote pour un ouvrage, que dans la création complète (Auteur,Titre, cote Quatuor+Numero+Exemplaires) de l'ouvrage. Mieux à propos des codes : Je ne me suis pas senti capable de reprendre en VBA, c'est pourquoi ai-je abordé par le langage SQL. Aussi ai-je des difficultés à comprendre la suite du "WHERE", dans la façon de la construire. Mais je crois qu'une telle piste est très intéressante... sans quoi ne viendrais-je pas d'y consacrer ma soirée et une partie de ma nuit. |
|
|
00
|
|
|
#16 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
Je peux aider pour le VBA
Y a-t-il un inconvénient à enregistrer le N° attribué dans la table d’origine ? Ou bien une raison oblige-t-elle de recommencer tout chaque fois ? |
|
|
00
|
|
|
#17 |
|
Futur Membre du Club
![]() Inscription : novembre 2010 Messages : 101 ![]() |
Bonjour,
Non, ce n'est bien sûr pas gênant, bien au contraire. |
|
|
00
|
|
|
#18 |
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
Bonjour,
Peux-tu, pour faciliter un peu le travail, poster une DB réduite compatible Access2000 avec un extrait de la table. |
|
|
00
|
|
|
#19 | ||||||||
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 161 ![]() |
Bonjour Claude et brankorri,
Merci, Claude, pour l'aide VBA. Mais il est primordial de savoir dans quel cas le numéro de séquence doit changer, ce qui n'est toujours pas clair (pour moi, en tout cas), à la lecture de ton dernier message, brankorri. Brankori, tu dis : Citation:
Citation:
Reprenons ton exemple : Code :
Code :
Code :
Confirmes-tu ces deux suppositions ? Merci de répondre par oui ou par non, STP.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
||||||||
|
|
10
|
|
|
#20 | ||
![]() ![]() ![]() Claude LELOUPChercheur de loisirs (ayant trouvé !) Inscription : novembre 2006 Messages : 5 234 ![]() |
Pour brankorri :
Citation:
Marat - Ma baignoire : a-b-b-MAR pour Richard_35 : Bonjour, Citation:
tata -yoyo par respect pour l'une de mes illustres compatriotes |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com