Export to PDF
Transcription
Export to PDF
5.5.3.5 Type d'attribut "Formule" (pour utilisateurs experts) - Manuel d'utilisation 5.5.3.5 Type d'attribut "Formule" (pour utilisateurs experts) A l'aide de l'attribut "Formule", vous pouvez utiliser différentes formules vous permettant d'afficher les valeurs d'autres objets, diagrammes etc. dans l'attribut du type "Formule". Dans le Repository, la valeur de l'attribut est remplie automatiquement. Créez dans le Designer un attribut avec le type "Formule". Dans le champ spécial "Formula text", vous pouvez vous-même saisir la formule. Les formules sont écrites en VB (Visual Basic) et vous pouvez utiliser toutes les fonctions API de p4b. Pour la création de la formule, c'est le DBName qui est utilisé (This.DBName). Veuillez noter que les mots clé réservés pour Visual Basic ne doivent pas être utilisés comme DBName de l'objet dans une formule (vous trouverez ici Visual Basic Reserved Keywords http://msdn.microsoft.com/en-us/library/ksh7h19t.aspxhttp://msdn.microsoft.com/en-us/library/ksh7h19t.aspx). Si vous avez un DBName correspondant précisément à un mot clé VB, vous devrez le modifier. Prenez comme base pour vos formules les exemples listés ci-dessous : Exemple Formule Afficher la valeur d'attribut de l'objet lié Dans la classe "A" se trouve un attribut ayant le DBName "Property". Dans un autre attribut avec le type "Formule", la valeur "Property" de l'objet lié de la même classe doit être affichée. Par ex. l'objet "X" de la classe "A" est lié avec l'objet "Y" de la classe "A". L'objet "Y" a la valeur "activé" dans l'attribut "Property". Cette valeur doit maintenant être affichée dans l'attribut avec le type "Formule". Deux variantes possible : 1) "Property" est un Enum : Les noms (pas les numéros) de cet attribut doivent être affichés; 2) "Property" est un type String : Ad 1) This.Linkedobject.Attributestring("Property") Ad 2) This.Linkedobject.Property Afficher la valeur d'attribut du diagramme lié Dans la classe système "Diagramme" se trouve un attribut ayant le DbName "Property". Pour un objet de la classe "A", la valeur de l'attribut "Property" du premier (deuxième, troisième ...) diagramme lié doit être affichée dans l'attribut avec le type "Formule". This.LinkedDiagrams(1).Property ("1" est le numéro d'ordre du diagramme lié) Afficher la valeur d'attribut du diagramme sur lequel l'objet est utilisé Dans la classe système "Diagramme" se trouve un attribut ayant le DbName "Property". Pour un objet de la classe "A", la valeur de l'attribut "Property" du premier (deuxième, troisième ...) diagramme sur lequel l'objet est utilisé doit être affichée dans l'attribut avec le type "Formule". This.Diagrams(1).Property ("1" est le numéro d'ordre du diagramme sur lequel l'objet est utilisé) Afficher la somme des valeurs de plusieurs attributs Dans la classe "A" se trouve 3 attributs ayant les DbNames "Price1", "Price2" et "Price3" avec le type "Double" ou "Integer". Dans un autre attribut avec le type "Formule" de la même classe, la somme de ces valeurs doit être affichée. Price1+Price2+Price3 Afficher la valeur d'attribut d'un objet lié sur un diagramme Dans la classe "Processus" se trouve un attribut ayant le DbName "Owner". Créez dans la classe système "Diagramme" un attribut "Diagram Owner" ayant le type "Formule". Si vous liez un objet de la classe "Processus" avec un diagramme, la valeur de l'attribut "Owner" de l'objet lié doit être affichée dans l'attribut de diagramme "Diagram Owner". Dans l'attribut de diagramme "Diagram Owner" avec le type "Formule", écrivez le texte de formule suivant : This.LinkedObjects.Item(1).Owner Afficher la valeur d'attribut du diagramme parent sur un diagramme Dans la classe système "Diagramme" se trouvent l'attribut "Property" et un autre attribut "Parent Property" avec le type "Formule". La valeur "Poperty" du diagramme parent doit être affichée dans l'attribut "Parent Property". This.ParentDiagram.Property Afficher la valeur d'attribut du diagramme enfant sur un diagramme Dans la classe système "Diagramme" se trouvent l'attribut "Property" et un autre attribut "Child Property" avec le type "Formule". La valeur "Property" du diagramme enfant doit être affichée dans l'attribut "Child Property". This.ChildDiagram.Property Afficher la liste d'attributs de tous les diagrammes liés avec l'objet Un objet de la classe "A" a plusieurs diagrammes liés avec les valeurs remplies de l'attribut "Property". La liste des valeurs de "Property" des diagrammes liés doit être affichée dans un attribut de la classe "A" avec le type "Formule". tmp="" For each o in This.LinkedDiagrams tmp=tmp & o.Property & "; " Next Result=Left(tmp, Len(tmp)-2) La liste d'éléments Enum d'objets d'une classe doit dépendre de la valeur d'attribut d'un objet d'une autre classe. Dans la classe "A" se trouve un attribut "X" avec les éléments Enum "X0", "X1", "X2". Dans la classe B se trouve un attribut Y avec les éléments Enum "Y0", "Y1", "Y2". Si, pour un objet de la classe "A", la valeur d'attribut est mise sur "X1" et cet objet est lié avec un objet de la classe "B", l'élément Enum "Y1" ne doit pas être visible dans la liste d'énumération ni être sélectionnable. Ouvrez les éléments Enum de l'attribut "Y" de la classe B, choisissez l'unité "Y2" et écrivez dans le champ de conditions : This.LinkedObjects(,"A").Item(1).X1=1 ("1" est le numéro d'ordre de l'élément Enum "X1")