m-tools icon indicating copy to clipboard operation
m-tools copied to clipboard

A collection a useful tools for building Microsoft Power BI queries

M-tools

A collection a useful tools for building queries in the Power Query Formula Language ("M") used by Microsoft Power BI.

Usage

Power BI does not (appear) to currently support external dependencies so setup is a little rudimentary.

  1. Create a new blank query.
  2. Copy the content of M.pq to this query using the advanced editor.
  3. Name the query M.

Functions may then be access from other queries as records on M. For example, Pipe may be invoked as:

M[Pipe]({functionA, functionB, ...})

Contributing

Do not directly edit M.pq. This is built from the components defined in src/. It is provided, preassembled for convenience only.

To add functions, create new *.pq files within src/ containing the expression body and any relevant documentation (see the other files for reference). When compiled, the expression will be bound to the name of the file.

Building

runhaskell build.hs

M Language specification

Type system

Internal function references