Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active;
dans les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans
Webdev qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active;
dans les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans
Webdev qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active;
dans les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans
Webdev qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
Bonjour,
soit plusieurs classes dérivées d'une seule et meme classe.
c_mysql4wd est un objet c_log4wd
c_oracle4wd est un objet c_log4wd
c_sqlite4wd est un objet c_log4wd
c_Natif4wd est un objet c_log4wd
vous les connaissez tous ;-)
J'ai une méthode qui n'existe que dans cOracle4wd mySQLSetMode mais comme je
passe par un objet dynamique qui est attribué par programmation selon le type
de connexion SGBD; j'ai besoin que cette méthode soit reconnue par toutes les
classes (mais si elle ne fait rien).
Donc j'ai créé une méthode mySQLSetMode dans la classe pere c_log4wd (qui ne
fait rien) et la méthode mySQLSetMode est redéfinie pour c_Oracle4wd.
Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active; dans
les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans Webdev
qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
Bonjour,
soit plusieurs classes dérivées d'une seule et meme classe.
c_mysql4wd est un objet c_log4wd
c_oracle4wd est un objet c_log4wd
c_sqlite4wd est un objet c_log4wd
c_Natif4wd est un objet c_log4wd
vous les connaissez tous ;-)
J'ai une méthode qui n'existe que dans cOracle4wd mySQLSetMode mais comme je
passe par un objet dynamique qui est attribué par programmation selon le type
de connexion SGBD; j'ai besoin que cette méthode soit reconnue par toutes les
classes (mais si elle ne fait rien).
Donc j'ai créé une méthode mySQLSetMode dans la classe pere c_log4wd (qui ne
fait rien) et la méthode mySQLSetMode est redéfinie pour c_Oracle4wd.
Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active; dans
les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans Webdev
qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
Bonjour,
soit plusieurs classes dérivées d'une seule et meme classe.
c_mysql4wd est un objet c_log4wd
c_oracle4wd est un objet c_log4wd
c_sqlite4wd est un objet c_log4wd
c_Natif4wd est un objet c_log4wd
vous les connaissez tous ;-)
J'ai une méthode qui n'existe que dans cOracle4wd mySQLSetMode mais comme je
passe par un objet dynamique qui est attribué par programmation selon le type
de connexion SGBD; j'ai besoin que cette méthode soit reconnue par toutes les
classes (mais si elle ne fait rien).
Donc j'ai créé une méthode mySQLSetMode dans la classe pere c_log4wd (qui ne
fait rien) et la méthode mySQLSetMode est redéfinie pour c_Oracle4wd.
Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active; dans
les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans Webdev
qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
Roumegou wrote:
(cut)Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active; dans
les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans
Webdev qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
j'ai un peu le même principe pour une gestion de tree views et le
polymorphisme fonctionne bien, sous windev par contre.. Peut être est ce un
problème avec Webdev ? Au vu du warning, ça ne lui plaît pas que mysqlSetMode
dans la classe oracle soit virtuelle, or c'est normal qu'elle le soit .. Est
ce qu il appelle bien la bonne malgré le warning ou est ce que ça ne
fonctionne pas ?
Roumegou wrote:
(cut)
Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active; dans
les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans
Webdev qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
j'ai un peu le même principe pour une gestion de tree views et le
polymorphisme fonctionne bien, sous windev par contre.. Peut être est ce un
problème avec Webdev ? Au vu du warning, ça ne lui plaît pas que mysqlSetMode
dans la classe oracle soit virtuelle, or c'est normal qu'elle le soit .. Est
ce qu il appelle bien la bonne malgré le warning ou est ce que ça ne
fonctionne pas ?
Roumegou wrote:
(cut)Dans le cas de c_oracle4wd, c'est la méthode redéfinie qui est active; dans
les autres cas c'est celle de c_log4wd.
Enfin, c'est ce que je croyais jusqu'à ce que je vois un warning dans
Webdev qui me dit
<la méthode mysqlsetmode de la classe c_oracle4wd est virtuelle car une
méthode mysqlsetMode existe déja une classe de base de la classe>
Qu'en est-il vraiment ?
j'ai un peu le même principe pour une gestion de tree views et le
polymorphisme fonctionne bien, sous windev par contre.. Peut être est ce un
problème avec Webdev ? Au vu du warning, ça ne lui plaît pas que mysqlSetMode
dans la classe oracle soit virtuelle, or c'est normal qu'elle le soit .. Est
ce qu il appelle bien la bonne malgré le warning ou est ce que ça ne
fonctionne pas ?
Voilà le mot savant qu'il me manquait; like mr jourdain avec sa prose,
je voulais faire du polymorphisme sans le savoir ;-))
Je n'ai pas encore testé le fonctionnement avec Webdev, car il faut que
j'adapte (réadapte) les classes pour Webdev car la compatibilité de
webdev/windev n'est pas toujours intelligente (il pourrait ignorer
certaine instructions ou objet pour compatibilité).
Mais , cf mon msg précédent, meme dans windev7.5 ce n'est pas très
apprécié par le compilateur comme technique meme si cela fonctionne.
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
dans classe c_log4wd
PROCEDURE PUBLIC mySQLSetMode(Mode)
// pour compatibilité Oracl4wd
dans classe c_oracle4wd
PROCEDURE mySQLSetMode(Mode)
LOCAL
myNumMode is unsigned int
myNumMode = Mode
AppelDLL32(:DLLName, "WSQL_SetMode", myNumMode)
PS : ce qui est très ch.. quand on utilise un objet dynamique, c'estque
l'on a pas la complétion. Je le redéfinis toujours sur une classe donnée
pendant le dev, et le remet en dynamique pour tester. Si vous avez une
meilleure façon ?
Voilà le mot savant qu'il me manquait; like mr jourdain avec sa prose,
je voulais faire du polymorphisme sans le savoir ;-))
Je n'ai pas encore testé le fonctionnement avec Webdev, car il faut que
j'adapte (réadapte) les classes pour Webdev car la compatibilité de
webdev/windev n'est pas toujours intelligente (il pourrait ignorer
certaine instructions ou objet pour compatibilité).
Mais , cf mon msg précédent, meme dans windev7.5 ce n'est pas très
apprécié par le compilateur comme technique meme si cela fonctionne.
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
dans classe c_log4wd
PROCEDURE PUBLIC mySQLSetMode(Mode)
// pour compatibilité Oracl4wd
dans classe c_oracle4wd
PROCEDURE mySQLSetMode(Mode)
LOCAL
myNumMode is unsigned int
myNumMode = Mode
AppelDLL32(:DLLName, "WSQL_SetMode", myNumMode)
PS : ce qui est très ch.. quand on utilise un objet dynamique, c'estque
l'on a pas la complétion. Je le redéfinis toujours sur une classe donnée
pendant le dev, et le remet en dynamique pour tester. Si vous avez une
meilleure façon ?
Voilà le mot savant qu'il me manquait; like mr jourdain avec sa prose,
je voulais faire du polymorphisme sans le savoir ;-))
Je n'ai pas encore testé le fonctionnement avec Webdev, car il faut que
j'adapte (réadapte) les classes pour Webdev car la compatibilité de
webdev/windev n'est pas toujours intelligente (il pourrait ignorer
certaine instructions ou objet pour compatibilité).
Mais , cf mon msg précédent, meme dans windev7.5 ce n'est pas très
apprécié par le compilateur comme technique meme si cela fonctionne.
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
dans classe c_log4wd
PROCEDURE PUBLIC mySQLSetMode(Mode)
// pour compatibilité Oracl4wd
dans classe c_oracle4wd
PROCEDURE mySQLSetMode(Mode)
LOCAL
myNumMode is unsigned int
myNumMode = Mode
AppelDLL32(:DLLName, "WSQL_SetMode", myNumMode)
PS : ce qui est très ch.. quand on utilise un objet dynamique, c'estque
l'on a pas la complétion. Je le redéfinis toujours sur une classe donnée
pendant le dev, et le remet en dynamique pour tester. Si vous avez une
meilleure façon ?
Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
il faut lui dire quel type d'objet c'est a l'origine pour que lors de l'appel
a mySQLSetMode il repointe sur le bon type
c'est à cause de ça que ça plante chez toi je pensedans classe c_log4wd
PROCEDURE PUBLIC mySQLSetMode(Mode)
définis la en virtuelle, normalement il le fait automatiquement quand tu
crées la methode dans une classe héritante mais c'est juste pour être sûr :)// pour compatibilité Oracl4wd
dans classe c_oracle4wd
PROCEDURE mySQLSetMode(Mode)
LOCAL
myNumMode is unsigned int
myNumMode = Mode
AppelDLL32(:DLLName, "WSQL_SetMode", myNumMode)
celle la doit être virtuelle aussi, il a également dû le faire
automatiquement mais vérifie au cas où
PS : ce qui est très ch.. quand on utilise un objet dynamique, c'estque
l'on a pas la complétion. Je le redéfinis toujours sur une classe donnée
pendant le dev, et le remet en dynamique pour tester. Si vous avez une
meilleure façon ?
oui ca c'est lourd il me semble que ça existe en 8 ? mais en 7.5 j'ai le même
problème
Roumegou wrote:
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
il faut lui dire quel type d'objet c'est a l'origine pour que lors de l'appel
a mySQLSetMode il repointe sur le bon type
c'est à cause de ça que ça plante chez toi je pense
dans classe c_log4wd
PROCEDURE PUBLIC mySQLSetMode(Mode)
définis la en virtuelle, normalement il le fait automatiquement quand tu
crées la methode dans une classe héritante mais c'est juste pour être sûr :)
// pour compatibilité Oracl4wd
dans classe c_oracle4wd
PROCEDURE mySQLSetMode(Mode)
LOCAL
myNumMode is unsigned int
myNumMode = Mode
AppelDLL32(:DLLName, "WSQL_SetMode", myNumMode)
celle la doit être virtuelle aussi, il a également dû le faire
automatiquement mais vérifie au cas où
PS : ce qui est très ch.. quand on utilise un objet dynamique, c'estque
l'on a pas la complétion. Je le redéfinis toujours sur une classe donnée
pendant le dev, et le remet en dynamique pour tester. Si vous avez une
meilleure façon ?
oui ca c'est lourd il me semble que ça existe en 8 ? mais en 7.5 j'ai le même
problème
Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
il faut lui dire quel type d'objet c'est a l'origine pour que lors de l'appel
a mySQLSetMode il repointe sur le bon type
c'est à cause de ça que ça plante chez toi je pensedans classe c_log4wd
PROCEDURE PUBLIC mySQLSetMode(Mode)
définis la en virtuelle, normalement il le fait automatiquement quand tu
crées la methode dans une classe héritante mais c'est juste pour être sûr :)// pour compatibilité Oracl4wd
dans classe c_oracle4wd
PROCEDURE mySQLSetMode(Mode)
LOCAL
myNumMode is unsigned int
myNumMode = Mode
AppelDLL32(:DLLName, "WSQL_SetMode", myNumMode)
celle la doit être virtuelle aussi, il a également dû le faire
automatiquement mais vérifie au cas où
PS : ce qui est très ch.. quand on utilise un objet dynamique, c'estque
l'on a pas la complétion. Je le redéfinis toujours sur une classe donnée
pendant le dev, et le remet en dynamique pour tester. Si vous avez une
meilleure façon ?
oui ca c'est lourd il me semble que ça existe en 8 ? mais en 7.5 j'ai le même
problème
Matthieu Sadouni avait soumis l'idée :Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
Matthieu Sadouni avait soumis l'idée :
Roumegou wrote:
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
Matthieu Sadouni avait soumis l'idée :Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
Roumegou wrote:Matthieu Sadouni avait soumis l'idée :Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
même si tu fais :
fSQL est un c_log4wd dynamique
Dans fen connexion
Selon SGBD
cas 1
fSQL=allouer c_Oracle4wd
cas 2
fSQL=allouer c_mysql4wd
?
ton fSQL sera à la fois un c_log4wd et un c_oracle4wd donc il ne devrait pas
y avoir d'erreur, il aura accès aux méthodes des 2, et les appels aux
méthodes de c_log4wd qui sont redéfinies pointeront sur les méthodes de
c_oracle4wd
ou alors j'ai zappé un truc mais mes objets treeview fonctionnent comme ça et
je n'ai pas de pb qd j'utilise des méthodes présentes uniquement dans les
classes dérivées
Roumegou wrote:
Matthieu Sadouni avait soumis l'idée :
Roumegou wrote:
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
même si tu fais :
fSQL est un c_log4wd dynamique
Dans fen connexion
Selon SGBD
cas 1
fSQL=allouer c_Oracle4wd
cas 2
fSQL=allouer c_mysql4wd
?
ton fSQL sera à la fois un c_log4wd et un c_oracle4wd donc il ne devrait pas
y avoir d'erreur, il aura accès aux méthodes des 2, et les appels aux
méthodes de c_log4wd qui sont redéfinies pointeront sur les méthodes de
c_oracle4wd
ou alors j'ai zappé un truc mais mes objets treeview fonctionnent comme ça et
je n'ai pas de pb qd j'utilise des méthodes présentes uniquement dans les
classes dérivées
Roumegou wrote:Matthieu Sadouni avait soumis l'idée :Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
même si tu fais :
fSQL est un c_log4wd dynamique
Dans fen connexion
Selon SGBD
cas 1
fSQL=allouer c_Oracle4wd
cas 2
fSQL=allouer c_mysql4wd
?
ton fSQL sera à la fois un c_log4wd et un c_oracle4wd donc il ne devrait pas
y avoir d'erreur, il aura accès aux méthodes des 2, et les appels aux
méthodes de c_log4wd qui sont redéfinies pointeront sur les méthodes de
c_oracle4wd
ou alors j'ai zappé un truc mais mes objets treeview fonctionnent comme ça et
je n'ai pas de pb qd j'utilise des méthodes présentes uniquement dans les
classes dérivées
Matthieu Sadouni a exprimé avec précision :Roumegou wrote:Matthieu Sadouni avait soumis l'idée :Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
même si tu fais :
fSQL est un c_log4wd dynamique
Dans fen connexion
Selon SGBD
cas 1
fSQL=allouer c_Oracle4wd
cas 2
fSQL=allouer c_mysql4wd
?
ton fSQL sera à la fois un c_log4wd et un c_oracle4wd donc il ne
devrait pas y avoir d'erreur, il aura accès aux méthodes des 2, et les
appels aux méthodes de c_log4wd qui sont redéfinies pointeront sur les
méthodes de c_oracle4wd
C'est dans l'éditeur de code que j'ai un pb. A l'execution, je pense que
cela passerait. En fait l'éditeur de code ne semble reconnaitre que la
première allocation et ne pas interprêter les "fSQL=allouer c_mysql4wd"
J'ai essayé aussi
fsql est un objet mysql4wd dynamique
là plus d'erreurs de compil, mais à l'execution il refuse d'allouer un
objet oracle4wd à un objet mysql4wd; meme si les méthodes sont les mèmes.
Matthieu Sadouni a exprimé avec précision :
Roumegou wrote:
Matthieu Sadouni avait soumis l'idée :
Roumegou wrote:
je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
même si tu fais :
fSQL est un c_log4wd dynamique
Dans fen connexion
Selon SGBD
cas 1
fSQL=allouer c_Oracle4wd
cas 2
fSQL=allouer c_mysql4wd
?
ton fSQL sera à la fois un c_log4wd et un c_oracle4wd donc il ne
devrait pas y avoir d'erreur, il aura accès aux méthodes des 2, et les
appels aux méthodes de c_log4wd qui sont redéfinies pointeront sur les
méthodes de c_oracle4wd
C'est dans l'éditeur de code que j'ai un pb. A l'execution, je pense que
cela passerait. En fait l'éditeur de code ne semble reconnaitre que la
première allocation et ne pas interprêter les "fSQL=allouer c_mysql4wd"
J'ai essayé aussi
fsql est un objet mysql4wd dynamique
là plus d'erreurs de compil, mais à l'execution il refuse d'allouer un
objet oracle4wd à un objet mysql4wd; meme si les méthodes sont les mèmes.
Matthieu Sadouni a exprimé avec précision :Roumegou wrote:Matthieu Sadouni avait soumis l'idée :Roumegou wrote:je récapitule ce que je fais:
Dans ouv du projet
fSQL est un objet dynamique
essaie :
fSQL est un c_log4wd dynamique
Oui mais là 5000 erreurs dans mon projet car toutes les méthodes non
définies dans c_log4wd causent des erreurs.
même si tu fais :
fSQL est un c_log4wd dynamique
Dans fen connexion
Selon SGBD
cas 1
fSQL=allouer c_Oracle4wd
cas 2
fSQL=allouer c_mysql4wd
?
ton fSQL sera à la fois un c_log4wd et un c_oracle4wd donc il ne
devrait pas y avoir d'erreur, il aura accès aux méthodes des 2, et les
appels aux méthodes de c_log4wd qui sont redéfinies pointeront sur les
méthodes de c_oracle4wd
C'est dans l'éditeur de code que j'ai un pb. A l'execution, je pense que
cela passerait. En fait l'éditeur de code ne semble reconnaitre que la
première allocation et ne pas interprêter les "fSQL=allouer c_mysql4wd"
J'ai essayé aussi
fsql est un objet mysql4wd dynamique
là plus d'erreurs de compil, mais à l'execution il refuse d'allouer un
objet oracle4wd à un objet mysql4wd; meme si les méthodes sont les mèmes.