Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous,
le travail que je veux faire doit être applicable à toutes les DW de mon prog, c'est pour ça j'aurais besoin d'une solution générique.
En fait, je veux connaitre le nombre de groupes dans chacune des DW pour pouvoir appliquer, par exemple, l'instruction suivante tout en donnant le numéro du groupe d'une façon dynamique.
dw_rapport.Modify(“DataWindow.Trailer." + ls_group_level + ".Height=500″)
j'ai cherché a niveau des syntax de dw mais j'ai rien trouvé.
Merci d'avance pour votre aide:)
Dernière modification par dydo (08-01-2013 13:51:11)
Hors ligne
Salut à toi,
quick and dirty :
faire une boucle qui te retourne la hauteur de chaque groupe, dès que tu recevra '?' ( ou '!' ou '' à tester, en tout cas autre chose qu'une valeur numérique) comme retour de ton describe c'est que tu es arrivé au max + 1 de ton nombre de groupes
suis-je clair ?
Hors ligne
rincevent a écrit:
faire une boucle qui te retourne la hauteur de chaque groupe
suis-je clair ?
Bonjour rincevent,
Merci pour ton retour, mais la problème c'est que sur une Datawindow X je ne sais pas le nombre de Levels de groupes à moin que je l'indique statiquement (je veux une solution générique) .
Pour pouvoir faire la boule, j'aurais besoin du nbre de groupes (qui varie d'une DW à une autre).
Hors ligne
une boucle until
Hors ligne
Salut,
Oui une boucle while ou do while , .. mais la condition d'arrêt!!
Comment pourrais-je dire que je suis arrivé au dernier groupe!
côté algorithmique l'idée est simple, mais l'instruction qui me permet de déterminer le nombre de level de group, j'arrive pas à la trouver.
J'ai pensé à récupérer la syntaxe de la DW et chercher le nombre d'occurences du mot "group(level=" ==> mais c'est pas très pro comme vous pouvez constater
Hors ligne
long ll_group_count String ls_ret For ll_group_count = 1 to 10000 ls_ret = dw_1.Describe("DataWindow.Header." + string(ll_group_count) + ".Color") if ls_ret = '?' or ls_ret = '!' then ll_group_count = ll_group_count - 1 exit end if next messagebox("","Il y a " + string(ll_group_count) + " groupe(s)")
Hors ligne
Merci beaucoup Pour votre aide
Passez une bonne journée
Hors ligne
avec plaisir
Hors ligne
N'oublie pas de mettre le ptit [RESOLU]
Hors ligne