Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bien le bonjour,
Depuis quelques jour, lorsque je fais un full build de mon application, j'obtiens des messages du style :
"The identifier 'w_ma_fenetre' conflicts with an existing global variable with same name. The new definition of 'w_ma_fenetre' will take precedance and the prior value will be ignored until this version of 'w_ma_fenetre' goes out of scope.
Etant donné que ça ne m'empêchait pas de travailler, je ne me suis pas inquiété.
Aujourd'hui je décide de transférer une constant de mon fichier de constantes vers le registre. Une fois la chose effectuée, je supprime la constant du fichier de constante... Et pour retrouver tous ses appels depuis l'application, je fais un full build. Comme prévu j'obtiens 1 message d'erreur par référence à la constante, et il ne me reste plus qu'à double-cliquer sur les messages pour ouvrir les fenêtres correspondantes. Seulement voilà : lorsque je veux ouvrir les dites fenêtres, j'obtiens le message suivant :
Open of window w_ma_fenetre faield. It has been migrated to the current version format, but must also be successfully regenerated.
Si je regenerate la fenêtre, ca ne change rien.
Pour éditer ma fenêtre j'ai donc du :
- remettre ma constante dans le fichier de constantes
- faire un full rebuild
- remplacer la référence par un appel à mon registre
- supprimer la constante du fichier de constante
- faire un full rebuild
Je ne comprends pas ce qu'il se passe, mais puisque ca semble être en rapport avec une "migration", je poste dans cette section du forum.
Je suis en PB 10.2.0 build 8075.
Je vous remercie pour vos conseils ;)
Dernière modification par Nyphel (24-07-2008 10:44:22)
Hors ligne
salut,
ce n'est pas du à la presence de cette fenetre dans une autre librairie ?
Hors ligne
Malheureusement non...
Hors ligne
Bonjour Nyphel,
Tu utilises quel outil de gestion de sources avec PB?
Hors ligne
Nyphel a écrit:
lorsque je veux ouvrir les dites fenêtres, j'obtiens le message suivant :
Open of window w_ma_fenetre faield. It has been migrated to the current version format, but must also be successfully regenerated.
bonjour, classique en PB quand il catche une erreur de compil sur un objet...
c'est pourquoi on m'a toujours dit : "fais un backup de tes sources avant de compiler"
le moyen qu'il te reste c'est clic droit,edit source et là tu peux corriger
sinon, pourquoi ne pas faire un full search sur ta constante pour l'enlever plutot que d'y aller par erreur de compil ?
Hors ligne
Bonjour Foon ! Je n'utilise pas de gestionnaire de source pour le moment, nous passons par VSS et nous envisageons de faire gérer les check in/check out par ce dernier... Comme indiqué dans la section d'astuces du forum ;)
Erasorz, à vrai dire je n'avais pas ce problème auparavant... Mais c'est peut-être du au fait qu'on utilisait le gestionnaire de sources de Pb jusqu'à il y a peu. L'edit source ce n'est pas très pratique tout de même, mais bon... Pourquoi pas !
Enfin il est vrai qu'un recherche aurait été plus pratique. Pourquoi je ne l'ai pas faite ? Ça c'est une bonne question
Merci pour votre aide, si il n'y a pas moyen de résoudre ce problème et qu'il apparait comme un comportement "normal", je vais tagger le post comme résolu.
Hors ligne
J'ai trouvé une solution :
- j'ai exporté la fenêtre qui posait problème, ainsi que tout ce qui y faisait référence (près de la moitié du projet >_<)
- j'ai delete les objets concernés du projet
- j'ai fait un fuill build, qui a fonctionné
- j'ai tout réimporté
- j'ai pu refaire un full build
C'est assez laborieux comme solution, mais bon... Je n'ai pas trouvé mieux :-/
Hors ligne