Passer au contenu principal
Workday User Guide
Dernière mise à jour : 2024-06-28
Référence rapide de l'expression Prism

Référence rapide de l'expression Prism

Fonctions de conversion

Fonction
Description
Exemple
Création d'un champ Devise à partir d'un
NUMERIC
valeur et une
TEXT
ou
INSTANCE
Valeur qui contient un code de devise valide. Lorsque le code de devise n'est pas valide, cette fonction renvoie NULL.
BUILD_CURRENCY([Sale Price], [Currency Code])
Convertit les valeurs de données d'un type de champ (type de données) en un autre.
CAST([Region] AS Instance(eecb565181284b6a8ae8b45dc3ed1451))
CAST(99.99 AS decimal(10,3))
retours
99.990
.
CAST(99.99 AS decimal(20,2))
retours
99.99
.
CAST(99.999 AS decimal(10,2))
retours
100.00
.
Conversion
LONG
valeurs à
DATE
L'entrée représente le nombre de millisecondes depuis la date de référence.
EPOCH_MS_TO_DATE(1360260240000) returns
2013-02-07T18:04:00:000Z
Prend une valeur Devise et extrait le montant numérique sous la forme d'un
NUMERIC
valeur.
EXTRACT_AMOUNT([Salary])
Prend une
CURRENCY
et extrait le code de la devise sous forme de
INSTANCE
valeur.
EXTRACT_CODE([Salary])
Prend une
CURRENCY
et extrait le code de la devise sous la forme d'un
TEXT
valeur.
EXTRACT_CODE_TEXT([Salary])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, ou
NUMERIC
valeurs à
BOOLEAN
.
TO_BOOLEAN([is_contingent])
Conversion
TEXT
qui contiennent des données valides formatées en devise pour
CURRENCY
valeurs.
TO_CURRENCY("1234.56 USD")
TO_CURRENCY(CONCAT(TO_STRING([Grant Price]), [Grant Code]))
Conversion
TEXT
valeurs à
DATE
valeurs et spécifie le format des éléments de date et d'heure dans la chaîne.
TO_DATE([order_date],"yyyy.MM.dd 'at' HH:mm:ss z")
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
,
DOUBLE
, ou
NUMERIC
valeurs à
NUMERIC
avec le nombre de chiffres par défaut avant et après la virgule.
TO_DECIMAL([average_rating])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, ou
DOUBLE
valeurs à
DOUBLE
(un type de numérique) valeurs.
TO_DOUBLE([average_rating])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
, ou
DOUBLE
valeurs à
INTEGER
(nombre entier) valeurs. Lors de la conversion
DOUBLE
Les valeurs après la décimale seront tronquées (et non arrondies à la hausse ou à la baisse).
TO_INT([average_rating])
Conversion
TEXT
,
BOOLEAN
,
INTEGER
,
LONG
,
DECIMAL
,
DATE
, ou
DOUBLE
valeurs à
Long
(nombre entier) valeurs. Lors de la conversion
Decimal
ou
DOUBLE
Les valeurs après la décimale seront tronquées (et non arrondies à la hausse ou à la baisse).
TO_LONG([average_rating])
Convertit les valeurs d'autres types de données en
TEXT
(caractères).
TO_STRING([sku_number])

Fonctions de date

Fonction
Description
Exemple
Ajoute l'intervalle de temps spécifié à un
DATE
valeur.
DATE_ADD([invoice_date], 45, "day")
Calcule le temps entre 2
DATE
valeurs (
value1
-
value2
) et la tronque en jours (comptabilité de l'heure d'été).
DAYS_BETWEEN([ship_date], [order_date])
Renvoie la partie spécifiée d'une
DATE
valeur.
EXTRACT("hour",[order_date])
Calcule le nombre entier des heures (en ignorant les minutes, les secondes et les millisecondes) entre deux
DATE
valeurs (
value1
-
value2
).
HOURS_BETWEEN([ship_date],[order_date])
Calcule le nombre entier des millisecondes entre deux
DATE
valeurs (
value1
-
value2
).
MILLISECONDS_BETWEEN([request_timestamp], [response_timestamp])
Calcule le nombre entier de minutes (en ignorant les secondes et les millisecondes) entre deux
DATE
valeurs (
value1
-
value2
).
MINUTES_BETWEEN([impression_timestamp], [conversion_timestamp])
Calcule le nombre entier de secondes (sans tenir compte des millisecondes) entre deux
DATE
valeurs (
value1
-
value2
).
SECONDS_BETWEEN([impression_timestamp], [conversion_timestamp])
Renvoie la date et l'heure système du jour sous la forme d'un
DATE
Valeur (absence de temps). Il peut être utilisé dans d'autres expressions impliquant :
DATE
Champs de type, tels que
YEAR_DIFF
. Notez que la valeur de
TODAY
n'est évalué qu'au moment de la publication d'un jeu de données (il n'est pas réévalué à chaque requête).
YEAR_DIFF(TODAY(), [birthdate])
Tronque un
DATE
Valeur au format spécifié.
TRUNC(TO_DATE([order_date], "MM/dd/yyyy HH:mm:ss"), "day")
Calcule le nombre fractionnaire d'années entre deux
DATE
valeurs (
value1
-
value2
).
YEAR_DIFF(TODAY(), [birthdate])

