PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Creer un objet par programmation (POO) HELP!
Creer un objet par programmation (POO) HELP!
Débuté par orethore, 13 déc. 2005 23:21 - 6 réponses
Posté le 13 décembre 2005 - 23:21
J'ai une classe dont un attribut est un tableau d'objets
Je voudrais charger ce tableau avec des objets crees par programmation.

En clair
Je lis un fichier article
pour chaque article en fonction de differents criteres sur l'article je veux:
- creer un objet de la classe sousensemble dont le nom est le code article
- stocker son nom dans le tableau dynamique produitsfabriques de la classe machine

dans la classe machine j'ai dans le constructeur:
:produitsfabriques = allouer un tableau dynamique de 0 objet sousensemble

Quand je fais

TableauAjoute(:produitsfabriques,{codearticle})


le systeme me donne:

Erreur à la ligne 212 du traitement Méthode AjouteChampsElement.
Vous avez appelé la fonction TableauAjoute.
On ne peut pas affecter à un objet autre chose qu'un objet de la même classe.

J'ai donc essaye

{codearticle}= allouer un objet sousensemble
TableauAjoute(:produitsfabriques,{codearticle})

Meme probleme

Merci de votre aide!
Posté le 13 décembre 2005 - 10:49
Je vois pas ce que tu fais avec ce codearticle entre crochet.
Et si tu essaies ça?
On suppose que tu as une variable code_article dans ta classe sousEnsemble que tu passes au constructeur.


PROCEDURE ajoute( _sCodeArticle )

temp est un objet dynamique = allouer un objet sousEnsemble( _sCodeArticle )
tableauAjoute( :produitFabriques, temp)
Posté le 13 décembre 2005 - 12:03
olivier rethore a écrit :
J'ai une classe dont un attribut est un tableau d'objets
Je voudrais charger ce tableau avec des objets crees par programmation.

En clair
Je lis un fichier article
pour chaque article en fonction de differents criteres sur l'article je veux:
- creer un objet de la classe sousensemble dont le nom est le code article
- stocker son nom dans le tableau dynamique produitsfabriques de la classe machine

dans la classe machine j'ai dans le constructeur:
:produitsfabriques = allouer un tableau dynamique de 0 objet sousensemble

Quand je fais

TableauAjoute(:produitsfabriques,{codearticle})


le systeme me donne:

Erreur à la ligne 212 du traitement Méthode AjouteChampsElement.
Vous avez appelé la fonction TableauAjoute.
On ne peut pas affecter à un objet autre chose qu'un objet de la même classe.

J'ai donc essaye

{codearticle}= allouer un objet sousensemble
TableauAjoute(:produitsfabriques,{codearticle})

Meme probleme

Merci de votre aide!




Bonjour,
en quelle version 9 ou 10 ?
--
Cordialement
Chris
Posté le 13 décembre 2005 - 13:24
Moi je n'utilise pas TableauAjoute() mais

monTableau[i] = oMonObjet


"olivier rethore" <orethore@rochester.rr.com> a écrit dans le message de
news:439dff6f$1@news.pcsoft.fr...
J'ai une classe dont un attribut est un tableau d'objets
Je voudrais charger ce tableau avec des objets crees par programmation.

En clair
Je lis un fichier article
pour chaque article en fonction de differents criteres sur l'article je

veux:
- creer un objet de la classe sousensemble dont le nom est le code article
- stocker son nom dans le tableau dynamique produitsfabriques de la classe

machine

dans la classe machine j'ai dans le constructeur:
:produitsfabriques = allouer un tableau dynamique de 0 objet sousensemble

Quand je fais

TableauAjoute(:produitsfabriques,{codearticle})


le systeme me donne:

Erreur à la ligne 212 du traitement Méthode AjouteChampsElement.
Vous avez appelé la fonction TableauAjoute.
On ne peut pas affecter à un objet autre chose qu'un objet de la même

classe.

J'ai donc essaye

{codearticle}= allouer un objet sousensemble
TableauAjoute(:produitsfabriques,{codearticle})

Meme probleme

Merci de votre aide!



Posté le 13 décembre 2005 - 16:34
Je suis en version 9
Posté le 13 décembre 2005 - 21:32
"olivier rethore" <orethore@rochester.rr.com> a écrit dans le message de
news: 439ee389$1@news.pcsoft.fr...


Je suis en version 9



Tu peux consulter ce site, tu auras peut être les infos recherchées :

http://www.poo.fr.fm/

Antoine
Posté le 14 décembre 2005 - 05:09
Stef

Ta solution marche! Merci!

En clair pour creer un objet par programmation et pouvoir l'utiliser par la suite il faut le stocker dans un tableau et lui affecter un attribut l'identifiant (par exemple :nom ou dans mon cas :codearticle)