Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Problema Encabezados Promovidos

Muy buenas.

 

Quisiera compartir con vosotros el problema que tengo a la hora de obtener la información de unos ficheros guardados en una carpeta de sharepoint. Voy guardando un fichero por día.

 

Cuando descargo la información, los encabezados no ocupan la primera fila, es por ello que debo eliminar las filas innecesarias e incluir un paso de encabezados promovidos.

 

Este sería un ejemplo de como obtengo los datos.

 

 

Y así como quedan después de eliminar filas y asignar encabezado en el editor de Power Query

 

.

 

Y así en el escritorio de Power bi.

 

 

 

El problema es que con cierta frecuencia, en el fichero origen, suelen incluir nuevas columnas, como en el ejemplo que os muestro. (Se incluye una nueva columna XX)

 

 

 

Y es aquí donde surge el problema, ya que al actualizarlo, no asocia los datos con el nombre de la columna a la que pertenece, sino que lo asocia a la posición de la columna. Y además los datos que incorpora del segundo fichero no elimina las filas que en uno de los pasos le indiqué-

 

 

 

Os copio los pasos del editor avanzado de la consulta

 

let

    Origen = SharePoint.Files(https://xxxxxxxxxxxxxxxxxxxxxxxx/, [ApiVersion = 15]),

    #"Filas filtradas" = Table.SelectRows(Origen, each ([Folder Path] =

 

 PRUEBA)),

    #"Filas filtradas1" = Table.SelectRows(#"Filas filtradas", each Text.Contains([Name], "PRUEBA")),

    #"Archivos ocultos filtrados1" = Table.SelectRows(#"Filas filtradas1", each [Attributes]?[Hidden]? <> true),

    #"Invocar función personalizada1" = Table.AddColumn(#"Archivos ocultos filtrados1", "Transformar archivo", each #"Transformar archivo"([Content])),

    #"Columnas con nombre cambiado1" = Table.RenameColumns(#"Invocar función personalizada1", {"Name", "Source.Name"}),

    #"Otras columnas quitadas1" = Table.SelectColumns(#"Columnas con nombre cambiado1", {"Source.Name", "Transformar archivo"}),

    #"Columna de tabla expandida1" = Table.ExpandTableColumn(#"Otras columnas quitadas1", "Transformar archivo", Table.ColumnNames(#"Transformar archivo"(#"Archivo de ejemplo"))),

    #"Filas superiores quitadas" = Table.Skip(#"Columna de tabla expandida1",1),

    #"Encabezados promovidos" = Table.PromoteHeaders(#"Filas superiores quitadas", [PromoteAllScalars=true]),

    #"Tipo cambiado" = Table.TransformColumnTypes(#"Encabezados promovidos",{{"PRUEBA_1.xlsx", type text}, {"Marca", type text}, {"ID Contacto", type text}})

in

    #"Tipo cambiado"

 

Una solución sería, antes de guardar el fichero en la carpeta de sharepoint eliminar las filas, pero quiero hacerlo desde power bi.

 

Muchas gracias por vuestra ayuda.

 

Saludos,

1 Reply