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

4D Discussion :

Commande OB LIRE NOMS PROPRIÉTÉS


Sujet :

4D

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 37
    Points : 30
    Points
    30
    Par défaut Commande OB LIRE NOMS PROPRIÉTÉS
    Bonjour,

    La commande "Lire mesures base" retourne un objet(langage).

    OB LIRE NOMS PROPRIÉTÉS(Lire mesures base;$tabNoms;$tabTypes)
    L'unique élément de $tabNoms contient ici "DB"

    OB LIRE NOMS PROPRIÉTÉS(Lire mesures base.DB;$tabNoms;$tabTypes)
    Les éléments ici plus nombreux de $tabNoms contiennent notamment "tables"

    OB LIRE NOMS PROPRIÉTÉS(Lire mesures base.DB.tables;$tabNoms;$tabTypes)
    Etc…

    J'ai cherché dans la doc 4D ce qui permet de désigner un objet comme argument, à l'aide du nom d'une propriété contenu dans le tableau $tabNoms.

    Je cherche dans le langage de quoi assembler des expression textuelles permettant de désigner un objet.

    Dans ce cas comment assembler Lire mesures base+"."+$tabNoms{$i} dans une boucle.

    Cela parait-il possible à quelqu'un ?

    Merci d'avance s'il y a une piste.

  2. #2
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 40
    Points : 66
    Points
    66
    Par défaut
    Bonjour

    OB Get est là pour ça (OB lire en FR)

    Exemple

    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
     
    array text($tabNoms;0)
    OB GET PROPERTY NAMES(Get database measures.DB;$tabNoms;$tabTypes)
     
    ARRAY OBJECT($tabObjets;0)
     
    For ($i;1;Size of array($tabNoms))
    	if(OB Get type(Get database measures.DB;$tabNoms{$i})=Is object)
    		APPEND TO ARRAY($tabObjets;OB Get(Get database measures.DB;$tabNoms{$i}))
    	end if
    End for 
     
    ARRAY OBJECT($tabSousObjets;0)
     
    For ($i;1;Size of array($tabObjets))
    	array text($tabNoms;0)
    	OB GET PROPERTY NAMES($tabObjets{$i};$tabNoms;$tabTypes)
    	For($j;1;Size of array($tabNoms))
    		If (OB Get type($tabObjets{$i};$tabNoms{$j})=Is object)
    			APPEND TO ARRAY($tabSousObjets;OB Get($tabObjets{$i};$tabNoms{$j}))
    		End if 
    	end for
    end for
     
    //Etc..

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 37
    Points : 30
    Points
    30
    Par défaut
    Merci bien jmbiraghi, c'est exactement ce que je cherchais. Je vais pouvoir avancer. Très bon week end à vous.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 162
    Points : 193
    Points
    193
    Par défaut
    Bonjour,

    Il y a la notation à crochets aussi.
    $ob:=Lire mesures base
    $ob.DB.tables["maTable"]

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 37
    Points : 30
    Points
    30
    Par défaut
    C'est quelque-chose de ce genre qui me trottait dans la tête.
    C'est dire combien la réponse trouvée ici m'a été utile.
    Bon week end.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // Exemple : $voTest:=OBmontage (Lire mesures base;"DB";"tables";"Villes")
    // Exemple : $voTest:=OBmontage (Lire mesures base.DB.tables;"Villes")
      // ----------------------------------------------------
    Méthode OBmontage :
    C_OBJET($0;$1)
    C_TEXTE(${2})
    $0:=$1
    Boucle ($i_A;2;Nombre de paramètres)
    $0:=OB Lire($0;${$i_A})
    Fin de boucle 
      // ----------------------------------------------------

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment lire les propriétés d'une imprimante ?
    Par zidenne dans le forum Langage
    Réponses: 18
    Dernier message: 06/08/2010, 11h26
  2. Réponses: 9
    Dernier message: 03/12/2007, 14h50
  3. lire nom de fichier pour sauvegarde ensuite sur presse papier
    Par chapeau_melon dans le forum VBScript
    Réponses: 3
    Dernier message: 21/03/2007, 20h35
  4. [c#] lire les propriété d'une image
    Par wayak3 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 12/10/2006, 13h07

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