Réserver une Démo
Pré. Proc.

Convertir les noms

Les différentes plateformes cibles utilisent des conventions de dénomination différentes. Il est donc possible que vous ne souhaitiez pas copier les noms de vos éléments directement dans les modèles transformés. Pour faciliter cette exigence, les gabarits de transformation fournissent une macro de fonction CONVERT_NAME.

Une autre façon de transformer un nom est de supprimer un préfixe du nom d'origine, avec la macro REMOVE_PREFIX.

CONVERT_NAME (<nom d'origine>, <format d'origine>, <format cible>)

Cette macro convertit <originalName>, qui est supposé être dans <originalFormat>, en <targetFormat>.

Les formats pris en charge sont :

  • Camel Case : le premier mot commence par une lettre minuscule, mais les mots suivants commencent par une lettre majuscule ; par exemple, myVariableTable
  • Pascal Case : la première lettre de chaque mot est en majuscule ; par exemple, MyVariableTable
  • Espacé : les mots sont séparés par des espaces ; la casse des lettres est ignorée
  • Souligné : les mots sont séparés par des traits de soulignement ; la casse des lettres est ignorée
Le format d'origine peut également spécifier une liste de délimiteurs à utiliser. Par exemple, une valeur de '_' coupe les mots chaque fois qu'un espace ou un trait de soulignement est trouvé. Le format cible peut également utiliser une string de format qui spécifie la casse de chaque mot et un délimiteur entre eux. Cela prend la forme suivante :

<premierMot> (<délimiteur>) <autresMots>

  • <firstWord> contrôle la casse du premier mot
  • <delimiter> est la string générée entre les mots
  • <otherWords> s'applique à tous les mots après le premier mot
<firstWord> et <otherWords> sont tous deux une séquence de deux caractères. Le premier caractère représente la casse de la première lettre de ce mot, et le deuxième caractère représente la casse de toutes les lettres suivantes. Une lettre majuscule force la sortie en majuscules, une lettre minuscule force la sortie en minuscules, et tout autre caractère préserve la casse d'origine.

Exemple 1 : Pour mettre en majuscule la première lettre de chaque mot et séparer plusieurs mots par un espace :

"Ht()Ht" pour afficher "Mon Tableau de Variables"

Exemple 2 : Pour générer l'équivalent de Camel Case, mais en inversant les rôles des majuscules et des minuscules ; c'est-à-dire que tous les caractères sont en majuscules, à l'exception du premier caractère de chaque mot après le premier mot :

"HT()hT" pour afficher "MA table de variables"

REMOVE_PREFIX(<nom d'origine>,<prefixes> )

Cette macro supprime tout préfixe trouvé dans <prefixes> de <originalName>. Les préfixes sont spécifiés dans une liste séparée par des points-virgules.

La macro est souvent utilisée en conjonction avec la macro CONVERT_NAME. Par exemple, ce code crée un nom de propriété get en fonction des options pour Java :

$propertyName=%REMOVE_PREFIX(attName,genOptPropertyPrefix)%

%si genOptGenCapitalisedProperties=="T"%

$propertyName=%CONVERT_NAME($propertyName, "cas chameau", "cas pascal")%

%finSi%

Notes

  • Les acronymes ne sont pas pris en charge lors de la conversion depuis Camel Case ou Pascal Case