Fonctions d'information

Fonction
Description
Exemple
Retours
0
si la valeur renvoyée est
NULL
, et
1
si la valeur renvoyée est
NOT NULL
. Ceci est utile pour effectuer d'autres calculs pour lesquels vous souhaitez exclure les valeurs NULL (par exemple lors du calcul des moyennes).
IS_VALID([sale_amount])

Fonctions d'instance

Fonction
Description
Exemple
Crée un champ Multi-instance à partir d'un ou plusieurs champs Multi-instance ou Instance fournis.
CREATE_MULTI_INSTANCE([Journal1], [Journal2], [Journal3])
Compare un champ Multi-instance ou Instance à un champ Multi-instance, à un champ Instance ou à une liste de valeurs d'instance et renvoie Vrai si au moins une valeur d'instance existe dans le premier argument et Faux si aucune d'entre elles n'existe. .
INSTANCE_CONTAINS_ANY([Worktags], [Cost Center 1], [Cost Center 2])
Renvoie le nombre total de valeurs d'instance dans un champ Multi-instance ou Instance. Cette fonction renvoie 0 lorsque le champ est vide.
INSTANCE_COUNT([Journal Lines])
Compare un champ Multi-instance ou Instance à un champ Multi-instance, à un champ Instance ou à une liste de valeurs d'instance et vérifie si le premier argument correspond exactement aux valeurs d'instance fournies dans les autres arguments.
INSTANCE_EQUALS([Worktags], [Cost Center 1], [Cost Center 2])
Compare un champ Multi-instance à un champ Multi-instance, à un champ Instance ou à une liste de valeurs d'instance et renvoie Vrai si chaque valeur d'instance existe dans le premier argument et Faux si au moins une valeur n'existe pas.
INSTANCE_IS_SUPERSET_OF([Worktags], [Cost Center 1], [Cost Center 2])

Fonctions logiques

Fonction
Description
Exemple
Évalue chaque ligne du jeu de données en fonction d'une ou plusieurs conditions d'entrée et produit le résultat spécifié en sortie lorsque les conditions d'entrée sont satisfaites.
CASE WHEN [gender] = "M" THEN "Male" WHEN [gender] = "F" THEN "Female" ELSE "Unknown" END
Renvoie la première valeur valide (
NOT NULL
value) à partir d'une liste d'expressions séparées par des virgules.
COALESCE([hourly_wage] * 40 * 52, [salary])

Fonctions mathématiques

