Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous !
Et bien voilà, j'ai créé une DW1 contenant deux champs qui proviennent d'une table Y (qui ne sera pas la table source réel)
Cette DW1 sert de DataObject pour la DDDW de ma DW2.
Ensuite dans mon programme , j'affiche cette DW2 et dans mon manager j'ai :
string ls_newSQL int li_i datawindowchild ldwc_ssoptions ls_newSQL="select * from catowner."+ w_sous_menu.is_dyn_table //of_setdataobject("dw_sous_oper") //of_getds().settransObject(sqlca) //li_i=of_getds().SetSQLSelect(ls_NewSQL) //this.of_retrieve( ) w_sous_menu.dw_main.dataobject="dw_sous_probleme" w_sous_menu.dw_main.getChild("s_options",ldwc_ssoptions) //ldwc_ssoptions.modify( "dataobject='dw_sous_oper'") ldwc_ssoptions.setsqlselect(ls_NewSQL) //ldwc_ssoptions.setcolumn( 2) w_sous_menu.dw_main.settransobject( sqlca) w_sous_menu.dw_main.retrieve() w_sous_menu.dw_main.insertRow(0)
J'ai procédé de cette manière car :
* La table n'est pas connue d'avance.. on ne peut pas faire de retrieve arg sur le nom de table...
* Je ne peux pas changer le dataobject d'un LDWC
* Je ne sais pas affecter le datastore à la DDDW ( le datastore est correctement alimenté )
ça fonctionne de cette façon mais lorsque je veux récupérer la valeur courante dans l'évenement itemChanged , ça pose problème.
Voilà.. si vous pourriez m'éclairer , ça ne serait pas de refus
Dernière modification par micmx (02-03-2009 11:17:53)
Hors ligne
Quelques questions en passant:
- De quelle datastore parles-tu? Je n'en vois pas dans ton script
- Je ne vois pas non plus de trace de retrieve sur ta DDDW
- Pourquoi fais-tu un insertrow sur ta datawindow principale après le retrieve?
- As-tu regardé le fonctionnement du sharedata dans l'aide PB?
Hors ligne
foon a écrit:
Quelques questions en passant:
- De quelle datastore parles-tu? Je n'en vois pas dans ton script
Celle en commentaire..
foon a écrit:
- Je ne vois pas non plus de trace de retrieve sur ta DDDW
Auto retrieve
foon a écrit:
- Pourquoi fais-tu un insertrow sur ta datawindow principale après le retrieve?
Parce que sinon j'obtiens une FreeForm vide..
foon a écrit:
- As-tu regardé le fonctionnement du sharedata dans l'aide PB?
Oui bien sûre , cependant , une erreur apparaît , pas la même structure
Hors ligne
Le problème c'est pour récupérer les données de la DDDW..
Déjà lorsque j'écris :
messagebox("?","Click")
Dans l'évènement ItemChanged , l'évènement ne se produit qu'au premier click , même si l'on clique sur une autre valeur de la dddw oO
Hors ligne