IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Erreur de lecture données automate


Sujet :

WinDev

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Erreur de lecture données automate
    Bonjour,
    je debute en programation OCP.
    Je veux ecrire un programme pour lire et ecrire des données dans un automate.
    les données sont les suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    Serveur: Archestra.dasabcipxxx.6
    Machine: maMachine
    OPCLink:myLink
    a travers l'outil OPC Quick CLient, je parviens a voir les données de l'automate en creation des Items.
     
    //Variables globales au projet
    NomOrdi est une chaîne = "maMachine" //Nom de l'ordinateur Hôte du DA Server
    NomServeur est chaîne = "Archestra.dasabcipxxx.6";	//Nom du Da Server
    gcOPCLink est une chaîne = "myLink"	//Nom du Link OPC
    // OPC
    CLIENT_OPC_AUTOMATION est une chaîne = "Graybox.OPC.DAWrapper"			//Nom de l'objet OPC Automation
    //Noms donné aux groupes OPC
    MONGROUPE_R= "GROUPE1"
     
    //Les tableaux OPC automation commence à l'indice 1
    AutomationParamètre(apIndiceBaseTableau,1)
     
    //Code de ma fenetre
    // on instancie un serveur Automation
    gautServeur est un objet Automation CLIENT_OPC_AUTOMATION
    gpautItem est un objet Automation dynamique
     
    sInc est une chaîne="monItem[0]"
    // Vérifie l'existence de l'objet automation
    QUAND EXCEPTION DANS
    	oServeur est un objet Automation CLIENT_OPC_AUTOMATION	//Objet serveur client
    FAIRE
    	Erreur("L'objet automation " + CLIENT_OPC_AUTOMATION + " est introuvable sur le poste en cours.", ExceptionInfo())
    	Ferme()
    FIN
     
    oGroupeR est un objet Automation dynamique //Objet Groupe Read-Write
     
     
    Sablier(Vrai)
     
    // Connexion au serveur
    QUAND EXCEPTION DANS
    	oServeur>>Connect((NomServeur),(NomOrdi))
    FAIRE
    	FinProgramme("Impossible de se connecter au serveur")
    FIN
     
    // Création des groupes d'accès
    oGroupeR = oServeur>>OPCGroups>>Add(MONGROUPE_R)
    SI oGroupeR = Null ALORS
    	//Le groupe n'a pas pu être créé
    	FinProgramme("Impossible de créer le groupe")
    FIN
    oGroupeR>>IsActive = True
    oGroupeR>>IsSubscribed = True
     
    // création d'un accès à un item simple
    gpautItem = oGroupeR>>OPCItems>>AddItem(sInc, 1)  //ça bloque ici !!
     
    SI gpautItem = Null ALORS
    	// l'item n'a pas pu être créé
    	Erreur("Impossible de créer l'item.")
    	RETOUR
    FIN
    gpautItem>>read(1)
    Info("Valeur: " + gpautItem>>value)
    dés que j'execute mon programme voila l'erreur qui s'affiche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    Erreur à la ligne 23 du traitement Procédure locale Connexion.
    Vous avez appelé la méthode Automation 'AddItem'.
    En tentant d'invoquer la méthode <AddItem> ou de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant d'invoquer la méthode <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas' 
    En tentant d'écrire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas'
     
    ----- Informations techniques -----
     
    Projet : AutomateDialogueOPC
     
    Appel WL :
    Traitement de 'Procédure locale Connexion' (Fen_TestAutomates.PROCEDURE.Connexion), ligne 23, thread 0
     
    Que s'est-il passé ?
    Vous avez appelé la méthode Automation 'AddItem'.
    En tentant d'invoquer la méthode <AddItem> ou de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant d'invoquer la méthode <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas' 
    En tentant d'écrire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas'
     
    Code erreur : 2205
    Niveau : erreur fatale (EL_FATAL)
     
    Dump de l'erreur du module 'WD150VM.DLL' (15.00Pj).
    Identifiant des informations détaillées (.err) : 130001
    Informations supplémentaires :
    EIT_PILEWL :
    Procédure locale Connexion (Fen_TestAutomates.PROCEDURE.Connexion), ligne 23
    Initialisation de Fen_TestAutomates (Fen_TestAutomates), ligne 1
    EIT_DATEHEURE : 02/06/2011 13:07:44
    Une idée ? Des suggestions ?

    Merci d'avance

  2. #2
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    Bonsoir,
    AMHA, le item en question doit être un objet et non une chaine.
    En quelle version de windev êtes-vous ? Il me semble qu'en WD16 la complétion est active pour les activeX ?


    Citation Envoyé par tafisco Voir le message
    Bonjour,
    je debute en programation OCP.
    Je veux ecrire un programme pour lire et ecrire des données dans un automate.
    les données sont les suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    Serveur: Archestra.dasabcipxxx.6
    Machine: maMachine
    OPCLink:myLink
    a travers l'outil OPC Quick CLient, je parviens a voir les données de l'automate en creation des Items.
     
    //Variables globales au projet
    NomOrdi est une chaîne = "maMachine" //Nom de l'ordinateur Hôte du DA Server
    NomServeur est chaîne = "Archestra.dasabcipxxx.6";	//Nom du Da Server
    gcOPCLink est une chaîne = "myLink"	//Nom du Link OPC
    // OPC
    CLIENT_OPC_AUTOMATION est une chaîne = "Graybox.OPC.DAWrapper"			//Nom de l'objet OPC Automation
    //Noms donné aux groupes OPC
    MONGROUPE_R= "GROUPE1"
     
    //Les tableaux OPC automation commence à l'indice 1
    AutomationParamètre(apIndiceBaseTableau,1)
     
    //Code de ma fenetre
    // on instancie un serveur Automation
    gautServeur est un objet Automation CLIENT_OPC_AUTOMATION
    gpautItem est un objet Automation dynamique
     
    sInc est une chaîne="monItem[0]"
    // Vérifie l'existence de l'objet automation
    QUAND EXCEPTION DANS
    	oServeur est un objet Automation CLIENT_OPC_AUTOMATION	//Objet serveur client
    FAIRE
    	Erreur("L'objet automation " + CLIENT_OPC_AUTOMATION + " est introuvable sur le poste en cours.", ExceptionInfo())
    	Ferme()
    FIN
     
    oGroupeR est un objet Automation dynamique //Objet Groupe Read-Write
     
     
    Sablier(Vrai)
     
    // Connexion au serveur
    QUAND EXCEPTION DANS
    	oServeur>>Connect((NomServeur),(NomOrdi))
    FAIRE
    	FinProgramme("Impossible de se connecter au serveur")
    FIN
     
    // Création des groupes d'accès
    oGroupeR = oServeur>>OPCGroups>>Add(MONGROUPE_R)
    SI oGroupeR = Null ALORS
    	//Le groupe n'a pas pu être créé
    	FinProgramme("Impossible de créer le groupe")
    FIN
    oGroupeR>>IsActive = True
    oGroupeR>>IsSubscribed = True
     
    // création d'un accès à un item simple
    gpautItem = oGroupeR>>OPCItems>>AddItem(sInc, 1)  //ça bloque ici !!
     
    SI gpautItem = Null ALORS
    	// l'item n'a pas pu être créé
    	Erreur("Impossible de créer l'item.")
    	RETOUR
    FIN
    gpautItem>>read(1)
    Info("Valeur: " + gpautItem>>value)
    dés que j'execute mon programme voila l'erreur qui s'affiche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    Erreur à la ligne 23 du traitement Procédure locale Connexion.
    Vous avez appelé la méthode Automation 'AddItem'.
    En tentant d'invoquer la méthode <AddItem> ou de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant d'invoquer la méthode <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas' 
    En tentant d'écrire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas'
     
    ----- Informations techniques -----
     
    Projet : AutomateDialogueOPC
     
    Appel WL :
    Traitement de 'Procédure locale Connexion' (Fen_TestAutomates.PROCEDURE.Connexion), ligne 23, thread 0
     
    Que s'est-il passé ?
    Vous avez appelé la méthode Automation 'AddItem'.
    En tentant d'invoquer la méthode <AddItem> ou de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant d'invoquer la méthode <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur C0040008 : '
    En tentant de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas' 
    En tentant d'écrire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
    'Erreur 80020003, Le membre demandé n'existe pas'
     
    Code erreur : 2205
    Niveau : erreur fatale (EL_FATAL)
     
    Dump de l'erreur du module 'WD150VM.DLL' (15.00Pj).
    Identifiant des informations détaillées (.err) : 130001
    Informations supplémentaires :
    EIT_PILEWL :
    Procédure locale Connexion (Fen_TestAutomates.PROCEDURE.Connexion), ligne 23
    Initialisation de Fen_TestAutomates (Fen_TestAutomates), ligne 1
    EIT_DATEHEURE : 02/06/2011 13:07:44
    Une idée ? Des suggestions ?

    Merci d'avance
    Cordialement,
    Christophe Charron

Discussions similaires

  1. [AC-2002] [Automation] Erreur Extraction de données depuis un fichier Excel
    Par raph04 dans le forum VBA Access
    Réponses: 30
    Dernier message: 28/04/2010, 14h09
  2. Erreur de lecture de base de données
    Par ROYER dans le forum Bases de données
    Réponses: 5
    Dernier message: 01/02/2008, 10h53
  3. Erreur de lecture de données dans une requête SQL
    Par PtiteDéveloppeuse dans le forum Requêtes
    Réponses: 0
    Dernier message: 10/01/2008, 11h29
  4. Réponses: 4
    Dernier message: 14/02/2007, 17h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo