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 10-09-2007 12:23:26

Melke  
L'Enigmatique Troll Taciturne
Lieu: Paris
Date d'inscription: 30-05-2007
Messages: 385
Pépites: 9,994
Banque: 9,223,372,036,854,776,000

Prendre un ligne lors d'un Sharedata

Bonjours,

J'ai une première datawindow avec plusieurs ligne.
J'en ai une deuxième dont je veux qu'il n'est qu'une seul ligne.

Est il possible de faire un share data entre ces deux datawindow, mais que seul une ligne de la datawindow principale sera chargé dans la seconde datawindow ?

PB 10.2.1

merci d'avance

Dernière modification par Melke (10-09-2007 12:29:21)

Hors ligne

 

#2 10-09-2007 12:30:19

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2487
Pépites: 88
Banque: 9,223,372,036,854,776,000

Re: Prendre un ligne lors d'un Sharedata

Bonjour,

Non, le Sharedata permet de partager les mêmes données entre deux DW, tu auras donc les mêmes données dans les deux, mais rien ne t'empêche de filtrer les enregistrements récupérer dans la seconde datawindow de façon à n'afficher que la ligne qui t'intéresse...


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#3 10-09-2007 12:47:40

Melke  
L'Enigmatique Troll Taciturne
Lieu: Paris
Date d'inscription: 30-05-2007
Messages: 385
Pépites: 9,994
Banque: 9,223,372,036,854,776,000

Re: Prendre un ligne lors d'un Sharedata

Le problème, lorsque je filtre sur la deuxième datawindow, sa ùme filtre aussi la première datawindow

Hors ligne

 

#4 10-09-2007 12:49:16

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Prendre un ligne lors d'un Sharedata

en effet, tout ce qui est filter(), sort() et compagnie effectué sur une DW en sharedata est automatiquement répercutésur els autres DW's partageant le sharedate.

Ne devrait tu pas simplement utiliser rowscopy(...) ?


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#5 10-09-2007 12:49:39

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2487
Pépites: 88
Banque: 9,223,372,036,854,776,000

Re: Prendre un ligne lors d'un Sharedata

Ah oui, c'est vrai que les deux DW partagent le même buffer de données...
Bon, ton problème, ce ne serait pas de gérer une datawindow liste et une détail par hasard?


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#6 10-09-2007 12:52:28

Melke  
L'Enigmatique Troll Taciturne
Lieu: Paris
Date d'inscription: 30-05-2007
Messages: 385
Pépites: 9,994
Banque: 9,223,372,036,854,776,000

Re: Prendre un ligne lors d'un Sharedata

Oui c'est ça...
Comment on fait ?

Dernière modification par Melke (10-09-2007 12:52:49)

Hors ligne

 

#7 10-09-2007 12:53:50

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2487
Pépites: 88
Banque: 9,223,372,036,854,776,000

Re: Prendre un ligne lors d'un Sharedata

Ok, alors ce qu'il faut que tu fasses, c'est gérer un ScrollToRow au niveau de ta fenêtre détail à chaque fois que tu sélectionneras une ligne dans ta liste:

Au niveau de dw_liste, tu codes ceci dans l'événement "RowFocuschanged"

Code: pb

dw_detail.ScrolltoRow( This.CurrentRow() )

Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#8 10-09-2007 12:55:22

LeCiao  
Membre Geek
Date d'inscription: 05-09-2007
Messages: 87
Pépites: 18
Banque: 362,050,507,885,535

Re: Prendre un ligne lors d'un Sharedata

Sinon tu peux utiliser un RowsCopy de la 1er DW sur la 2eme.

Hors ligne

 

#9 10-09-2007 12:57:44

Melke  
L'Enigmatique Troll Taciturne
Lieu: Paris
Date d'inscription: 30-05-2007
Messages: 385
Pépites: 9,994
Banque: 9,223,372,036,854,776,000

Re: Prendre un ligne lors d'un Sharedata

Je vais prendre la solution de foon




mais, j'ai un autre problème, j'ai une datawindow list, j'ai sur chaque ligne un bouton qui ouvre une popup et qui permet de définir le champs...
J'avais la solution du sharedata étant donnée que je n'avai q'une ligne...
Sa devient plus compliqué...

Dernière modification par Melke (10-09-2007 13:05:06)

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22