Après windows pour les nuls, voici PB pour les bons (ou presque).

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 26-07-2007 15:03:37

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

[RESOLU] Datawindows avec retrieval arguments de type Array

Bonjour,
Je cherche à faire un DW qui aurait en critères un retrieval argument de type number array, mais cela ne fonctionne pas.
Je m'explique :
Je sélectionne dans un 1er DW de type Grid, plusieurs lignes que j'aimerais passé en paramètre dans le retrieve d'un 2ème DW.

Code: pb

//je récupère l'ensemble des lignes sélectionnées
liste_dom[] = ldw.object.id_edit_dom.selected

//je le passe en paramètre
dw_2.retrieve(liste_dom[])

Mon dw_2 étant code : 
 SELECT toto.cd_toto,   
         toto.lb_toto  ,
toto.id_toto
    FROM toto,   
         titi,   
         tata  
   WHERE ( toto.id_titi = titi.id_titi ) and  
         ( tata.id_tata = titi.id_tata ) and  
         (( titi.id_tata = :ai_id_tata  and :ai_id_tata !=0
 ) or :ai_id_tata= 0  )    


avec :ai_id_tata défini donc en number array ?


Avez vous une idée ?
Merci.



Dernière modification par MarroW (27-07-2007 08:45:02)

Hors ligne

 

#2 26-07-2007 15:19:44

shahin  
Modérateur
Award: bf
Lieu: val de marne
Date d'inscription: 26-09-2006
Messages: 938
Pépites: 8,675,050,269
Banque: 16,218,225,127,617

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

MarroW a écrit:

...mais cela ne fonctionne pas.

Quel est le message d'erreurs ?


never let people work on more than one thing at once.

Hors ligne

 

#3 26-07-2007 15:22:20

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

"Select Error: Incorrect Syntax near ','."

Hors ligne

 

#4 26-07-2007 15:24:15

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

Je rajoute que quand je fais le retrieve en "design" de DW et que je renseigne par exemple 1,12 en argument, il ne me ramène rien ou toute la table, mais ne dit rien. Et si je lui passe une seule valeur, il me ramène le bon résultat de cette valeur

Hors ligne

 

#5 26-07-2007 15:43:21

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

quelle est la base de données ?

Pour la tableau ça serait plutot un IN :

Code: pb

 titi.id_tata in ( :ai_id_tata )

N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#6 26-07-2007 15:46:43

JCZ  
Builder Power
Award: bf
Lieu: 75019 paris
Date d'inscription: 21-05-2007
Messages: 1724
Pépites: 496,453,703,213
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

c'est un probleme sql
--> il ne comprend pas les tableaux de cette maniere

Code: sql

 SELECT toto.cd_toto,   
         toto.lb_toto  ,
toto.id_toto
    FROM toto,   
         titi,   
         tata  
   WHERE ( toto.id_titi = titi.id_titi ) and  
         ( tata.id_tata = titi.id_tata ) and  
         (( titi.id_tata = :ai_id_tat[1]a  and :ai_id_tata[1] !=0
 ) or :ai_id_tata[1]= 0  )

c'est bon


Face à l'agression, la puissance de l'intelligence

Hors ligne

 

#7 26-07-2007 15:47:09

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

Merci eRaSorZ,

Base de donnée sybase ASE .
J'ai essayé de mettre le In qui semble en effet plus logique, mais dans ce cas il ne supporte plus la syntaxe et me dit qu'il y a un problème près du 0 5j'ai essayé des "in" partout ....

Hors ligne

 

#8 26-07-2007 15:51:41

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

JCZ a écrit:

c'est un probleme sql
--> il ne comprend pas les tableaux de cette maniere

Code: sql

 SELECT toto.cd_toto,   
         toto.lb_toto  ,
toto.id_toto
    FROM toto,   
         titi,   
         tata  
   WHERE ( toto.id_titi = titi.id_titi ) and  
         ( tata.id_tata = titi.id_tata ) and  
         (( titi.id_tata = :ai_id_tata[1]  and :ai_id_tata[1] !=0
 ) or :ai_id_tata[1]= 0  )

c'est bon

Désolé, il me dit "Incorrect syntax near '[', Do You want to correct errors ?", en essayant de sortir du DW

Hors ligne

 

#9 26-07-2007 16:09:23

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

MarroW a écrit:

Code: sql

 SELECT toto.cd_toto,   
         toto.lb_toto  ,
toto.id_toto
    FROM toto,   
         titi,   
         tata  
   WHERE ( toto.id_titi = titi.id_titi ) and  
         ( tata.id_tata = titi.id_tata ) and  
         ( titi.id_tata in (:ai_id_tata))

En mettant uniquement ça ça fonctionne, mais je perd la possibilité de tout récupérer si aucune valeur n'est passé !

Hors ligne

 

#10 26-07-2007 16:47:28

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

MarroW a écrit:

En mettant uniquement ça ça fonctionne, mais je perd la possibilité de tout récupérer si aucune valeur n'est passé !

à ce moment-là, avant le retrieve tu calcules le nb d'éléments du tableau et tu le passes en paramètre :

Code: pb

Long ll_count

ll_count = UpperBound( liste_dom )

dw_2.retrieve( liste_dom, ll_count )


et dans la requête :

Code: pb

 SELECT toto.cd_toto,   
         toto.lb_toto  ,
toto.id_toto
    FROM toto,   
         titi,   
         tata  
   WHERE ( toto.id_titi = titi.id_titi ) and  
         ( tata.id_tata = titi.id_tata ) and  
         ( titi.id_tata in (:ai_id_tata) or :al_count = 0 )

N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#11 27-07-2007 08:02:44

MarroW  
Membre
Date d'inscription: 26-07-2007
Messages: 7
Pépites: 3,528
Banque: 0

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

Super Merci , bonne idée,

sauf que ce n'est pas UpperCase, mais UpperBound
Merci à tous.

Hors ligne

 

#12 27-07-2007 08:04:32

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Datawindows avec retrieval arguments de type Array

MarroW a écrit:

sauf que ce n'est pas UpperCase, mais UpperBound

oops, en effet
(je corrige)


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22