Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Anonymous
Not applicable

Necesita ayuda con M-Query en el editor avanzado

Hola Comunidad,

Tengo Web Como informe de origen de datos . Después de trabajar en m-query en el editor avanzado y aplicar muchos pasos de transformación (Lista combinada, Convertir lista en tabla, expandir columnas, etc.), encontré que mis datos fueran así. (se muestra en la captura de pantalla).i no sé por qué obtengo "lista" como valores para la columna de fecha OS EOS. Para pocas filas, los datos están surgiendo correctamente como se ve en la captura de pantalla (valores como 11/30/2020 ) .

Capture.PNG

He adjuntado m consulta que he utilizado en caso de que ayuda a resolver el problema .

CombinedList

List.Combine(

List.Generate(

()>[res - FnGetOnePage(url)],

cada [res][Datos]<>null,

cada [next_url [res][Next], res - FnGetOnePage(next_url)],

cada [res][Datos])),

"Convertido a la tabla" - Table.FromList(CombinedList, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
"Columna expandida1" - Table.ExpandRecordColumn('Convertido en tabla'", "Columna1", '"APP ID", "Nombre de la aplicación", "Proveedor de HW", "Fecha del EOS del contenedor DE HW/VM", "Modelo de contenedor DE HW/VM", "OS", "OS EOS Date", "Server Name", "VM Host HW EOS Date", "VM Host HW Model", "App ID", "App Name", "HW Vendor", "HW/VM Container EOS Date", "HW/VM Container Model", "OS", "OS EOS Date", "Server Name", "VM HW Host EOS Date", "VM HW Host EOS Date", "VM.
En
"Columna expandida1"

1 ACCEPTED SOLUTION
v-alq-msft
Community Support
Community Support

Hola, @vgarlap

Según su descripción, creé datos para reproducir su escenario.

Fuente:

= Table.FromRecords(
        {
            [Data={null,#date(2020,1,1)}],
            [Data={null,#date(2020,1,2)}],
            [Data={null,#date(2020,1,3)}],
            [Data={null,#date(2020,1,4)}],
            [Data={null,#date(2020,1,5)}],
            [Data=#date(2020,1,6)],
            [Data=#date(2020,1,7)]
        }
    )

e3.png

Puede agregar un nuevo paso como se muestra a continuación.

= Table.TransformColumns(Source, {"Data",each if _ is list 
then List.Max( List.RemoveNulls(_) )
else if _ is date 
then _
else null
}
)

Resultado:

e4.png

Saludos

Allan

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

7 REPLIES 7
v-alq-msft
Community Support
Community Support

Hola, @vgarlap

Según su descripción, creé datos para reproducir su escenario.

Fuente:

= Table.FromRecords(
        {
            [Data={null,#date(2020,1,1)}],
            [Data={null,#date(2020,1,2)}],
            [Data={null,#date(2020,1,3)}],
            [Data={null,#date(2020,1,4)}],
            [Data={null,#date(2020,1,5)}],
            [Data=#date(2020,1,6)],
            [Data=#date(2020,1,7)]
        }
    )

e3.png

Puede agregar un nuevo paso como se muestra a continuación.

= Table.TransformColumns(Source, {"Data",each if _ is list 
then List.Max( List.RemoveNulls(_) )
else if _ is date 
then _
else null
}
)

Resultado:

e4.png

Saludos

Allan

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

Gracias Allan,

Esto realmente me ayudó mucho a resolver el problema.

G Venkatesh

amitchandak
Super User
Super User

@vgarlap , puede compartir los datos de ejemplo dentro de la lista.

Anonymous
Not applicable

Hola Amit,

A continuación se muestran 2 valores diferentes en La lista . No queremos valores "nulos". Pero quiero eliminarlos dinámicamente a través de la consulta m . Cuando estoy tratando de filtrar esos valores nulos y eliminarlos, no veo otros registros válidos. Así que estoy pensando que esto debe hacerse a través de m - consulta y no estoy recibiendo nada.

sampleslist.PNG

Gracias

Anonymous
Not applicable

Hola

¿Hay alguna manera de filtrar los valores nulos de esa lista que he mostrado en la captura de pantalla?

Por favor, asista a .

G venkatesh

@vgarlap , la idea es comprobar si es una lista y luego sacar primero no el valor nulo.

@ImkeF, ¿puede ayudar en este

Hola @vgarlap ,

si mi entendimiento es correcto, podría agregar una columna con la siguiente fórmula

  if [OS EOS Date] is list then [OS EOS Date]{1}  else [OS EOS Date]

comprueba si el contenido de la columna es de tipo list y, si es así, tomar el segundo elemento de ella. Si no, simplemente tome el valor tal como está.

Imke Feldmann (The BIccountant)

If you liked my solution, please give it a thumbs up. And if I did answer your question, please mark this post as a solution. Thanks!

How to integrate M-code into your solution -- How to get your questions answered quickly -- How to provide sample data -- Check out more PBI- learning resources here -- Performance Tipps for M-queries

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.