Altova MapForce 2024 Enterprise Edition

Convertit un nombre en un string et le formate conformément aux options spécifiées.

mf-func-format-number

 

Langages

Built-in, C++, C#, Java, XSLT 1.0, XSLT 2.0, XSLT 3.0.

 

Paramètres

Argument

Description

value

Argument obligatoire. Fournit le nombre à formater.

format

Argument obligatoire. Fournit un string de format qui identifie la manière avec laquelle le nombre doit être formaté. Voir "Remarques" ci-dessous.

decimal-point-format

Argument optionnel. Fournit le caractère à utiliser en tant que le caractère de point décimal. La valeur par défaut est le caractère de point final ( . ).

grouping-separator

Argument optionnel. Fournit le caractère utilisé pour séparer des groupes de nombres. La valeur par défaut est le caractère de virgule ( , ).

 

Note :Si la sortie de la fonction (résultat) est connectée à un item de type différent d’un string, le formatage peut être perdu lorsque la valeur est amenée vers le type de cible. Pour désactiver ce cast automatique, supprimer les cases à cocher Valeurs cibles cast vers les types de cible dans les Paramètres de composant du composant cible.

 

Remarques

L’argument format prend la forme suivante :

 

format := subformat (;subformat)?

 subformat := (prefix)? integer (.fraction)? (suffix)?

 prefix := any characters except special characters

 suffix := any characters except special characters

 integer := (#)* (0)* ( allowing ',' to appear)

 fraction := (0)* (#)* (allowing ',' to appear)

 

Le premier subformat est utilisé pour formater des nombres positifs, et le second subformat pour des nombres négatifs. Si un seul subformat est spécifié, alors le même sous-format sera utilisé pour des nombres négatifs, mais avec un signe négatif rajouté avant le prefix.

 

Caractère spécial

Défaut

echo Hello, World!

zero-digit

0

Un nombre apparaîtra toujours à cet endroit du résultat

digit

#

Un nombre apparaîtra à cet endroit du string de résultat à moins qu’il s’agisse d’un zéro de début ou de fin redondant

decimal-point

.

Sépare l’entier et la partie fractionnelle du nombre

grouping-separator

,

Sépare des groupes de chiffres.

percent-sign

%

Multiplie le nombre par 100 et le montre en tant que pourcentage.

per-mille

Multiplie le nombre par 1000 et le montre en tant que pourmille.

 

La table ci-dessous illustrate des exemples des strings de format et leur résultat.

 

Note:La méthode d’arrondissement utilisée par la fonction format-number est "half up", ce qui signifie que la valeur est arrondie si la fraction est supérieure ou égale à 0.5 La valeur est arrondie vers le bas si la fraction est inférieure à 0.5. Cette méthode d’arrondissement s’applique uniquement au code de programme généré et le moteur d’exécution Built-In. Dans XSLT 1.0, le mode d’arrondissement est non-défini. Dans XSLT 2.0, le mode d’arrondissement est "round-half-to-even".

 

Numéro

String de Format

Résultat

1234,5

#,##0.00

1 234,50

123,456

#,##0.00

123,46

1000000

#,##0.00

1 000 000,00

-59

#,##0.00

-59,00

1234

###0.0###

1234,0

1234,5

###0.0###

1234,5

.00025

###0.0###

0,0003

.00035

###0.0###

0,0004

0,25

#00%

25%

0,736

#00%

74%

1

#00%

100%

-42

#00%

-4200%

-3,12

#.00;(#.00)

(3.12)

-3,12

#.00;#.00CR

3.12CR

 

Exemple

Le mappage illustré ci-dessous lit des données provenant d’un XML de source et l’écrit dans un XML cible. Il existe plusieurs éléments SinglePrice dans la source qui contient les valeurs décimales suivantes : 25, 2.30, 34, 57.50. Le mappage a deux objectifs :

 

1.Remplir toutes les valeurs avec des zéros à gauche de manière à ce que la partie importante prenne exactement 5 chiffres

2.Remplir toutes les valeurs avec des zéros à droite de manière à ce que la partie importante prenne exactement 2 chiffres

 

Pour ce faire, le string de format 00000.00 a été fourni en tant qu’argument à la fonction format-number.

mf_map_PreserveFormatting

PreserveFormatting.mfd

Par conséquent, les valeurs dans la cible sont devenues :

 

00025,00

00002,30

00034,00

00057,50

 

Vous pouvez trouver le fichier de design de mappage sous le chemin suivant: <Documents>\Altova\MapForce2024\MapForceExamples\PreserveFormatting.mfd.

© 2018-2024 Altova GmbH