Astuces pour les gabarits
Ces astuces peuvent vous aider à utiliser des gabarits plus efficacement.
Utilisation d'attributs dans des calculs
Convertir le texte au format numérique
double(GetValue("ASSEMBLY_TOP_LEVEL"))
Convertir au format correct pour le calcul (double=décimales)
format(double(GetValue("ASSEMBLY_TOP_LEVEL")),"Longueur", "mm", 1)
Ajout de tous les éléments ci-dessus dans la formule de calcul
format(double(GetValue("ASSEMBLY_TOP_LEVEL")),"Longueur", "mm", 1)+15000
Autre exemple pour le niveau de pièce
(double(GetValue("TOP_LEVEL"))-(double(GetValue("BOTTOM_LEVEL"))))*1000
Modification du contenu du champ de valeur pour utiliser des unités impériales
Option avancée pour vérifier si des unités impériales sont utilisées :
GetValue("ADVANCED_OPTION.XS_IMPERIAL")==TRUE
Appel de chaîne traduit pour texte multilingue :
GetValue("TranslatedText("albl_Diameter_")")
Formatage des unités :
format(GetValue("DIAMETER"),"Length","inch-frac", 1/16)
format(GetValue("DIAMETER"),"Length","mm", 1)
Combinaison de tous les éléments ci-dessus dans une règle :
if GetValue("ADVANCED_OPTION.XS_IMPERIAL")==TRUE then
GetValue("TranslatedText("albl_Diameter_")")+ format(GetValue("DIAMETER"),"Length","inch-frac", 1/16) + " Inches"
else
GetValue("TranslatedText("albl_Diameter_")")+ format(GetValue("DIAMETER"),"Length","mm", 1)+" mm"
endif
Définition du format de date personnalisé
Utilisation de la fonction mid pour trouver l'année, le mois et le jour :
mid("","","") string, offset, n
année :
mid(format(GetValue("DATE"),"Date","jj.mm.aaaa", ),"6","4")
mois :
mid(format(GetValue("DATE"),"Date","jj.mm.aaaa", ),"3","2")
jours :
mid(format(GetValue("DATE"),"Date","jj.mm.aaaa", ),"0","2")
Combinaison de tous les éléments ci-dessus dans une règle :
mid(format(GetValue("DATE"),"Date","jj.mm.aaaa", ),"6","4")+"-"+
mid(format(GetValue("DATE"),"Date","jj.mm.aaaa", ),"3","2")+"-"+
mid(format(GetValue("DATE"),"Date","jj.mm.aaaa", ),"0","2")
Numéro de feuille de croquis béton ou d'assemblage
Utilisation de la fonction match pour trouver le caractère « - »
match(GetValue("NAME_BASE"),"*-*")
Utilisation de la fonction mid pour retourner uniquement des caractères après « - »
mid(GetValue("NAME_BASE"),(1+(find(GetValue("NAME_BASE"),"-"))),2)
Combinaison de tous les éléments ci-dessus dans une règle
if (match(GetValue("NAME_BASE"),"*-*"))
then mid(GetValue("NAME_BASE"),(1+(find(GetValue("NAME_BASE"),"-"))),2)
else ""
endif
Utilisation des fonctions de format dans des champs de valeur
Vous pouvez définir le format utilisé dans un champ de valeur de deux manières : dans la boîte de dialogue Propriétés champ texte, renseignez les champs Type donnée, Signification, Unité et Décimales, ou créez une formule dans le champ Formule. Dans les formules, vous pouvez insérer la fonction de format qui convertit une valeur d'attribut en chaîne d'informations mise en forme.
Lorsque vous insérez une fonction de format dans une formule, définissez toujours le Type de donnée sur Texte dans la boîte de dialogue Propriétés champ texte. Les autres champs de la zone Format doivent rester vides.
Par exemple, si vous souhaitez convertir la valeur d'attribut en nombre décimal dans la liste, il faut inclure la fonction de conversion double
dans la fonction de format :
Les valeurs par défaut des unités et des décimales sont définies dans le fichier contentattributes_global.lst. La fonction de format convertit la valeur d'attribut en chaîne d'informations mise en forme selon ce que vous avez défini dans la fonction de format. La fonction de format prime sur les définitions figurant dans le fichier contentattributes_global.lst et les paramètres définis dans la zone Format de la boîte de dialogue Propriétés champ texte.
Exemple de résultat dans une liste reposant sur la formule ci-dessus :
Mesh Information:
Geometry Size: 4/4-150/150-2750*2000
Length: 9'-1/4"
Height: 6'-6 3/4"
Exemple de résultat de la formule lorsque vous définissez l'option avancée XS_IMPERIAL
sur FALSE
, et non sur TRUE
:
Mesh Information:
Geometry Size: 4/4-150/150-2750*2000
Length: 2750 mm
Height: 2000 mm
Pour une liste des chaînes de caractère d’unité et de précision valides, voir le fichier valuefieldclasses.lst situé dans le répertoire ..\Program Files\Tekla Structures\<version>\bin\applications\Tekla\Tools\TplEd\settings. N'effectuez pas de modifications dans ce fichier. Voici un exemple de contenu du fichier, qui peut varier entre les versions de Tekla Structures.
// ---------------------------------------------------------------------------------------
//
// - Use only letters, numbers, slashes and underlines.
//
// ---------------------------------------------------------------------------------------
//
// Class = units { presicions }
Length = mm, dm, cm, m, inch, ft, yd, inch-frac {1/2, 1/4, 1/8, 1/16 }, ft-frac { 1/2, 1/4, 1/8, 1/16 }
Angle = Degrees, radians
Area = mm2, cm2, dm2, m2, sq.inch, sq.ft, sq.yd
Area/length = mm2/m, cm2/m, dm2/m, m2/m, in2/in, in2/ft, ft2/ft, sq.yd/ft
Volume = mm3, cm3, dm3, m3, cu.in, cu.ft, cu.yd
Weight = kg, T, N, lbf, kip
Weight/length = kg/m, T/m, N/m, daN/m, kN/m, lbf/ft
Density = kg/m3, T/m3, N/m3, kN/m3, lbf/ft3
Temperature = Kelvin, Celsius, Fahrenheit
Section_modulus = mm3, cm3, in3
Moment_of_inertia = mm4, cm4, in4
Warping_modulus = mm6, cm6, in6
Force = kg, T, N, daN, kN, lbf, kip
Force/length = kg/m, T/m, N/m, daN/m, kN/m, lbf/in, lbf/ft, kip/in, kip/ft
Force/area = kg/m, kg/cm, kg/mm, T/m, T/cm, T/mm, N/m, N/cm, N/mm, daN/m, daN/cm, daN/mm, kN/m, kN/cm, kN/mm, lbf/in, lbf/ft, kip/in, kip/ft
Moment = kgm, Tm, Nm, daNm, kNm, lbf-in, lbf-ft, kip-in, kip-ft
Moment/length = kgm/m, Tm/m, Nm/m, daNm/m, kNm/m, lbf-ft/ft, kip-ft/ft
Stress = kg/m2, kg/cm2, kg/mm2, T/m2, T/cm2, T/mm2, N/m2, N/cm2, N/mm2, daN/m2, daN/cm2, daN/mm2, kN/m2, kN/cm2, kN/mm2, psi, psf, ksi, ksf
Date = dd.mm.yyyy, mm.dd.yyyy, mm/dd/yyyy, yyyy/mm/dd, dd-mm-yy, dd-mm-yy, yyyy-mm-dd, dd/mm/yy
Time = hh:mm:ss, hh:mm:ss:am/pm
Date&&Time = dd.mm.yyyy, mm.dd.yyyy, mm/dd/yyyy, yyyy/mm/dd, dd-mm-yy, dd-mm-yyyy, yyyy-mm-dd, dd/mm/yy
Date_local = dd.mm.yyyy, mm.dd.yyyy, mm/dd/yyyy, yyyy/mm/dd, dd-mm-yy, dd-mm-yyyy, yyyy-mm-dd, dd/mm/yy
Time_local = hh:mm:ss, hh:mm:ss:am/pm
Date&&Time_local = dd.mm.yyyy, mm.dd.yyyy, mm/dd/yyyy, yyyy/mm/dd, dd-mm-yy, dd-mm-yyyy, yyyy-mm-dd, dd/mm/yyLeadingZeroes
LeadingZeroes
DistanceList = mm, dm, cm, m, inch, ft, yd, inch-frac {1/2, 1/4, 1/8, 1/16 }, ft-frac { 1/2, 1/4, 1/8, 1/16 }