Duration.Type

Updated on

Duration.Type is a type facet in the Power Query M language. It represents the default type claim for the ‘type duration’. It is used primarily for interacting with external systems where precise measurement of time intervals is essential. The base type of ‘type duration’ in Power Query is for time span details (such as hours, minutes, seconds).

Examples

Generally, you will face a facet when transforming column types. You can transform a column into the specified type by using Table.TransformColumnTypes:

Table.TransformColumnTypes( Source, {{ "myColumn", Duration.Type }} )

Or when adding a column using Table.AddColumn:

Table.AddColumn( Source, "myColumn", #duration(1,0,0,0), Duration.Type" )

To inspect the kind of value you are dealing with, you can make use of the Table.Schema function. Applying it to a table returns a table with information about your columns. The Table.SingleRow function then transforms the result into a record, for easier reading.

let 
  a =  #duration(1,0,0,0),
   // Ascribes the default type claim facet for 'type duration'
  b = Value.ReplaceType( a, Duration.Type ),
  // Returns a table containing a value with the ascribed "Duration.Type" 
  c = #table(type table [Col1 = Value.Type( b ) ], { b } ), 
  // Shows the Table information, including typeName and value kind
  d = Table.Schema( c ),
  // For easier viewing, return table as record
  e = Table.SingleRow( d )
in 
  e

Related facets

Other related facets are:

BI Gorilla Blog

Contribute » | Contributors: Rick de Groot