|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : avril 2004 Messages : 7 ![]() |
Bonjour, voici mon problème :
J'ai un champ qui est succession de plusieurs valeurs. Exemple : BLA BLA HORS DELEGATION BLI BLI HORS DELEGATION BLO BLO HORS DELEG BLU BLU HORS DELEGATION Je sais que je vais devoir créer un variable par champs. Mon but, c'est récuperer dans un champ le BLA BLA et un autre BLI BLI etc.. Pour BLA BLA, pas de probleme: = SousChaîne(<Mon objet> ,1 ,Pos(<mon objet> ,"HORS DELEGATION")-1) Mais les autres j'arrive pas.... Merci pour votre aide. |
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : novembre 2006 Messages : 84 ![]() |
est ce que vos champs sont de longueur constante ?
est ce que votre séparateur est 'HORS DELEGATION' ou il y a un aute séparateur ? |
|
|
00
|
|
|
#3 |
|
Membre émérite
![]() Inscription : septembre 2006 Messages : 815 ![]() |
Je pense que le mieux est de faire ça à l'alimentation de la base de donéne de ton infocentre !!
... il y a des fonction oracle ou autre très bien pour récupérer le sposition des occurences de chaine, ce qui peuit aider pour une extraction |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : avril 2004 Messages : 7 ![]() |
Merci de ta réponse.
Effectivement ce qui precedent "HORS DELEGATION" n'est de pas longeur constante. XXXXX HORS DELEGATION X HORS DELEGATION XXX HORS DELEGATION etc... Sinon c'est impossible de le faire en amont,c'est un fichier texte en entrée. |
|
|
00
|
|
|
#5 |
|
Membre émérite
![]() Inscription : septembre 2006 Messages : 815 ![]() |
en gros il faudrait le traiter avec une macro excel en amont afin de mettre dans une colonne les valeurs souhaitées...
|
|
|
00
|
|
|
#6 |
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 182 ![]() |
Y at il un nombre fini de champs (BLA BLA,BLI BLI,BLO BLO,BLU BLU) ?
et termine t on par BLUBLUBLU ou par HORS DELEGATION ? |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : avril 2004 Messages : 7 ![]() |
Tu peux avoir des lignes où dans ce champ il n'y aura pas de "XXX HORS DELEGATIONXXX'.
Ca peut aller de 0 à 5 HORS DELEGATIONS. merci de votre aide. |
|
|
00
|
|
|
#8 |
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 182 ![]() |
Pourrais tu nous montrer quelques cas de figure REELS ?
Ca aiderait à y voir clair je pensais que ton hors delegations représentait le séparateur constant et tu me dis qu'il peut ne pas y en avoir ... |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : avril 2004 Messages : 7 ![]() |
OK OK soyons plus clair.
Par exemple: id|nom|prenom|note 1|paul|eric|remarque1 2|jean|edouard|remarque1 remarque2 HORS DELEGATION remarque3 HORS DELEGATION 3|steeve|renard|remarque1 HORS DELEGATION remarque 4 4|chris|marc|remarque3 HORS DELEGATION remarque 4 HORS DELEGATION remarque5 HORS DELEGATION remarque6 HORS DELEGATION remarque6 HORS DELEGATION En sortie je voudrais dans mon rapport: id|nom|prenom|note1|note2|note3|note4|note5|note6 1|paul|eric|remarque1|null|null|null|null|null 2|jean|edouard|remarque1|remarque2|remarque3|null|null|null 3|steeve|renard|remarque1|remarque4|null|null|null|null 4|chris|marc|remarque3|remarque 4|remarque5|remarque6|remarque7 Pour l'id=4, note1=remarque3 car c'est la premiere occurence de HORS DELEGATION. note1=premiere occurence de HORS DELEGATION ou pas note2=seconde occurence de HORS DELEGATION ou pas etc... est-ce plus clair? |
|
|
00
|
|
|
#10 | ||||
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 182 ![]() |
La solution n'est pas simple car il n'y a pas de fonction équivalente à
INSTR (char1,char2 [,n[,m]]) dans Oracle où notamment n permet de préciser la position de début de la recherche m précise quelle occurence de la chaîne recherchée donne sa position Nous n'avons d'approchant que Pos(dans quoi ?, quoi?)= numéric en imbriquand souschaîne() et longueur() et pos() et pour éviter une formule illisible parceque très longue, j'ai choisi de créer des variables Code :
Code :
|
||||
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : avril 2004 Messages : 7 ![]() |
Waip super!
|
|
|
00
|
|
|
#12 | ||
![]() ![]() Bruno ROMAN-RUIZ Inscription : décembre 2006 Messages : 2 182 ![]() |
Content que tu sois content ...
Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com