Précédent   Forum des professionnels en informatique > Bases de données > DB2
DB2 Forum d'entraide technique sur la base de données DB2. Voir aussi -> Rubrique DB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/12/2007, 15h06   #1
Nouveau Membre du Club
 
Femme Françoise SPIECART
Responsable de service informatique
Inscription : décembre 2007
Messages : 39
Détails du profil
Informations personnelles :
Nom : Femme Françoise SPIECART

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Industrie

Informations forums :
Inscription : décembre 2007
Messages : 39
Points : 30
Points : 30
Par défaut Programmer le "like" du QUERY

Bonjour,
Quelqu'un saurait-il comment programmer le like du query en RGP3 (colonnage)
Merci
fspiecart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2007, 17h28   #2
Membre Expert
 
Inscription : novembre 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 1 298
Points : 1 355
Points : 1 355
Je ne suis pas sûr de bien comprendre la question. Tu veux parler du LIKE DEFN ?

Code :
1
2
     C           *LIKE     DEFN W$REC     WW$REC
     C                     Z-ADDW$REC     WW$REC
Ici, ça veut dire que je crée une nouvelle zone que j'appelel WW$REC dont la définition est identique à celle de W$REC, zone déjà définie qqpart ailleurs et pas forcément dans le programme.
Mercure est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 08h53   #3
Nouveau Membre du Club
 
Femme Françoise SPIECART
Responsable de service informatique
Inscription : décembre 2007
Messages : 39
Détails du profil
Informations personnelles :
Nom : Femme Françoise SPIECART

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Industrie

Informations forums :
Inscription : décembre 2007
Messages : 39
Points : 30
Points : 30
Non, je parle de ça :
Choix des enregistrements

Entrez les comparaisons, appuyez sur ENTREE. Entrez OR pour un nouveau groupe.
Tests : EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT...

AND/OR Zone Test Valeur (Zone, Nombre, 'Caractères', ou ...)
LBTAB LIKE '%xxx%'


Merci Mercure
fspiecart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 11h21   #4
Membre Expert
 
Inscription : novembre 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 1 298
Points : 1 355
Points : 1 355
Je suis peut-être lent à la détente mais je n'ai toujours pas compris ce que tu cherches à faire dans ton programme RPG III.

"programmer like du query en RGP3 (colonnage)", qu'est-ce que ça veut dire ?
Tu veux parler du LIKE de SQL ?
Mercure est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 11h41   #5
Nouveau Membre du Club
 
Femme Françoise SPIECART
Responsable de service informatique
Inscription : décembre 2007
Messages : 39
Détails du profil
Informations personnelles :
Nom : Femme Françoise SPIECART

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Industrie

Informations forums :
Inscription : décembre 2007
Messages : 39
Points : 30
Points : 30
Lorsque j'utilise QUERY j'ai la possibilité de rechercher à l'interieur de zones alpha une chain de caractères par exemple :

la zone libellé article peut être art1="vis" art2="demi vis" art3="quart de vis"
Si je recherche "vis" en programmation j'aurais que le 1er article dont le libellé commence par "vis" si je fais un query avec la fonction LIKE et que je mette LIKE '%vis%' j'aurais les 3 articles car ils contiennent la recherche "vis"
J'espère avoir été assez claire
Merci
fspiecart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 14h07   #6
Membre Expert
 
Avatar de Hédhili Jaïdane
 
Homme Hédhili Jaïdane
Consultant/Assistant/Formateur/Développeur Indépendant AS/400 Cobol
Inscription : juin 2007
Messages : 1 678
Détails du profil
Informations personnelles :
Nom : Homme Hédhili Jaïdane
Localisation : Tunisie

Informations professionnelles :
Activité : Consultant/Assistant/Formateur/Développeur Indépendant AS/400 Cobol

Informations forums :
Inscription : juin 2007
Messages : 1 678
Points : 2 182
Points : 2 182
Envoyer un message via Skype™ à Hédhili Jaïdane
Bonjour fspiecart.

Regarde si tu as la fonction SCAN, ou peut être CHEKR et CHECK, comme je ne connais pas très bien le RPG, je ne peux pas t'aider plus
__________________

Hédhili Jaïdane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 14h27   #7
Membre Expert
 
Inscription : novembre 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 1 298
Points : 1 355
Points : 1 355
Oui, c'est plus clair.

Au moins deux soluces:

1/ Tu peux intégrer du langage SQL dans ton RPG III et utiliser directement LIKE dans l'instruction DECLARE CURSOR :
Code :
1
2
3
4
5
C/EXEC SQL 
C+ Declare CSR cursor FOR
C+ SELECT * FROM MaTable
C+ WHERE UPPER(LIBART) LIKE '%VIS%'
C/END-EXEC
Tu peux facilement rendre cette instruction dynamique, c'est à dire que tu peux changer la valeur recherchée ("VIS" ici) sans avoir à la coder en dur dans le programme. Ensuite, il faut ouvrir le curseur, intégrer un FETCH dans une boucle DO pour récupérer les data puis fermer le curseur.

2/ ou bien faire un READE sur ta clé dans une boucleDO et scanner la zone LIBART en recherchant la valeur voulue à chaque lecture.
Mercure est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h02.


 
 
 
 
Partenaires

Hébergement Web