Passer au contenu principal
Administrator Guide
Dernière mise à jour : 2023-06-23
Décrire les données CSV source

Décrire les données CSV source

Le composant
PrismAnalytics
de Workday Studio nécessite une description des données CSV source. Vous pouvez créer le texte JSON dans l'outil de votre choix et l'utiliser ultérieurement dans Workday Studio. Exemple : collez-le dans un message texte dans l'onglet
Message Builder
d'une étape
write
.
  1. Créez un texte JSON contenant deux nœuds principaux :
    • parseOptions
      : informations relatives au format des données CSV, notamment le jeu de caractères et le caractère délimiteur.
    • fields
      : informations sur chaque champ des données CSV, notamment le type de données et le format.
  2. Dans le
    parseOptions
    Le nœud hiérarchique, vous pouvez définir les champs suivants :
    Nom du champ
    Type
    Obligatoire
    Description
    charsetName
    Objet
    Oui
    Jeu de caractères du fichier de données CSV. Exemple :
    "charset": { "id": "Encoding=UTF-8" }
    Actuellement, Workday prend uniquement en charge le format de codage UTF-8. En définitive, Workday stocke les données au format Unicode. Les caractères sans équivalent Unicode sont stockés en tant que caractère de remplacement Unicode, un point d'interrogation sur un losange noir.
    fieldsEnclosedBy
    Chaîne
    Non
    Caractères entre lesquels sont placés les champs dans les données CSV. Les guillemets sont utilisés par défaut. Si un guillemet est utilisé dans un champ, il faut le faire précéder d'un autre guillemet. Exemple :
    "fieldsEnclosedBy": "\""
    fieldsDelimitedBy
    Chaîne
    Oui
    Caractère utilisé pour séparer les valeurs de champ dans les données CSV. Exemple :
    "fieldsDelimitedBy": ","
    headerLinesToIgnore
    Numéro
    Non
    Nombre de lignes que l'analyseur doit ignorer en tant qu'en-tête. Défini sur
    0
    Si les données CSV n'ont pas d'en-tête. Exemple :
    "headerLinesToIgnore": 1
    type
    Objet
    Oui
    Type du fichier d'entrée. Actuellement, Workday prend uniquement en charge les fichiers délimités. Exemple :
    "type": { "id": "Schema_File_Type=Delimited" }
    Cette valeur est sensible à la casse. Notez le D majuscule de Delimited.
  3. Dans le
    fields
    Le nœud hiérarchique, vous pouvez définir les champs suivants :
    Nom du champ
    Type
    Obligatoire
    Description
    ordinal
    Numéro
    Oui
    Ordre du champ dans le jeu de données CSV (index). Les valeurs ordinales :
    • Doivent commencer par 1.
    • Doivent être contiguës.
    • Ne peuvent ignorer aucun nombre.
    • Ont un maximum de 1 000.
    name
    Chaîne
    Oui
    Nom du champ du jeu de données CSV. Les noms de champ :
    • Doivent être uniques dans le jeu de données.
    • Peuvent contenir jusqu'à 255 caractères.
    • Ne peuvent inclure que des caractères alphanumériques et des tirets bas.
    • Doivent commencer par une lettre.
    • Ne peuvent pas se terminer par un underscore.
    • Ne peuvent pas commencer par WPA_.
    description
    Chaîne
    Non
    Description du champ. 1 000 caractères maximum. Exemple :
    "description": "The worker's full name."
    type
    Objet
    Oui
    Type du champ. Les options sont les suivantes :
    • Texte
    • Numérique
    • Booléen
    • Date
    Exemple :
    "type": { "id":"Schema_Field_Type=Date"}
    parseFormat
    Chaîne
    Oui (pour les types Date)
    Format de la date. Exemple :
    "parseFormat": "dd-MM-yy HH24:mm:ss"
    precision
    Numéro
    Oui (pour les types Numérique)
    Nombre maximum de chiffres dans une valeur numérique. Inclut tous les nombres à gauche et à droite d'un séparateur décimal, mais pas le séparateur décimal lui-même. La valeur maximum est 38. Exemple :
    "precision": 38
    scale
    Numéro
    Oui (pour les types Numérique)
    Nombre de chiffres à droite du séparateur décimal dans une valeur numérique. Doit être inférieur à la
    precision
    valeur. Exemple :
    "scale": 2
    defaultValue
    Texte
    Non
    Valeur par défaut d'un champ, si aucune n'est indiquée dans le fichier de téléchargement.
    Exprime une valeur de texte par défaut entre guillemets. Exemple :
    “N/A”
    .
    Les valeurs numériques par défaut doivent correspondre aux valeurs indiquées
    precision
    et
    scale
    .
    Les valeurs de date par défaut doivent respecter le format suivant : aaaa-MM-jj'T'HH:mm:ss'Z'.
    required
    Booléen
    Non
    Indique si un champ doit contenir une valeur. Défini sur
    True
    Si un champ est obligatoire, sinon défini sur
    False
    . Si un champ est obligatoire, sa valeur ne peut pas être nulle dans les opérations d'insertion, de mise à jour et d'insertion de données.
    externalID
    Booléen
    Oui (pour profiter des opérations de mise à jour, d'insertion et de suppression).
    Indique si un champ représente un code externe. Défini sur
    True
    pour désigner un champ comme code externe, sinon défini sur
    False
    .
    Dans la mesure où les champs Code externe ne peuvent pas être nuls, vous devez préciser qu'ils sont tous obligatoires. Vous ne pouvez indiquer qu'un seul champ comme code externe.
    Indiquez un code externe dans les nouvelles tables si vous souhaitez bénéficier des fonctionnalités de mise à jour, d'insertion et de suppression.
    Pour utiliser les fonctionnalités de mise à jour, d'insertion et de suppression avec une table existante, vous devez la modifier afin qu'elle comporte un seul champ désigné comme code externe. L'API publique Prism ne prend pas en charge la modification d'une table contenant des données. Dans ce cas, effectuez la modification dans Workday.
Votre fichier CSV source décrit la table suivante :
Salarié
Matricule du salarié
Désignation de l'emploi
Date d'embauche
Salaire annuel
Logan McNeil
21001
Vice-président, Ressources humaines
01/01/2010
213 298
Oliver Reynolds
21003
Directeur des systèmes d'information
01/01/2010
394 935
Maximilian Schneider
21004
Directeur des opérations
01/01/2010
255 373
Teresa Serrano
21005
Contrôleur
01/01/2010
291 785
Vous le décrivez en utilisant JSON comme suit :
{ "parseOptions": { "fieldsDelimitedBy": ",", "fieldsEnclosedBy": "\"", "headerLinesToIgnore": 1, "charset": { "id": "Encoding=UTF-8" }, "type": { "id": "Schema_File_Type=Delimited" } }, "fields": [ { "ordinal": 1, "name": "Employee", "description": "Employee", "precision": 255, "scale": 0, "parseFormat": null, "type": { "id": "Schema_Field_Type=Text" } }, { "ordinal": 2, "name": "Employee_ID", "description": "Employee ID", "precision": 38, "scale": 0, "parseFormat": null, "type": { "id": "Schema_Field_Type=Numeric" } }, { "ordinal": 3, "name": "Job_Title", "description": "Job Title", "precision": 255, "scale": 0, "parseFormat": null, "type": { "id": "Schema_Field_Type=Text" } }, { "ordinal": 4, "name": "Hire_Date", "description": "Hire Date", "precision": 0, "scale": 0, "parseFormat": "MM/dd/yy", "type": { "id": "Schema_Field_Type=Date" } }, { "ordinal": 5, "name": "Annual_Salary", "description": "Annual Salary", "precision": 38, "scale": 2, "type": { "id": "Schema_Field_Type=Numeric" } } ], "schemaVersion": { "id": "Schema_Version=1.0" } }