Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour,
J'ai une erreur sur une messagebox que je n'arrive pas trop à comprendre : Multiples routines named 'messagebox' were found that match this set of arguments causing an ambigous match
If MessageBox ("Validation de commande", "Confirmez-vous le renvoi de la commande n° " + string (il_cde_num) + & "~r~n Enleveur/transporteur : " + this.dw_mas.object.cde_enleveur[1] + & "~r~n Nombre de palettes : " + this.dw_1.object.nb_palettes_total[1] + & "~r~n Poids brut : " + this.dw_1.object.poids_brut_total[1] + " Kg.", Question!, YesNo!, 2) = 2 Then Return
Je crois comprendre que powerbuilder n'arrive pas à se decider quelle surcharge de la fonction messagebox choisir mais je ne vois pas pourquoi.
Avez vous des idées sur ce probleme?
Dernière modification par Nephtis (16-08-2007 09:32:27)
Hors ligne
Bonjour, y'a-t-il une redéfinition de la function messagebox quelque-part ?
Hors ligne
C'est bon vient de trouver la reponse
En fait le problème vient du fait qu'il faut convertir les données récupérées sur les champs des datawindows en String.
If MessageBox ("Validation de commande", "Confirmez-vous le renvoi de la commande n° " + string (il_cde_num) + & "~r~n Enleveur/transporteur : " + STRING(this.dw_mas.object.cde_enleveur[1]) + & "~r~n Nombre de palettes : " + STRING(this.dw_1.object.nb_palettes_total[1]) + & "~r~n Poids brut : " + STRING(this.dw_1.object.poids_brut_total[1]) + " Kg.", Question!, YesNo!, 2) = 2 Then Return
Un peu vicieux l'erreur quand même
Heu... juste pour répondre à eRaSorZ : non elle n'était pas redefinie
Dernière modification par Nephtis (16-08-2007 09:34:23)
Hors ligne
Le plus probable est qu'eRaSorZ ait raison.
Sinon, le type de données de this.dw_1.object.trucmuche est any.
=> Utiliser getItemString à la place
Hors ligne
tant qu'à faire utilise une variable pour le message :
String ls_msg ls_msg = "Validation de commande", "Confirmez-vous le renvoi de la commande n° " + string (il_cde_num) + & "~r~n Enleveur/transporteur : " + STRING(this.dw_mas.object.cde_enleveur[1]) + & "~r~n Nombre de palettes : " + STRING(this.dw_1.object.nb_palettes_total[1]) + & "~r~n Poids brut : " + STRING(this.dw_1.object.poids_brut_total[1]) + " Kg." If MessageBox ( ls_msg, Question!, YesNo!, 2) = 2 Then Return
Hors ligne
eRaSorZ a écrit:
tant qu'à faire utilise une variable pour le message
Je rajouterai meme des variables pour les données de la DW et tester la nullité au cas ou ...
Je crois bien que si une donnée est null ton ls_msg sera null
Hors ligne
Et je dirais même plus, un messagebox à Null ne s'affiche pas (et pour cause!)
Hors ligne