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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply

Cambiar formato fecha con DirectQuery

Hola,

 

Tengo una base de datos conectada via DirectQuery a mi panel, en el que hay un gráfico en el cual, partiendo de un tipo fecha con formato dd/mm/aaaa he pasado a un formato aaaamm y funciona bien.

 

Ahora quiero que en el eje X (el eje de la fecha) aparezca una fecha con un formato fácil de leer para el usuario (tipo (mmm aaaa). He intentado usar la funcion Date en DAX pero no lo permite en DirectQuery.

 

¿Alguna idea de cómo hacerlo?

 

Muchísimas gracias.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@Syndicate_Admin ,

He probado algunas formas efectivas como la función FORMAT(), la función "Split", la sintaxis M a continuación y así sucesivamente ... Ninguno funcionó cuando se utilizó el modo de consulta directa. Por lo tanto, es posible que deba cambiar al modo de importación.

Date.MonthName([Date]) &" " 
 & Text.End(Text.From( Date.Year([Date])),2)

O con el modo DQ, siga estos pasos que podrían obtener con éxito el formato esperado de mi lado.

En Power Query

1. Haga clic con el botón derecho en la columna Fecha para duplicar la columna DateTime --> Cambiar tipo a Texto

Eyelyn9_5-1643165250780.png

2. Haga clic en la pestaña "Agregar columna" -->Usar texto.Inicio() para agregar una columna personalizada para obtener "mmm"

Text.Start([#"Date - Copy"],3)

3.Seleccione la columna Fecha-->Haga clic en la pestaña "Agregar columna" -->Fecha-Año

Eyelyn9_2-1643165057021.png

4. Agregue una columna personalizada:

=[mmm]&" "& Text.End( Text.From([Year]),2)

Eyelyn9_3-1643165110893.png

5. Elimine las columnas innecesarias, a continuación se muestra la tabla final:

Eyelyn9_4-1643165143959.png

Toda la sintaxis M:

let
    Source = Sql.Database("WX-85154\MSSQLSERVER01", "Eyelyn Test"),
    dbo_DateValue = Source{[Schema="dbo",Item="DateValue"]}[Data],
    #"Duplicated Column" = Table.DuplicateColumn(dbo_DateValue, "Date", "Date - Copy"),
    #"Changed Type" = Table.TransformColumnTypes(#"Duplicated Column",{{"Date - Copy", type text}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "mmm", each Text.Start([#"Date - Copy"],3)),
    #"Inserted Year" = Table.AddColumn(#"Added Custom", "Year", each Date.Year([Date]), Int64.Type),
    #"Added Custom1" = Table.AddColumn(#"Inserted Year", "mmm yy", each [mmm]&" "& Text.End( Text.From([Year]),2)),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom1",{"Year", "Date - Copy", "mmm"})
in
    #"Removed Columns"

Ahora podría usar la columna mmm yy como eje X:

Eyelyn9_6-1643165421821.png

Saludos
Eyelyn Qin
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

@Syndicate_Admin ,

He probado algunas formas efectivas como la función FORMAT(), la función "Split", la sintaxis M a continuación y así sucesivamente ... Ninguno funcionó cuando se utilizó el modo de consulta directa. Por lo tanto, es posible que deba cambiar al modo de importación.

Date.MonthName([Date]) &" " 
 & Text.End(Text.From( Date.Year([Date])),2)

O con el modo DQ, siga estos pasos que podrían obtener con éxito el formato esperado de mi lado.

En Power Query

1. Haga clic con el botón derecho en la columna Fecha para duplicar la columna DateTime --> Cambiar tipo a Texto

Eyelyn9_5-1643165250780.png

2. Haga clic en la pestaña "Agregar columna" -->Usar texto.Inicio() para agregar una columna personalizada para obtener "mmm"

Text.Start([#"Date - Copy"],3)

3.Seleccione la columna Fecha-->Haga clic en la pestaña "Agregar columna" -->Fecha-Año

Eyelyn9_2-1643165057021.png

4. Agregue una columna personalizada:

=[mmm]&" "& Text.End( Text.From([Year]),2)

Eyelyn9_3-1643165110893.png

5. Elimine las columnas innecesarias, a continuación se muestra la tabla final:

Eyelyn9_4-1643165143959.png

Toda la sintaxis M:

let
    Source = Sql.Database("WX-85154\MSSQLSERVER01", "Eyelyn Test"),
    dbo_DateValue = Source{[Schema="dbo",Item="DateValue"]}[Data],
    #"Duplicated Column" = Table.DuplicateColumn(dbo_DateValue, "Date", "Date - Copy"),
    #"Changed Type" = Table.TransformColumnTypes(#"Duplicated Column",{{"Date - Copy", type text}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "mmm", each Text.Start([#"Date - Copy"],3)),
    #"Inserted Year" = Table.AddColumn(#"Added Custom", "Year", each Date.Year([Date]), Int64.Type),
    #"Added Custom1" = Table.AddColumn(#"Inserted Year", "mmm yy", each [mmm]&" "& Text.End( Text.From([Year]),2)),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom1",{"Year", "Date - Copy", "mmm"})
in
    #"Removed Columns"

Ahora podría usar la columna mmm yy como eje X:

Eyelyn9_6-1643165421821.png

Saludos
Eyelyn Qin
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

@Syndicate_Admin puede agregar otra columna de fecha duplicada, cambiar el formato a lo que desee y usarlo en el eje x.

Síguenos en LinkedIn (en inglés) y YouTube.gif a nuestro YouTube (en inglés) canal

Más información sobre el formato condicional en Microsoft Reactor

Mi última entrada de blog El poder de usar grupos de cálculo con relaciones inactivas (Parte 1) (perytus.com) Yo lo haría Elogios si mi solución ayudó. 👉 Si puede dedicar tiempo a publicar la pregunta, también puede hacer esfuerzos para felicitar a quien ayudó a resolver su problema. ¡Es una muestra de agradecimiento!

Visítenos en https://perytus.com, su ventanilla única para proyectos/formación/consultoría relacionados con Power BI.

He agregado la nueva columna y he puesto otro formato pero ¿cómo hago para introducirla en el eje x sin que salgan en días?

Disculpen mi inexperiencia.

 

Un saludo

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.