Forum Discussion
ericOnline
7 years agoPost Patron
Is Power Query Lang. being actively developed?
I ask because I'd love to see the language develop a bit (says the "new guy", sheesh). This is based on a simple column reorder, moving the column "localTime" from the right end of a list to the left...
ImkeF
7 years agoCommunity Champion
Some thoughts in random order:
- The M-language is actively developed by Microsoft, but the community that builds additional packages isn't big (yet, hopefully). This might have something to do with the fact that there is still no elegant solution to use package-like additions on an enterprise level (yet, hopefully...) You can check out my GitHub-Repo to get some ideas what could be added: https://github.com/ImkeF/M
- The M-language that is autogenerated by the steps you take in the UI can be as clumsy as with the VBA-Assistant in Excel. You can use more elegant code if you know the language.
- In Python, you can use just the same "clumsy" technique to reorder column like the M-code you've pasted above.
- I you prefer Python to M, you can use it in Power BI instead of M. There is an option to run Python-scripts in the Query Editor and you can do all you imports and transformation via Python (or R) instead if you feel more comfortable with it.
With regards to your pseudocode: How would you expect the "where I want it" to be determined?:
- Move my field x positions to the right (or left) ("Relative number")
- Move my field x next to field y ("Relative before or after")
- Move my field to the xth position of the table ("Absolute")
Of course it's possible to write an M-function for all of them that will just need the name of the x (and y) -column to be specified.
ericOnline
7 years agoPost Patron
Nice, thank you for the thoughts, I do appreciate the engagement. The purpose of the OP was to "prod" the community a little to see what came of it.
RE: Your Github library:
- What a treasure! Hopefully I can submit some PR's and pass the project I've been working on (API POST request - JSON - table)
RE: Elegant M:
- Yes, the auto-generated M is tough to reproduce consistently. I do need to get to know the language.
RE: Python:
- I have no preference for language (I don't truly know either one!). It is very cool to know Python is supported by Power BI. I was unaware of that.
RE: Pseudocode:
- More of a joke on my part. I do feel like M is being quite literal and perhaps even missing a layer of abstraction that would simplify things (certainly in the M example above).
- There likely IS a layer of abstraction that can be implemented, I'm just not sure of how to learn/implement it.
I look forward to continue the path of learning and sharing here in the community.
Take care!