cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
D_PBI Regular Visitor
Regular Visitor

How to create a new formatted YYYY-YY column based on the row's date month value?

Hi,
In a single table I have a date column named 'Filing Date'. I would like to create a new column, in the same table, using the following logic.
If the Filing Date's month is 6 or greater (so 6 to 12) then in a new column (named 'Filing Year') place the current year's YYYY with the next year's YY, otherwise (so for months 1 to 5) place the previous year's YYYY with the current year's YY.

The below screenshot shows the Filing Date column with the intended Filing Year column.

Filing.PNG

I would like to achieve this using Power Query rather than DAX. I have seen M code, can't remember where now though, to achieve similar - so I do believe it is possible with a single line of M code rather than completing multple manual steps.

 

Thanks in advance.

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
Nathaniel_C Super Contributor
Super Contributor

Re: How to create a new formatted YYYY-YY column based on the row's date month value?

Hi @D_PBI ,
Lot of work! I wonder if you meant 7 or greater thus splitting the year in half. If so, change the code at the beginning replacing the 6 with 7.

Let me know if you have any questions.

If this solves your issues, please mark it as the solution, so that others can find it easily. Kudos are nice too.
Nathaniel

if Date.Month ([Column1])<6 then Text.Combine({
   Text.From( Number.From(   Text.End( Date.ToText([Column1] ),4))-1),Text.From( Number.From(  Text.End( Date.ToText([Column1]),2)))},"-" ) else Text.Combine({
   Text.From( Number.From(   Text.End( Date.ToText([Column1] ),4))),Text.From( Number.From(  Text.End( Date.ToText([Column1]),2))+1)},"-" )

 Date YeaR.PNG

 

View solution in original post

5 REPLIES 5
Highlighted
Nathaniel_C Super Contributor
Super Contributor

Re: How to create a new formatted YYYY-YY column based on the row's date month value?

Hi @D_PBI ,
Lot of work! I wonder if you meant 7 or greater thus splitting the year in half. If so, change the code at the beginning replacing the 6 with 7.

Let me know if you have any questions.

If this solves your issues, please mark it as the solution, so that others can find it easily. Kudos are nice too.
Nathaniel

if Date.Month ([Column1])<6 then Text.Combine({
   Text.From( Number.From(   Text.End( Date.ToText([Column1] ),4))-1),Text.From( Number.From(  Text.End( Date.ToText([Column1]),2)))},"-" ) else Text.Combine({
   Text.From( Number.From(   Text.End( Date.ToText([Column1] ),4))),Text.From( Number.From(  Text.End( Date.ToText([Column1]),2))+1)},"-" )

 Date YeaR.PNG

 

View solution in original post

D_PBI Regular Visitor
Regular Visitor

Re: How to create a new formatted YYYY-YY column based on the row's date month value?

Thanks @Nathaniel_C  - this is much appreciated.

For others who may view this solution, for me, the only addition I needed to apply is to just add 'each' before the 'if' at the beginning of the M code.
Thanks again for your speedy help and Kudos for sure 👍

Nathaniel_C Super Contributor
Super Contributor

Re: How to create a new formatted YYYY-YY column based on the row's date month value?

@D_PBI ,

You are welcome! It woulde have been better if I mentioned that I built this in a custom column, and the each is not required.  Power Query puts it in for you, althought it is good practice to put it in even so.
Cheers,

Nathaniel
how to.PNG

 

D_PBI Regular Visitor
Regular Visitor

Re: How to create a new formatted YYYY-YY column based on the row's date month value?

@Nathaniel_C  - I knew you hadn't left of the 'each' by mistake. I knew in your example you didn't need it. I added the 'each' comment in case others applied the code directly in Advanced Editor and couldn't understand why it raised an error.

 

Contributions like yours are very important to the community so keep up the good work.

Nathaniel_C Super Contributor
Super Contributor

Re: How to create a new formatted YYYY-YY column based on the row's date month value?

Hi @D_PBI ,
Yes, thank you for your kind words.  I was ok with it, just adding further clarification as you had, which I thank you for doing, sometimes I work so fast to get these answers posted, things get left out!😊
Nathaniel

Helpful resources

Announcements
New Kudos Received Badges Coming

New Kudos Received Badges Coming

Kudos to you if you earned one of these! Check your inbox for a notification.

Microsoft Implementation for Communities Wins Award

Microsoft Implementation for Communities Wins Award

Learn about the award-winning innovation that was implemented across Microsoft’s Business Applications Communities.

Power Platform World Tour

Power Platform World Tour

Find out where you can attend!

Top Solution Authors
Top Kudoed Authors (Last 30 Days)
Users online (1,897)