Accéder aux propriétés sur les valeurs dans les expressions

Dans les expressions, certains types de données ont des propriétés. Cet article, écrit du point de vue du développeur, explique comment utiliser les littéraux de chaîne dans les expressions. Dans Architect, l'élément de valeur de données Currency contient deux propriétés disponibles :

  • Montant: UNE décimale qui reflète le montant de la devise
  • Code: Chaîne contenant le code ISO 4217 pour la devise.

Par exemple, une devise avec un montant de 5,00 et code de « USD» est 5 dollars américains.

Exemple:  Accéder au montant défini sur la devise

Supposons que vous avez une variable Flow.MyCurrency avec un type de données Currency et que vous souhaitez obtenir le montant défini sur la devise. Architect prend en charge trois méthodes syntaxiques pour accéder à la propriété Amount. 

Méthode Description
Flow.MyCurrency [“Montant”] Cette méthode est valable pour toute propriété dont le nom commence par une lettre et est suivi d’une ou plusieurs lettres, chiffres ou caractères de soulignement.
Flow.MyCurrency [“Montant”]

Cette méthode est valide pour tout nom de propriété, y compris les noms de propriété contenant des espaces ou des points. Il est important de noter que vous accédez à la propriété par le biais d’un littéral, puis par norme. règles échappées appliquer pour le littéral de chaîne. Si une valeur contient un nom de propriété de AM, il n’est pas valide d’y accéder avec la syntaxe indiquée dans le  Exemple. 

Valide

Utilisez un littéral de chaîne comme suit :

Flow.MyCurrency."AM\\PM"

Dans cet exemple, utilisez la barre oblique inversée en tant que séquence d ’ échappement dans le littéral de chaîne. 

Non valide

Avec la méthode Flow.MyCurrency, seul un littéral de chaîne est pris en charge. L’exemple suivant n’est pas valide.

Flow.MyCurrency."Am"+"ount" or Flow.MyCurrency.(Am"+"ount")

Si un nom de propriété contient un caractère à échapper, utilisez des guillemets pour y accéder. Dans l’exemple suivant, nous souhaitons accéder à la page “AM”Nom de propriété sur un type de données. La chaîne correcte est :

Flow.ExampleVar."AM\PM"

Pour plus d’informations sur la façon d’échapper les littéraux de chaîne, voir Utiliser des littéraux de chaîne dans les expressions.

Flow.MyCurrency [“Montant”] Cette méthode est la même que Flux.MaDevise. Cependant, utilisez un opérateur crochet, plutôt qu'un nombre décimal, pour accéder à la propriété. Cette méthode contient à la fois un support d’ouverture et un support de fermeture. Bien que cette notation soit prise en charge, ce n’est pas par défaut affiché dans fonctionnalité YTTY dans les éditeurs d’expression. De plus, l’accès de propriété entre crochets doit être un littéral de chaîne avec l’échappement approprié.

Les exemples ci-dessus utilisent une variable pour accéder à la propriété amount. N’oubliez pas que vous travaillez essentiellement avec la valeur monétaire de la variable monétaire et accédez à une propriété de cette variable. Par exemple, les exemples suivants sont également valides, car MakeCurrency renvoie une valeur monétaire et vous pouvez accéder au montant à partir de la devise renvoyée :

  • MakeCurrency (10.00, “USD”) [“Montant”]
  • MakeCurrency (10.00, “USD”) [“Montant”]
  • MakeCurrency (10.00, “USD”) [“Montant”]

NOT_SET dans les valeurs de données

Dans les expressions, assurez-vous que votre valeur est définie. Si, par exemple, une valeur monétaire est , vous ne pouvez pas accéder à la propriété Montant ou Code. Cet exemple est syntaxiquement valide :

ToCurrency(NOT_SET).Amount

Cependant, une erreur se produit dans exc terminer car vous ne pouvez pas accéder à la propriété Amount devise. La meilleure pratique vous recommande de confirmer qu’une valeur de données est avant d’accéder à une propriété dessus.