cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
data_operador1
Helper I
Helper I

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 Build 768x460.png

Microsoft Build is May 24-26. Have you registered yet?

Come together to explore latest innovations in code and application development—and gain insights from experts from around the world.

charticulator_carousel_with_text (1).png

Charticulator Design Challenge

Put your data visualization and design skills to the test! This exciting challenge is happening now through May 31st!

Power BI Dev Camp Session 22 768x460.jpg

Check it out!

Mark your calendars and join us on Thursday, May 26 at 11a PDT for a great session with Ted Pattison!

Top Kudoed Authors