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


Bonjour,
J'ai une datawondow (grid) qui a 3 parametres (retrieval arguments) et qui a un champ DRopDownDW ayant egalement des parametres (Dans mon cas les parametres sont les mêmes que ceux du datawondow ).
Lorsque je lance l'exécution, les 3 aruguments de la DRopDownDW me sont demandés or je souhaite les transmettre automatiquement.
Quelqu'un peut-il m'aider?
Hors ligne






Salut,
Essaye ça, si ça peut d'aider
DataWindowChild dwc_toto
DW.GetChild("ta_dropdown", dwc_toto)
dwc_toto.SetTransObject(SQLCA)
dwc_toto.retrieve()
Hors ligne


bonjour nico,
j'ai essayé ce code mais ça ne marche pas.
Hors ligne











Bonjour FOSTA,
Tu as bien décoché l'autoretrieve?
Hors ligne


Oui, j'ai bien décoché l'autoretrieve
Hors ligne











Tu fais bien le retrieve de ta dropdown avant celui de la datawindow principale, et avec les bon paramètres?
Hors ligne


Voici le code que j'utilise:
dw_noter_eleve.settrans( SQLCA) DataWindowChild eleve_child i=dw_noter_eleve.getchild( "d_eleves_par_classe", eleve_child) IF i = -1 THEN MessageBox("Error", "Not a DataWindowChild") eleve_child.settrans( SQLCA) eleve_child.retrieve(gs_code,ls_classe,annee) lds_eleves=CREATE DATASTORE lds_eleves.dataobject='d_eleves_par_classe' lds_eleves.settransobject(SQLCA) nb_linges=lds_eleves.retrieve(gs_code,ls_classe,annee) dw_noter_eleve.retrieve(gs_code,ls_classe,annee )
Hors ligne











Quand tu es en débug pas à pas, le message des dropdown apparaît à quel moment?
Ce ne serait pas lors du retrieve de ta datastore par hasard?
Hors ligne






Bonjour,
A priori dans ton code, tu as une datawindow (dw_noter_eleve) et une datastore (lds_eleves). Il faut donc faire 2 fois le getchild, une fois pour chaque objet (dw_noter_eleve Ok, lds_eleves ?).
Hors ligne






DataWindowChild eleve_child, eleve_child1 dw_noter_eleve.settrans( SQLCA) i=dw_noter_eleve.getchild( "d_eleves_par_classe", eleve_child) IF i = -1 THEN MessageBox("Error", "Not a DataWindowChild") eleve_child.settrans( SQLCA) eleve_child.retrieve(gs_code,ls_classe,annee) lds_eleves=CREATE DATASTORE lds_eleves.dataobject='d_eleves_par_classe' lds_eleves.settransobject(SQLCA) i=lds_eleves.getchild( "d_eleves_par_classe", eleve_child1) IF i = -1 THEN MessageBox("Error", "Not a DataWindowChild") eleve_child1.settrans( SQLCA) eleve_child1.retrieve(gs_code,ls_classe,annee) nb_linges=lds_eleves.retrieve(gs_code,ls_classe,annee) dw_noter_eleve.retrieve(gs_code,ls_classe,annee )
Hors ligne


Merci les gars, j'ai trouvé la solution. Il fait tout simplement préciser le nom de la colonne pour laquelle la on utilise la DropDownDW dans la fonction GetChild('Nom de la colonne de DW','La variable DWChild utilisée').
Merci encore à tous.
Hors ligne











Bonsoir Fosta,
N'oublies pas le [RESOLU]
Hors ligne