Je suis en cours de migration d'un projet important WD5.5 -> 7.5 (puis 8 ?!)
et j'ai des warnings sur l'héritage de classe, certains membres masquant
d'autres comme dans l'exemple qui suit ou j'ai une erreur sur le membre
Reference:
Document est une classe
Ident est un entier
Reference est une chaine
...
CliFac est une classe
un objet Document
Reference est une chaîne
SoldeDu est un monétaire
...
----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le membre
'Reference' de la classe de base 'Document'.
CliFac
De plus sous WD 5.5 on pouvait accéder aux deux membres, soit
CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En
7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils à
revoir (et donc tous le code qui en découle) ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Romain PETIT
"I.G.LOG" a formulé ce lundi :
----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le membre 'Reference' de la classe de base 'Document'.
Oui, mais ce n'est qu'un warning.
De plus sous WD 5.5 on pouvait accéder aux deux membres, soit CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En 7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils à revoir (et donc tous le code qui en découle) ?
Ca marche si tu fais appel à l'objet avec cette synthaxe :
cCliFac est un objet CliFac cCliFac:Reference = "toto" cCliFac:Document::Reference = "titi"
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
"I.G.LOG" a formulé ce lundi :
----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le membre
'Reference' de la classe de base 'Document'.
Oui, mais ce n'est qu'un warning.
De plus sous WD 5.5 on pouvait accéder aux deux membres, soit
CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En
7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils à
revoir (et donc tous le code qui en découle) ?
Ca marche si tu fais appel à l'objet avec cette synthaxe :
cCliFac est un objet CliFac
cCliFac:Reference = "toto"
cCliFac:Document::Reference = "titi"
----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le membre 'Reference' de la classe de base 'Document'.
Oui, mais ce n'est qu'un warning.
De plus sous WD 5.5 on pouvait accéder aux deux membres, soit CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En 7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils à revoir (et donc tous le code qui en découle) ?
Ca marche si tu fais appel à l'objet avec cette synthaxe :
cCliFac est un objet CliFac cCliFac:Reference = "toto" cCliFac:Document::Reference = "titi"
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
I.G.LOG
Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est pas reconnue sour wd7.5. L'equivalent du code WD5.5 suivant: CliFac est une classe un objet Document ... devient sous WD 7.5: CliFac est une classe Herite de Document ... Avec cette syntaxe, tout semble renter dans l'ordre (sous réserve de tests !) Merci pour la réponse PS: migration pas aisée; plus qu'à me retrousser les manches !
"Romain PETIT" a écrit dans le message de news:
"I.G.LOG" a formulé ce lundi :
> ----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le
membre
> 'Reference' de la classe de base 'Document'.
Oui, mais ce n'est qu'un warning.
> De plus sous WD 5.5 on pouvait accéder aux deux membres, soit > CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En > 7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils
à
> revoir (et donc tous le code qui en découle) ?
Ca marche si tu fais appel à l'objet avec cette synthaxe :
cCliFac est un objet CliFac cCliFac:Reference = "toto" cCliFac:Document::Reference = "titi"
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est pas
reconnue sour wd7.5.
L'equivalent du code WD5.5 suivant:
CliFac est une classe
un objet Document
...
devient sous WD 7.5:
CliFac est une classe
Herite de Document
...
Avec cette syntaxe, tout semble renter dans l'ordre (sous réserve de tests
!)
Merci pour la réponse
PS: migration pas aisée; plus qu'à me retrousser les manches !
"Romain PETIT" <VoirM@Signature.fin> a écrit dans le message de
news:mesnews.b59c7d3c.ffc89812.416.2191@Signature.fin...
"I.G.LOG" a formulé ce lundi :
> ----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le
membre
> 'Reference' de la classe de base 'Document'.
Oui, mais ce n'est qu'un warning.
> De plus sous WD 5.5 on pouvait accéder aux deux membres, soit
> CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En
> 7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils
à
> revoir (et donc tous le code qui en découle) ?
Ca marche si tu fais appel à l'objet avec cette synthaxe :
cCliFac est un objet CliFac
cCliFac:Reference = "toto"
cCliFac:Document::Reference = "titi"
Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est pas reconnue sour wd7.5. L'equivalent du code WD5.5 suivant: CliFac est une classe un objet Document ... devient sous WD 7.5: CliFac est une classe Herite de Document ... Avec cette syntaxe, tout semble renter dans l'ordre (sous réserve de tests !) Merci pour la réponse PS: migration pas aisée; plus qu'à me retrousser les manches !
"Romain PETIT" a écrit dans le message de news:
"I.G.LOG" a formulé ce lundi :
> ----> Warning : Le membre 'Reference' de la classe 'CliFac' masque le
membre
> 'Reference' de la classe de base 'Document'.
Oui, mais ce n'est qu'un warning.
> De plus sous WD 5.5 on pouvait accéder aux deux membres, soit > CliFac:Reference ou CliFac:Document::Reference (deux doubles-points). En > 7.5, j'ai une erreur de compilation. La majorité de mes objets sont-ils
à
> revoir (et donc tous le code qui en découle) ?
Ca marche si tu fais appel à l'objet avec cette synthaxe :
cCliFac est un objet CliFac cCliFac:Reference = "toto" cCliFac:Document::Reference = "titi"
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Romain PETIT
"I.G.LOG" avait écrit le 23/12/2003 :
Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est pas reconnue sour wd7.5. L'equivalent du code WD5.5 suivant: CliFac est une classe un objet Document ...
C'est bizarre, tu es sous quelle version de WD7.5. Chez moi pas de soucis avec cette syntaxe pour l'héritage (WD7.5-206g) : C'est d'ailleurs spécifié dans l'aide :
<Extrait de l'aide>
Héritage de classe [...] Syntaxe conservée pour compatibilité <NomClasseDérivée> est une classe [PRIVE, PROTEGE, PUBLIC] Un objet <NomClasseAncêtre> <Nom Membre classe Dérivée> est <Type du membre> ... FIN
<Extrait de l'aide>
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
"I.G.LOG" avait écrit le 23/12/2003 :
Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est pas
reconnue sour wd7.5.
L'equivalent du code WD5.5 suivant:
CliFac est une classe
un objet Document
...
C'est bizarre, tu es sous quelle version de WD7.5.
Chez moi pas de soucis avec cette syntaxe pour l'héritage (WD7.5-206g)
:
C'est d'ailleurs spécifié dans l'aide :
<Extrait de l'aide>
Héritage de classe
[...]
Syntaxe conservée pour compatibilité
<NomClasseDérivée> est une classe
[PRIVE, PROTEGE, PUBLIC]
Un objet <NomClasseAncêtre>
<Nom Membre classe Dérivée> est <Type du membre>
...
FIN
<Extrait de l'aide>
--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est pas reconnue sour wd7.5. L'equivalent du code WD5.5 suivant: CliFac est une classe un objet Document ...
C'est bizarre, tu es sous quelle version de WD7.5. Chez moi pas de soucis avec cette syntaxe pour l'héritage (WD7.5-206g) : C'est d'ailleurs spécifié dans l'aide :
<Extrait de l'aide>
Héritage de classe [...] Syntaxe conservée pour compatibilité <NomClasseDérivée> est une classe [PRIVE, PROTEGE, PUBLIC] Un objet <NomClasseAncêtre> <Nom Membre classe Dérivée> est <Type du membre> ... FIN
<Extrait de l'aide>
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
I.G.LOG
Suis en 7.5-206h (version de la dernière lst). La syntaxe CliFac est une classe un objet Document est en effet conservée mais génère des erreurs de compilation sur les :: (message ":: interdits") alors qu'avec la déclaration "Herite de " je n'ai plus ce message (d'après mes premieres constatations, sans plus de tests) Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
"Romain PETIT" a écrit dans le message de news:
"I.G.LOG" avait écrit le 23/12/2003 : > Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est
pas
> reconnue sour wd7.5. > L'equivalent du code WD5.5 suivant: > CliFac est une classe > un objet Document > ...
C'est bizarre, tu es sous quelle version de WD7.5. Chez moi pas de soucis avec cette syntaxe pour l'héritage (WD7.5-206g) : C'est d'ailleurs spécifié dans l'aide : > <Extrait de l'aide>
Héritage de classe [...] Syntaxe conservée pour compatibilité <NomClasseDérivée> est une classe [PRIVE, PROTEGE, PUBLIC] Un objet <NomClasseAncêtre> <Nom Membre classe Dérivée> est <Type du membre> ... FIN
<Extrait de l'aide>
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Suis en 7.5-206h (version de la dernière lst).
La syntaxe
CliFac est une classe
un objet Document
est en effet conservée mais génère des erreurs de compilation sur les ::
(message ":: interdits") alors qu'avec la déclaration "Herite de " je n'ai
plus ce message (d'après mes premieres constatations, sans plus de tests)
Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
"Romain PETIT" <VoirM@Signature.fin> a écrit dans le message de
news:mesnews.ba917d3c.2df6aba4.61.2248@Signature.fin...
"I.G.LOG" avait écrit le 23/12/2003 :
> Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est
pas
> reconnue sour wd7.5.
> L'equivalent du code WD5.5 suivant:
> CliFac est une classe
> un objet Document
> ...
C'est bizarre, tu es sous quelle version de WD7.5.
Chez moi pas de soucis avec cette syntaxe pour l'héritage (WD7.5-206g)
:
C'est d'ailleurs spécifié dans l'aide :
> <Extrait de l'aide>
Héritage de classe
[...]
Syntaxe conservée pour compatibilité
<NomClasseDérivée> est une classe
[PRIVE, PROTEGE, PUBLIC]
Un objet <NomClasseAncêtre>
<Nom Membre classe Dérivée> est <Type du membre>
...
FIN
<Extrait de l'aide>
--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Suis en 7.5-206h (version de la dernière lst). La syntaxe CliFac est une classe un objet Document est en effet conservée mais génère des erreurs de compilation sur les :: (message ":: interdits") alors qu'avec la déclaration "Herite de " je n'ai plus ce message (d'après mes premieres constatations, sans plus de tests) Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
"Romain PETIT" a écrit dans le message de news:
"I.G.LOG" avait écrit le 23/12/2003 : > Après différents essais, la syntaxe "cCliFac est un objet CliFac" n'est
pas
> reconnue sour wd7.5. > L'equivalent du code WD5.5 suivant: > CliFac est une classe > un objet Document > ...
C'est bizarre, tu es sous quelle version de WD7.5. Chez moi pas de soucis avec cette syntaxe pour l'héritage (WD7.5-206g) : C'est d'ailleurs spécifié dans l'aide : > <Extrait de l'aide>
Héritage de classe [...] Syntaxe conservée pour compatibilité <NomClasseDérivée> est une classe [PRIVE, PROTEGE, PUBLIC] Un objet <NomClasseAncêtre> <Nom Membre classe Dérivée> est <Type du membre> ... FIN
<Extrait de l'aide>
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Romain PETIT
"I.G.LOG" a couché sur son écran :
Suis en 7.5-206h (version de la dernière lst). La syntaxe CliFac est une classe un objet Document est en effet conservée mais génère des erreurs de compilation sur les :: (message ":: interdits") alors qu'avec la déclaration "Herite de " je n'ai plus ce message (d'après mes premieres constatations, sans plus de tests) Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Avec la 206g je n'ai pas ce problème (à part le warning du membre masqué) :
***** code de la classe cDocument **** cDocument est une classe Ident est un entier Reference est une chaîne FIN PROCEDURE Constructeur() :Reference = "référence Document"
***** code de la classe cCliFac **** cCliFac est une classe un objet cDocument Reference est une chaîne SoldeDu est un monétaire FIN PROCEDURE Constructeur() :Reference = "référence CLIFAC"
****** code d'un bouton quelconque **** cF est un objet cCliFac Trace(cF:Reference) Trace(cF:cDocument::reference) // pas de probleme de compilation et les 2 références // sont bien tracées
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
"I.G.LOG" a couché sur son écran :
Suis en 7.5-206h (version de la dernière lst).
La syntaxe
CliFac est une classe
un objet Document
est en effet conservée mais génère des erreurs de compilation sur les ::
(message ":: interdits") alors qu'avec la déclaration "Herite de " je n'ai
plus ce message (d'après mes premieres constatations, sans plus de tests)
Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Avec la 206g je n'ai pas ce problème (à part le warning du membre masqué) :
***** code de la classe cDocument ****
cDocument est une classe
Ident est un entier
Reference est une chaîne
FIN
PROCEDURE Constructeur()
:Reference = "référence Document"
***** code de la classe cCliFac ****
cCliFac est une classe
un objet cDocument
Reference est une chaîne
SoldeDu est un monétaire
FIN
PROCEDURE Constructeur()
:Reference = "référence CLIFAC"
****** code d'un bouton quelconque ****
cF est un objet cCliFac
Trace(cF:Reference)
Trace(cF:cDocument::reference)
// pas de probleme de compilation et les 2 références
// sont bien tracées
--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Suis en 7.5-206h (version de la dernière lst). La syntaxe CliFac est une classe un objet Document est en effet conservée mais génère des erreurs de compilation sur les :: (message ":: interdits") alors qu'avec la déclaration "Herite de " je n'ai plus ce message (d'après mes premieres constatations, sans plus de tests) Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Avec la 206g je n'ai pas ce problème (à part le warning du membre masqué) :
***** code de la classe cDocument **** cDocument est une classe Ident est un entier Reference est une chaîne FIN PROCEDURE Constructeur() :Reference = "référence Document"
***** code de la classe cCliFac **** cCliFac est une classe un objet cDocument Reference est une chaîne SoldeDu est un monétaire FIN PROCEDURE Constructeur() :Reference = "référence CLIFAC"
****** code d'un bouton quelconque **** cF est un objet cCliFac Trace(cF:Reference) Trace(cF:cDocument::reference) // pas de probleme de compilation et les 2 références // sont bien tracées
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Romain PETIT
Le 23/12/2003, "I.G.LOG" a supposé :
Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Ben ça c'est un peu normal puisque tu as déjà une classe qui s'appelle CliFax... Tu peux faire ça en WD55 ?
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
Le 23/12/2003, "I.G.LOG" a supposé :
Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Ben ça c'est un peu normal puisque tu as déjà une classe qui s'appelle CliFax...
Tu peux faire ça en WD55 ?
--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Ben ça c'est un peu normal puisque tu as déjà une classe qui s'appelle CliFax... Tu peux faire ça en WD55 ?
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
I.G.LOG
J'avais mal compris. Je pensais que la syntaxe de déclaration de classe aurait pu être "CliFac est un objet Document" Au lieu de: CliFac est une classe un Objet Document ... Mais ça, ça empecherais l'héritage multiple !
"Romain PETIT" a écrit dans le message de news:
Le 23/12/2003, "I.G.LOG" a supposé : > Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Ben ça c'est un peu normal puisque tu as déjà une classe qui s'appelle
CliFax...
Tu peux faire ça en WD55 ?
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)
J'avais mal compris. Je pensais que la syntaxe de déclaration de classe
aurait pu être "CliFac est un objet Document"
Au lieu de:
CliFac est une classe
un Objet Document
...
Mais ça, ça empecherais l'héritage multiple !
"Romain PETIT" <VoirM@Signature.fin> a écrit dans le message de
news:mesnews.bb027d3c.65b67d02.64.2248@Signature.fin...
Le 23/12/2003, "I.G.LOG" a supposé :
> Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Ben ça c'est un peu normal puisque tu as déjà une classe qui s'appelle
CliFax...
Tu peux faire ça en WD55 ?
--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
J'avais mal compris. Je pensais que la syntaxe de déclaration de classe aurait pu être "CliFac est un objet Document" Au lieu de: CliFac est une classe un Objet Document ... Mais ça, ça empecherais l'héritage multiple !
"Romain PETIT" a écrit dans le message de news:
Le 23/12/2003, "I.G.LOG" a supposé : > Par contre la syntaxe "CliFac est un objet <objet>" est rejetée !
Ben ça c'est un peu normal puisque tu as déjà une classe qui s'appelle
CliFax...
Tu peux faire ça en WD55 ?
-- Romain PETIT http://cerbermail.com/?IJmancZl88 (cliquez sur le lien ci-dessus pour me contacter en privé)