Transformação de dados (Conectores)
O que há nesta página
Sobre a transformação de dados no Discover
Você pode transformar os dados recebidos antes de importá-los para o XM Discover. Isso é útil quando você precisa limpar seus dados ou modificar seu formato.
Para acessar as transformações de dados:
Atenção: as transformações se aplicam apenas a novos dados importados futuramente. Dados históricos não serão afetados. Para atualizar dados históricos, utilize retrieve data (recuperar dados) para a tarefa.
Dynamic Lookup (Consuta dinâmica)
Esta opção só está disponível para campos de dados que fazem referência a uma tabela de consulta da fonte de dados conectada. Você pode especificar uma expressão de consulta dinâmica para que os dados corretos sejam importados no XM Discover.
Exemplo: a expressão DYNAMICLOOKUP(“QID15”, “10”) consulta o Campo QID15 na fonte de dados e envia a décima entrada. Como esse campo corresponde a uma pergunta de pesquisa em uma escala de 1 a 10, sendo 1 muito negativo e 10 muito positivo, essa expressão retorna “muito positivo”.
Replace Value from Lookup Table (Substituir valor da tabela de consulta)
Você pode adicionar consultas a qualquer campo de origem para ter maior controle sobre os valores exatos que estão sendo enviados ao seu projeto do XM Discover. Uma tabela de consulta permite que você defina valores de origem a serem substituídos quando salvos no XM Discover.
Exemplo: você pode usar esta opção para alterar o formato das respostas da pesquisa. Por exemplo, ao carregar uma avaliação de serviço, você pode alternar entre um formato numérico (de 1 a 5) e um formato de texto (de muito negativo a muito positivo) e vice-versa.
Replace Value with RegEx (Substituir valor com RegEx)
Você pode substituir valores recebidos usando expressões regulares (regex), permitindo limpar dados antes de carregá-los no seu projeto do XM Discover.
Atenção: os recursos de programação personalizados são fornecidos no estado em que se encontram e requerem conhecimento de programação para serem implementados. O suporte do Discover não oferece assistência ou consultoria sobre programação personalizada. Em vez disso, você pode perguntar para nossa comunidade de usuários dedicados. Se você quiser saber mais sobre nossos serviços de programação personalizada, entre em contato com seu executivo de contas do Discover.
Custom Transformation (Transformação personalizada)
É possível transformar dados recebidos usando suas próprias expressões personalizadas. As transformações personalizadas permitem muitos tipos de manipulação de dados, incluindo alterar formatos de data, unir campos, remover zeros à esquerda e muito mais.
Qdica: consulte a seção Custom Transformation Examples (Exemplos de transformação personalizada) para ver exemplos adicionais.
Geração automática de IDs naturais
Quando você envia dados para o XM Discover, os documentos podem não conter um ID exclusivo para ser usado como ID natural, um campo importante porque ajuda a identificar documentos duplicados. Seus dados carregados devem ter um identificador exclusivo para ser usado como ID natural. Esta seção explica como definir um ID natural ao mapear dados usando transformações personalizadas.
Agora, seu documento terá um ID gerado aleatoriamente quando ele for carregado.
Definição de uma data do documento específica
Quando você carrega dados para o XM Discover, os documentos podem conter vários campos de data — ou nenhum. Seus dados carregados devem ter um campo de data para ser usado como a data do documento. Esta seção explica como definir uma data do documento ao mapear dados usando transformações personalizadas.
Qdica: Certifique-se de clicar em Apply (Aplicar) para salvar o mapeamento de dados.
Exemplos de transformação personalizada
Esta seção apresenta alguns exemplos de como você pode manipular seus dados usando transformações personalizadas.
Atribuir um valor de origem personalizado
Objetivo: atribuir um valor de texto personalizado (“Pesquisas de abril”) ao atributo “Source” (Fonte).
Como: aplique a seguinte transformação ao campo “Source” (basta colocar o valor de texto entre aspas):
Exemplo: “Pesquisas de abril”
Alterar “Last Name, First Name” (Sobrenome, Nome) para “First Name Last Name” (Nome Sobrenome)
Objetivo: alterar o formato do nome de “sobrenome, nome” para “nome sobrenome” e usar a primeira letra de cada palavra em maiúscula.
Como: aplique a seguinte transformação ao campo de nome:
PROPERCASE(REPLACEBYREGEXP(NAME, “(. *),(. *)”, “$2 $1”))
Exemplo: “oliveira, jorge” se torna “Jorge Oliveira”
Converter uma data de UTC para CST
Objetivo: converter um campo de data de um fuso horário UTC para o CST.
Como: aplique a seguinte transformação ao campo END_DATE:
CONVERT_TO_TIMEZONE(END_DATE, “Etc/UTC”, “America/Chicago”)
Exemplo: “2021-03-11 15:15:00” (horário de Londres) se torna “2021-03-11T09:15:00Z” (horário de Chicago).
Qdica: se o campo de data estiver em Unix epoch time, você deve convertê-lo primeiro para o formato ISO 8601.
Converter hh:mm:ss em minutos
Objetivo: converter o tempo do formato hh:mm:ss para o número de minutos.
Como: aplique a seguinte transformação:
GETMINUTESBETWEEN(TEXTTODATE(“1970-01-01”, “YYYY-MM-DD”), CONCAT(“1970-01-01T”, MY_TIME))
Exemplo: 12:12:30 torna-se 732,5.
Converter Unix Epoch Time em segundos para ISO 8601
Objetivo: converter um carimbo de data e hora do Unix em segundos para o formato de data ISO 8601.
Qdica: se a sua data vier como um número em milissegundos (como 1588253075000), você poderá usá-la como um campo de data sem nenhuma transformação. Basta mapeá-la como um atributo de data e ela funcionará. Porém, se precisar alterar o fuso horário, será necessário converter para ISO 8601 primeiro.
Como: a transformação a seguir faz duas coisas: ela transforma segundos em milissegundos e, em seguida, transforma os milissegundos em uma data ISO 8601:
NUMBERTODATE(TEXTTONUMBER(CONCAT(MY_DATE, “000”)))
Exemplo: 1588253075 se torna 2020-04-30T13:24:35.000Z.
Derivar um valor com base na presença de algo em um array.
Objetivo: verificar o nome do estado e atribuir um valor de “Área DMV” se ele corresponder a qualquer um dos estados listados. Caso contrário, deve definir como “Outros estados”.
Como: adicionar um campo de texto personalizado chamado AREA e aplicar a seguinte transformação:
SE(LOWER(STATE) em [“md”, “dc”, “va”], “Área DMV”, “Outros estados”)
Qdica: observe que, ao usar a função LOWER, tornamos essa condição não sensível a maiúsculas e minúsculas, portanto, tanto “df” quanto “DF” contarão como verdadeiros neste caso.
Exemplo: STATE=”MG” se transforma em AREA=”Área DMV”
Extrair o nome do artigo do título de uma página
Objetivo: extrair o nome do artigo após o último divisor “|” em um título de página.
Como: aplicar a seguinte transformação ao campo de título da página:
TRIMRIGHT(MID(PAGE_TITLE,FINDLAST(PAGE_TITLE,”|”)+1,1000))
Exemplo: “notícia|mundo|nome do artigo” se torna “nome do artigo”
Juntar nome e sobrenome em um único campo
Objetivo: combinar os campos FIRST_NAME (nome) e LAST_NAME (sobrenome) em um novo campo FULL_NAME (nome completo) e escrever a primeira letra de cada palavra em maiúscula.
Como: adicionar um campo de texto personalizado chamado FULL_NAME e aplicar a seguinte transformação:
PROPERCASE(CONCAT(FIRST_NAME, ” “, LAST_NAME))
Exemplo: FIRST_NAME=”paulo” LAST_NAME=”gomes” se torna FULL_NAME=”Paulo Gomes”
Unir dois verbatins e carregar apenas o verbatim combinado
Objetivo: unir dois campos verbatins, VERBATIM1 e VERBATIM2, em um novo campo VERBATIM3 e carregar apenas o verbatim combinado no XM Discover.
Como: execute as seguintes etapas:
Exemplo: VERBATIM1=”O quarto era aconchegante.” e VERBATIM2=”O serviço de quarto era bom.” se torna VERBATIM3=”O quarto era aconchegante. O serviço de quarto era bom.”.
Rollup multivariável
Objetivo: criar um rollup multivariável para respostas a uma única pergunta que são divididas em vários atributos. Suponha que o conjunto de dados contenha vários atributos “sim ou não” para indicar diferentes níveis de associação de um cliente:
- QID2_1 para Silver
- QID2_2 para Gold
- QID2_3 para Platinum
Você pode reunir todas as respostas “Yes” em um único novo atributo para indicar o nível de associação do cliente.
Como: aplique a seguinte transformação:
TRIMRIGHT(CONCAT(IF(QID2_1==”Yes”, “Silver”, “”), IF(QID2_2==”Yes”, “Gold”, “”), IF(QID2_3==”Yes”, “Platinum”, “”)))
Exemplo: QID2_1=”No”, QID2_2=”Yes” e QID2_3=”No” se torna LOYALTY_LEVEL=”Gold”
Remover o primeiro caractere
Objetivo: remover o primeiro caractere de uma string.
Como: aplique a seguinte transformação:
REPLACEBYINDEX(MY_NUMBER, 1, 1, “”)
Exemplo: “x00085524821587582371” se transforma em “00085524821587582371”
Remover zeros à esquerda
Objetivo: remover zeros à esquerda de um número.
Como: para um valor de texto, aplique a seguinte transformação:
CONCAT(TEXTTONUMBER(MY_NUMBER), “”)
Para um valor numérico, aplique a seguinte transformação:
TEXTTONUMBER(MY_NUMBER)
Exemplo: “000123456” se transforma em “123456”
Isso é ótimo! Obrigado pelo seu feedback!
Obrigado pelo seu feedback!