Ir para o conteúdo principal
Administrator Guide
Última atualização: 2023-06-23
Descrever os dados CSV de origem

Descrever os dados CSV de origem

O componente
PrismAnalytics
do Workday Studio requer uma descrição dos dados CSV de origem. Você pode criar o texto JSON na ferramenta da sua preferência e usá-lo depois no Studio. Exemplo: cole-o em uma mensagem de texto na guia
Message Builder
de uma etapa
write
.
  1. Crie um texto JSON contendo dois nós principais:
    • parseOptions
      : informações sobre o formato dos dados CSV, incluindo o conjunto de caracteres e o caractere delimitador.
    • fields
      : informações sobre cada campo nos dados CSV, incluindo tipo de dados e formatação.
  2. Na categoria
    parseOptions
    Você pode definir estes campos:
    Nome do campo
    Tipo
    Obrigatório
    Descrição
    charsetName
    Objeto
    Sim
    O conjunto de caracteres do arquivo de dados CSV. Exemplo:
    "charset": { "id": "Encoding=UTF-8" }
    Atualmente, o Workday oferece suporte apenas ao formato de codificação UTF-8. Em última instância, o Workday armazena os dados no formato Unicode. Caracteres sem equivalente em Unicode são armazenados como o caractere de substituição Unicode, um ponto de interrogação em um fundo de losango preto.
    fieldsEnclosedBy
    Cadeia de caracteres
    Não
    O caractere usado para delimitar campos nos dados CSV. O valor por padrão são aspas duplas. Se uma aspa dupla é usada em um campo, use como escape uma aspa dupla precedendo-a com outra aspa dupla. Exemplo:
    "fieldsEnclosedBy": "\""
    fieldsDelimitedBy
    Cadeia de caracteres
    Sim
    O caractere usado para separar valores de campo nos dados CSV. Exemplo:
    "fieldsDelimitedBy": ","
    headerLinesToIgnore
    Número
    Não
    O número de linhas que o analisador deve ignorar como um cabeçalho. Definir como
    0
    se os dados CSV não têm um cabeçalho. Exemplo:
    "headerLinesToIgnore": 1
    type
    Objeto
    Sim
    O tipo do arquivo de entrada. Atualmente, o Workday oferece suporte apenas a arquivos delimitados. Exemplo:
    "type": { "id": "Schema_File_Type=Delimited" }
    Esse valor diferencia maiúsculas de minúsculas. Observe o D maiúsculo em Delimitado.
  3. Na categoria
    fields
    Você pode definir estes campos:
    Nome do campo
    Tipo
    Obrigatório
    Descrição
    ordinal
    Número
    Sim
    A ordem do campo no conjunto de dados CSV (índice). Os valores ordinais:
    • Devem começar com 1.
    • Devem ser contíguos.
    • Não podem ignorar nenhum número.
    • Ter no máximo 1.000.
    name
    Cadeia de caracteres
    Sim
    O nome do campo do conjunto de dados CSV. Os nomes de campos:
    • Devem ser exclusivos no conjunto de dados.
    • Podem conter até 255 caracteres.
    • Podem incluir somente caracteres alfanuméricos e de sublinhado.
    • Devem começar com uma letra.
    • Não podem terminar com um caractere de sublinhado.
    • Não é possível começar com WPA_.
    description
    Cadeia de caracteres
    Não
    A descrição do campo. Máximo de 1.000 caracteres. Exemplo:
    "description": "The worker's full name."
    type
    Objeto
    Sim
    O tipo do campo. As opções são:
    • Texto
    • Numérico
    • Booliano
    • Data
    Exemplo:
    "type": { "id":"Schema_Field_Type=Date"}
    parseFormat
    Cadeia de caracteres
    Sim (para tipos de data)
    O formato da data. Exemplo:
    "parseFormat": "dd-MM-yy HH24:mm:ss"
    precision
    Número
    Sim (para tipos numéricos)
    O número máximo de dígitos em um valor numérico. Inclui todos os números à esquerda e à direita do divisor decimal, mas não o próprio divisor. O valor máximo é 38. Exemplo:
    "precision": 38
    scale
    Número
    Sim (para tipos numéricos)
    O número de dígitos à direita do ponto decimal em um valor numérico. Deve ser menor que
    precision
    Valor Exemplo:
    "scale": 2
    defaultValue
    Texto
    Não
    O valor por padrão de um campo, caso nenhum seja fornecido no arquivo carregado.
    Expresse um valor de texto por padrão entre aspas duplas. Exemplo:
    “N/A”
    .
    Os valores numéricos por padrão devem corresponder aos valores especificados
    precision
    e
    scale
    .
    Os valores de data por padrão devem estar neste formato: yyyy-MM-dd'T'HH:mm:ss'Z'.
    required
    Booliano
    Não
    Especifica se um campo deve conter um valor. Definir como
    True
    se um campo for obrigatório, caso contrário, defina como
    False
    . Se um campo é obrigatório, seu valor não pode ser nulo em nenhuma operação de inserção, atualização e upsert de dados.
    externalID
    Booliano
    Sim (para aproveitar as operações de atualização, atualização/inserção e exclusão).
    Especifica se um campo representa uma ID externa. Definir como
    True
    para designar um campo como uma ID externa, caso contrário, defina como
    False
    .
    Como os campos de ID externa não podem ser nulos, você deve especificar que qualquer campo ID externa é obrigatório. Você pode especificar somente um campo como ID externa.
    Especifique uma ID externa em novas tabelas se quiser aproveitar as funcionalidades de atualização, atualização/inserção e exclusão.
    Para usar as funcionalidades de atualização, atualização/inserção e exclusão com uma tabela existente, você deve modificá-la para que tenha um único campo designado como ID externa. A API pública do Prism não oferece suporte à modificação de uma tabela que contém dados. Nesses casos, faça a modificação no Workday.
Seu arquivo CSV de origem descreve esta tabela:
Colaborador
ID de colaborador
Título de cargo
Data de admissão
Salário anual
Logan McNeil
21001
Vice-presidente de Recursos Humanos
1/1/2010
213298.00
Oliver Reynolds
21003
Diretor de informações
1/1/2010
394935.00
Maximilian Schneider
21004
Diretor de operações
1/1/2010
255373.00
Teresa Serrano
21005
Controladora
1/1/2010
291.785,00
Você o descreve usando JSON desta forma:
{ "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" } }