Скрипты TMDL

Скрипты TMDL позволяют применять действие к семантической модели, которая может быть изменением или операцией. Скрипт TMDL состоит из двух частей:

  • Команда , которая является обязательной и должна быть объявлена в верхней части скрипта TMDL.
  • Один или несколько объектов семантической модели с помощью определения языка или ссылки на TMDL.

Синтаксис:


<TMDL Command name>
  <TMDL object>
  [<TMDL object>]

Команда CreateOrReplace

Создает или заменяет указанные объекты семантической модели и все потомки. Существующие объекты заменяются новым определением.

Порядок объектов TMDL внутри команды createOrReplace не важен.

Семантика языка TMDL применяется к объектам в команде createOrReplace. Например, можно разделить определение объекта на несколько сегментов, однако одно и то же свойство нельзя объявить несколько раз. Дополнительные сведения оязыка TMDL можно .

Пример

Создайте или замените меры # Products (with Sales) из таблицы Sales и полное определение таблицы Product:

createOrReplace

  ref table Sales
    measure '# Products (with Sales)' = DISTINCTCOUNT('Sales'[ProductKey])
        formatString: #,##0
    
  table Product

    measure '# Products' = COUNTROWS('Product')
        formatString: #,##0

    column Product
        dataType: string
        isDefaultLabel
        summarizeBy: none
        sourceColumn: Product

    column Category
        dataType: string
        summarizeBy: none
        sourceColumn: Category

    partition Product-partition = m
        mode: import
        source =
                let
                    Source = #"RAW-Product",
                    #"Renamed Columns" = Table.RenameColumns(Source,{{"Product Name", "Product"}})
                in
                    #"Renamed Columns"

Рекомендации и ограничения

Поддерживается только одна команда для каждого выполнения скрипта.

В следующих статьях описано больше о TMDL и его использовании.