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
Anonymous
Not applicable

Split rows by interval in M query

Hi,

I have two tables:

-Account scheduled

Schedule_NameLine_NoRow_NoTotalingTotaling_TypeNew_PageIndentation
BALANSAS P750000E.I.1.3'4013'|4014Registravimo sąskaitosFALSE3
PARDAVIMAI1000015..5zBendrosios sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27..27130Registravimo sąskaitosFALSE0
.....................

- Account

NoNameAccount_TypeTotalingParent_Acc_No
1ILGALAIKIS TURTASTotal1..199999 
11Nematerialusis turtasTotal111..1191
111Plėtros darbaiTotal1110..111911
1110Plėtros darbų atlikimo savikainaPosting 111
1118Plėtros darbų vertės amortizacija (−)Posting 111
1119Plėtros darbų vertės sumažėjimas (−)Posting 111
112PrestižasTotal1120..112911
1120Prestižo įsigijimo savikainaPosting 112
1128Prestižo vertės amortizacija (−)Posting 112
1129Prestižo vertės sumažėjimas (−)Posting 112
113Programinė įrangaTotal1130..113911
1130Programinės įrangos įsigijimo savikainaPosting 113
1138Programinės įrangos vertės amortizacija (−)Posting 113

 

Column Account_scheduled[Totaling] shows what Account[No] is summed up for a particular Account Scheduled line.

I what to split interval to rows according to Accout_Scheduled [Totaling] column:

If there is "I" it should take just those Account [No]. From Example '4013'|4014 there would be:

Schedule_NameLine_NoRow_NoTotalingTotaling_TypeNew_PageIndentation
BALANSAS P750000E.I.1.34013Registravimo sąskaitosFALSE3
BALANSAS P750000E.I.1.34014Registravimo sąskaitosFALSE3

 

If there is ".." it should take interval from...to for those Account[No] where Account[Account_Type] = "Posting". From Example 27.. 27130 there would be:

Schedule_NameLine_NoRow_NoTotalingTotaling_TypeNew_PageIndentation
PINIGŲ.SRA40000I.1.1.1.27110Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27111Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27112Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27113Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27120Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27121Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.2713Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27130Registravimo sąskaitosFALSE0

 

And if there is an interval ".." and with the end z, it should take Account[No] where Account[Account_Type] = "Posting" and begins with these numbers. From Example 5..5z (it's like 5..5*)

PARDAVIMAI1000015000Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015001Bendrosios sąskaitosFALSE0
PARDAVIMAI10000150071Bendrosios sąskaitosFALSE0
PARDAVIMAI10000150072Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015009Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015090Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015091Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015092Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015093Bendrosios sąskaitosFALSE0
PARDAVIMAI10000151Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015400Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015401Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015500Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015501Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015600Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015601Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015604Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015609Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015802Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015803Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015804Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015805Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015806Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015808Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015809Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015810Bendrosios sąskaitosFALSE0

The table should look like this:

Schedule_NameLine_NoRow_NoTotalingTotaling_TypeNew_PageIndentation
BALANSAS P750000E.I.1.34013Registravimo sąskaitosFALSE3
BALANSAS P750000E.I.1.34014Registravimo sąskaitosFALSE3
PINIGŲ.SRA40000I.1.1.1.27110Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27111Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27112Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27113Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27120Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27121Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.2713Registravimo sąskaitosFALSE0
PINIGŲ.SRA40000I.1.1.1.27130Registravimo sąskaitosFALSE0
PARDAVIMAI1000015000Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015001Bendrosios sąskaitosFALSE0
PARDAVIMAI10000150071Bendrosios sąskaitosFALSE0
PARDAVIMAI10000150072Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015009Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015090Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015091Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015092Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015093Bendrosios sąskaitosFALSE0
PARDAVIMAI10000151Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015400Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015401Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015500Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015501Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015600Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015601Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015604Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015609Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015802Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015803Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015804Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015805Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015806Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015808Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015809Bendrosios sąskaitosFALSE0
PARDAVIMAI1000015810Bendrosios sąskaitosFALSE0

 

I 'm willing to do it in M query.

I managed split the rows just with "|", with others I got stuck, maybe you can help me?

There are Example tables if you need: https://drive.google.com/open?id=1vPo4_-Qa6pHfBcdN3-BaPxBKYzKrqzJB

 

2 REPLIES 2
v-juanli-msft
Community Support
Community Support

Hi @Anonymous 

I don't understand how to get the numbers below in total column

27110 27111 27112 27113

27120 27121

2713 27130

There is no such number in Account table.

 

Best Regards
Maggie

 

Anonymous
Not applicable

Hi, @v-juanli-msft , thanks, for replay,

There are those accounts in the Account table...

27110Sąskaita SEB Eur
27111Sąskaita SEB kita valiuta
27112Sąskaita SEB VISA
27113Sąskaita SEB MasterCard
27120Sąskaita DNB Eur
27121Sąskaita DNB kita
2713Sąskaita AS DNB Pank EESTI Filial
27130Sąskaita AS DNB Pank EESTI Filial

 

But I think that this case is a bit confusing, let's make it easier to understand

 

We have a table with a list of numbers, from 1 to 20

No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

And another table where is two columns: case and interval

CaseInterval
Case11..3
Case25..12
Case37..10

 

How do I get split rows by interval, like this with M language:

CaseInterval
Case11
Case12
Case13
Case25
Case26
Case27
Case28
Case29
Case210
Case211
Case212
Case37
Case38
Case39
Case310

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.