Forum Discussion
Codificación
Creé una pequeña extracción de big data ingeniosa de múltiples puntos de conexión a ADLS gen2. Tengo control total de la codificación de los blobs en el punto de conexión del lago de datos.
Actualmente estoy usando iso-8859-1 (UTF-8) ya que tengo caracteres daneses y de Europa oriental en mis extracciones.
Todos los archivos están en formato json, ya que el esquema puede diferir en muchos de los orígenes.
Desafortunadamente, Power BI no reconoce la codificación en los archivos json en ADSL. Esto lleva a caracteres daneses y de Europa oriental que se muestran como ? en las líneas de texto, cuando se importa a Power BI.
Cuando los archivos se abren en la codificación Bloc de notas++ es claramente UTF-8 (como se esperaba), pero ¿cómo consigo que Power BI muestre esta codificación correctamente?
Como alternativa, ¿cómo debo codificar los archivos para que Power BI se reproduzca bien?
Cualquier ayuda sería muy apreciada!
Los datos extraídos de D'namics 365 CRM directamente al mismo ADLS se comportan exactamente igual. También es UTF-8 en el bloc de notas ++, pero muestra caracteres extraños en lugar de los caracteres daneses y de Europa oriental correctos.
- Anonymous6 years agoEn lugar de transformar la columna a JSON, debe usar Add Custom Column y escribir la expresión correcta de acuerdo con esta sintaxis:
Json.Document(jsonText as any, codificación opcional como número que acepta valores NULL) como cualquier
Aquí está la documentación de la función:
https://docs.microsoft.com/en-us/powerquery-m/json-document
Mejor
D - Anonymous6 years ago
En realidad funcionó cuando cambié la línea de arriba de:
"Añadido Personalizado" - Table.AddColumn("Contenido", "JSON", cada Json.Document([-"Contenido"], TextEncoding.Utf8)),
Para:
"Añadido Personalizado" - Table.AddColumn("Contenido", "JSON", cada Json.Document([-"Contenido"], TextEncoding.Windows)),
¡Gracias, cariño!
5 Replies
- TomMartens
Super User
Hola @AxelAndersen ,
si está utilizando la función Json.Document( ... , ...)
Pruebe TextEncoding.Utf8 como 2nd parámetro.
Tal vez usted tiene que utilizar el "Editor Avanzado", para ver lo que realmente está pasando dentro de su consulta.
Con suerte, esto proporciona algunas ideas para abordar su desafío.
saludos
Tom
Manténgase seguro, mantengase saludable y feliz vacaciones
- AnonymousNot applicable
Hola Tom,
Gracias por nuestra respuesta rápida!
¿Adónde va a ir exactamente eso?
Dejar
Origen: AzureStorage.DataLake("https://MyDL.dfs.core.windows.net/Endpoint/clients"),
"Eliminado otras columnas" - Tabla.SelectColumns(Fuente,"Contenido"-),
"JSON analizado" ? Table.TransformColumns("Eliminado otras columnas", Json.Document),
"Contenido expandido" - Table.ExpandListColumn("Parsed JSON", "Contenido"),
"Contenido expandido1", "Table.ExpandRecordColumn("Contenido expandido", "Contenido", "id", "nombre", "is_active", "dirección", "statement_key", "created_at", "updated_at", "moneda", "yo", "id", "nombre", "is_active", "dirección", "statement_key", "created_at", "updated_at", "moneda", "auto")
En
"Contenido expandido1"- AnonymousNot applicableEn lugar de transformar la columna a JSON, debe usar Add Custom Column y escribir la expresión correcta de acuerdo con esta sintaxis:
Json.Document(jsonText as any, codificación opcional como número que acepta valores NULL) como cualquier
Aquí está la documentación de la función:
https://docs.microsoft.com/en-us/powerquery-m/json-document
Mejor
D