Fonction
Description
Exemple
DIV
Divise deux
LONG
valeurs et renvoie une valeur de quotient de type
LONG
(le résultat est tronqué à 0 décimale).
DIV(TO_LONG([file_size]), 1024)
EXP
Augmente la constante mathématique
e
à la puissance (exposant) d'une valeur numérique et renvoie une valeur de type
DOUBLE
.
EXP([Value])
Renvoie le plus grand nombre entier inférieur ou égal à l'argument d'entrée.
FLOOR(32.6789) returns
32.0
Répartit à parts égales les valeurs de données dans le nombre spécifié de compartiments. Il crée un hachage de la valeur d'entrée et lui attribue un nombre de compartiments. Les valeurs égales sont toujours hachées dans le même nombre de compartiments.
HASH([username],20)
LN
Renvoie le logarithme naturel d'un nombre. Le logarithme naturel est le logarithme de la base.
e
, où
e
(Nombre d'Euler) est une constante mathématique égale à 2,718281828. Le logarithme naturel d'un nombre
x
est la puissance à laquelle la constante
e
doit être augmenté pour être égal à
x
.
LN(2.718281828) returns
1
MOD
Divise 2
LONG
ou
INTEGER
valeurs et renvoie la valeur restante de type
LONG
ou
INTEGER
(le résultat est tronqué à 0 décimale).
MOD(TO_LONG([file_size]), 1024)
POW
Augmente la valeur numérique à la puissance (exposant) d'une autre valeur numérique et renvoie une valeur de type
DOUBLE
.
100 * POW([end_value]/[start_value], 0.2) - 1
Arrondit une valeur numérique au nombre spécifié de décimales et renvoie une valeur de type
DOUBLE
.
ROUND(32.4678954,2) returns
32.47

Fonctions de texte

Fonction
Description
Exemple
Compare deux
TEXT
arguments représentant un masque CIDR et une adresse IP, et renvoie
1
si l'adresse IP se situe dans le masque de sous-réseau spécifié ou
0
dans le cas contraire.
CIDR_MATCH("60.145.56.0/24", "60.145.56.246") returns
1
Renvoie une
TEXT
en concaténant (combinant) les résultats de plusieurs
TEXT
expressions.
CONCAT([month], "/", [day], "/", [year])
Extrait la valeur de l'identifiant de cookie donné à partir d'une liste délimitée par des points-virgules de paires clé/valeur de cookies. Cette fonction peut être utilisée pour extraire une valeur de cookie spécifique de la colonne Cookie d'un journal d'accès web combiné.
EXTRACT_COOKIE("SSID=ABC; vID=44", "vID") returns
44
Extrait la valeur de la clé donnée d'une chaîne contenant des paires clé/valeur délimitées.
EXTRACT_VALUE("firstname;daria|lastname;hutch", "lastname", ";", "|") returns
hutch
Renvoie le nom de fichier d'origine du système de fichiers source lorsque les données proviennent d'un jeu de données de base. Si vous débutez dans Workday, vous ne disposez pas des accès appropriés pour créer ou modifier des jeux de données de base.
TO_DATE(SUBSTRING(FILE_NAME(), 0, 8), "yyyyMMdd")
Convertit un code hexadécimal
TEXT
à une représentation en texte d'une adresse IP.
HEX_TO_IP(AB20FE01) returns
171.32.254.1
Renvoie un nombre entier indiquant la position d'un caractère dans une chaîne qui est le premier caractère de l'occurrence d'une sous-chaîne. Le
INSTR
La fonction FIND est similaire à la fonction FIND d'Excel, sauf que la première lettre est en position 0 et que l'ordre des arguments est inversé.
INSTR([url], "http://", -1, 1)
Renvoie la version sans échappement d'une séquence d'échappement de caractère Java Unicode sous la forme d'un
TEXT
valeur.
CASE WHEN [currency] == JAVA_STRING("\u00a5") THEN "yes" ELSE "no" END
Renvoie une
TEXT
en concaténant (combinant) les résultats de plusieurs
TEXT
avec le séparateur entre chaque valeur non nulle.
JOIN_STRINGS("/", [month], [day], [year])
Extrait une
NUMERIC
Valeur d'un champ d'un objet JSON.
JSON_DECIMAL([top_scores], "test_scores.2")
Extrait une
DOUBLE
Valeur d'un champ d'un objet JSON.
JSON_DOUBLE([top_scores], "test_scores.2")
Extrait une
INTEGER
Valeur d'un champ d'un objet JSON.
JSON_INTEGER([top_scores], "test_scores.2")
Extrait une
LONG
Valeur d'un champ d'un objet JSON.
JSON_LONG([top_scores], "test_scores.2")
Extrait une
TEXT
Valeur d'un champ d'un objet JSON.
JSON_STRING([misc], "hobbies.0")
Renvoie le nombre de caractères d'un
TEXT
valeur.
LENGTH([name])
Renvoie plusieurs valeurs de sortie groupées dans une chaîne unique de paires clé/valeur séparées par les séparateurs de clés et de paires par défaut. La chaîne renvoyée respecte un format qui peut être lu par l'utilisateur
EXTRACT_VALUE
fonction.
PACK_VALUES
utilise les mêmes valeurs de séparateur de clés et de paires que
EXTRACT_VALUE
utilise les séquences d'échappement Unicode.
u0003
et
u0002
, respectivement).
PACK_VALUES("ID", [custid], "Age", [age])
Effectue une correspondance de chaîne entière par rapport à
TEXT
Valeur avec une expression régulière et renvoie la partie de la chaîne correspondant au premier groupe de capture de l'expression régulière.
REGEX([email], "^[a-zA-Z0-9._%+-]+@
([a-zA-Z0-9._-]+)
\.[a-zA-Z]{2,4}$")
Évalue une
TEXT
value par rapport à une expression régulière afin de déterminer s'il existe une correspondance, et remplace les chaînes correspondantes par la valeur de remplacement spécifiée.
REGEX_REPLACE([phone_number], "([0-9]{3})\.([[0-9]]{3})\.([[0-9]]{4})", "\($1\) $2-$3")
Renvoie les caractères d'une valeur de chaîne dans l'ordre inverse.
REVERSE("123 Main Street")
Renvoie les caractères spécifiés du
TEXT
Valeur en fonction de la position de départ donnée et de la position de fin facultative.
SUBSTRING([name], 0, 1)
Convertit tous les caractères alphabétiques d'un
TEXT
valeur en minuscules.
TO_LOWER("123 Main Street") returns
123 main street
Renvoie une
TEXT
Valeur avec la première lettre de chaque mot en majuscule.
TO_PROPER("123 Alameda de las Pulgas, San Mateo CA")
Convertit tous les caractères alphabétiques d'un
TEXT
valeur en majuscules.
TO_UPPER("123 Main Street")
Retire les espaces de début et de fin de
TEXT
valeur.
TRIM([area_code])
Prend XML et renvoie la première chaîne correspondant à l'expression XPath donnée.
XPATH_STRING([address], "//address[@type='home']/zipcode")

Fonctions URL

Fonction
Description
Exemple
Renvoie la partie autorité d'une chaîne URL. La partie autorité d'une URL est la partie qui contient les informations sur la manière de localiser le serveur et de s'y connecter.
URL_AUTHORITY("http://user:password@mycompany.com:8012/mypage.html")
Renvoie la partie fragment d'une chaîne URL.
URL_FRAGMENT("http://workday.com/news.php?topic=press#Workday%20News")
Renvoie la partie hôte, domaine ou adresse IP d'une chaîne d'URL.
URL_HOST("http://user:password@mycompany.com:8012/mypage.html")
Renvoie la partie chemin d'une chaîne URL.
URL_PATH("http://workday.com/company/contact.html")
Renvoie la partie port d'une chaîne d'URL.
URL_PORT("http://user:password@mycompany.com:8012/mypage.html")
Renvoie la partie protocole (ou nom du schéma d'URI) d'une chaîne URL.
URL_PROTOCOL("http://www.workday.com")
Renvoie la partie requête d'une chaîne URL.
URL_QUERY("http://workday.com/news.php?topic=press&timeframe=today")
Décode un
TEXT
valeur qui a été encodée avec la valeur
application/x-www-form-urlencoded
Type de média.
URLDECODE("N%2FA%20or%20%22not%20applicable%22")

Fonctions de fenêtre

Fonction
Description
Exemple
AVG
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la moyenne de toutes les valeurs numériques valides du groupe. Elle additionne toutes les valeurs du groupe et divise cette somme par le nombre de lignes valides (NOT NULL). Vous pouvez utiliser
AVG
pour calculer les moyennes mobiles.
AVG([Sales]) OVER( PARTITION BY [Employee] ORDER BY [SalesDate] DESC ROWS UNBOUNDED PRECEDING)
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie le nombre total de lignes valides (NOT NULL) dans le groupe. Vous pouvez utiliser
COUNT
avec d'autres fonctions pour calculer les cumuls cumulés.
COUNT([Sales]) OVER( PARTITION BY [Employee] ORDER BY [SalesDate] DESC ROWS UNBOUNDED PRECEDING)
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la valeur de la première ligne du groupe.
LAG
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la valeur d'un champ de la ligne au décalage spécifié avant (au-dessus de) la ligne actuelle dans le groupe.
[Salary] - (LAG([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] ASC) )
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la valeur de la dernière ligne du groupe.
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la valeur d'un champ de la ligne au décalage spécifié après (en dessous de) la ligne actuelle dans le groupe.
[Salary] - (LEAD([Salary], 1, [Salary]) OVER( PARTITION BY [Employee_Name] ORDER BY [Eff_Date] DESC) )
MAX
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la valeur maximum (la plus élevée) dans le groupe.
MAX([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] DESC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
MIN
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie la valeur minimum (la plus basse) du groupe.
MIN([Comp Change]) OVER( PARTITION BY [Supervisory Org], [Quarter] ORDER BY [Comp Change] ASC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
Est une fonction d'agrégation de fenêtre utilisée pour affecter un numéro de classement à chaque ligne d'un groupe. Si plusieurs lignes ont la même valeur de classement (il existe une égalité), Workday affecte la même valeur de classement aux lignes liées et ignore la position de classement suivante.
RANK() OVER( PARTITION BY [Employee] ORDER BY [Sales] DESC)
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et attribue un numéro séquentiel unique à chaque ligne d'un groupe, en commençant par 1 pour la première ligne de chaque groupe.
ROW_NUMBER
affecte toujours une valeur unique à chaque ligne d'un groupe. Vous pouvez utiliser
ROW_NUMBER
afin de créer un identifiant unique pour chaque ligne de votre jeu de données.
ROW_NUMBER() OVER( PARTITION BY [Employee] ORDER BY [Sales] DESC)
SUM
Est une fonction d'agrégation de fenêtre qui répartit les lignes en groupes, trie les lignes en fonction d'un champ et renvoie le total de toutes les valeurs du groupe. Vous pouvez utiliser
SUM
pour calculer les totaux cumulés.
SUM([fieldA]) OVER( PARTITION BY [fieldB] ORDER BY [Month] RANGE 11 PRECEDING)

Opérateurs arithmétiques

Opérateur
Signification
Exemple
+
Ajout
[amount] + 10
Ajoutez 10 à la valeur du champ [amount].
-
Soustraction
[amount] - 10
Soustraire 10 de la valeur du champ [amount].
*
Multiplication
[amount] * 100
Multipliez la valeur du champ [amount] par 100.
/
Division
[bytes] / 1024
Divisez la valeur du champ [octets] par 1 024 et renvoiez le quotient.

Opérateurs de comparaison

Opérateur
Signification
Exemple
=
ou
==
Égal à
[order_date] = "12/22/2016"
>
supérieur à
[age] > 18
!>
Non supérieur à (équivalent à
<
)
[age] !> 8
<
inférieur à
[age] < 30
!<
Pas inférieur à (équivalent à)
>=
)
[age] !< 12
>=
supérieur ou égal à
[age] >= 20
<=
inférieur ou égal à
[age] <= 29
<>
ou
!=
ou
^=
n'est pas égal à
[age] <> 30
BETWEEN
min_value
AND
max_value
Vérifiez si une date ou une valeur numérique se situe dans la plage des valeurs
minimum
et
maximum
(incluses).
[year] BETWEEN 2014 AND 2016
IN(
list
)
Tester si une valeur est comprise dans un ensemble.
[product_type] IN("tablet","phone","laptop")
LIKE("
pattern
")
Mise en correspondance des modèles de caractères inclusifs non sensibles à la casse. Le
*
correspond à n'importe quel nombre de caractères. Le
?
correspond exactement à 1 caractère (un seul).
[last_name] LIKE("?utch*")
Correspond à
Kutcher
,
chutt
, mais pas
Putcher
ou
Putch
[company_name] LIKE("workday")
Correspond
à Workday
ou
à Workday
valeur
IS NULL
Vérifiez si une valeur ou expression de champ est nulle (vide).
[ship_date] IS NULL
Est évalué à
true (vrai)
lorsque le champ
shipment_date
est vide

Opérateurs logiques

Opérateur
Signification
Exemple
AND
Tester si deux conditions sont vraies.
OR
Tester si l'une des deux conditions est vraie.
NOT
Inverse la valeur des autres opérateurs.
  • year
    NOT
    BETWEEN 2013 AND 2016
  • first_name
    NOT
    LIKE("Jo?n*")
    Exclut
    John
    ,
    joenna
    mais pas
    Joann
    ou
    Joann
  • Weekday
    NOT
    IN("Saturday", "Sunday")
  • purchase_date IS
    NOT
    NULL
    Est évalué à
    true (vrai)
    lorsque le champ
    Purchase_date
    n'est pas vide