Поделиться через


Функции ColumnNames и Column

Применимо к: Приложениям Canvas Приложениям на основе моделей Power Platform CLI

Извлекает имена и значения столбцов из нетипизированного объекта.

Описание

Функция ColumnNames возвращает имена всех столбцов из нетипизированной записи, возвращая таблицу со всеми именами из этой записи.

Функция Column возвращает значение свойства из нетипизированной записи с заданным именем столбца. Значение возвращается в виде нетипизированного объекта.

Функции ColumnNames и Column возвращают ошибки, если нетипизированный объект не представляет запись (то есть, если он представляет таблицу, скалярное или примитивное значение).

Синтаксис

Имена столбцов( UntypedRecord )

Столбец( НетипизированнаяЗапись, ИмяСтолбца )

  • UntypedRecord – Обязательно. Нетипизированный объект, который представляет собой запись.
  • ColumnName - Обязательно. Имя столбца, которое нужно получить из данной записи.

Примеры

Доступ к значениям полей

Учитывая следующую строку JSON в переменной с именем JsonString

{ "name": "Seattle", "population": 737000 }
  1. Следующая формула возвращает таблицу с одним столбцом, в которой столбец Value содержит следующие значения: «имя», «заполнение».

    ColumnNames( ParseJSON( JsonString ) )
    
  2. Следующая формула возвращает число 737000:

    Value( Column( ParseJSON( JsonString ), "population" ) )
    

    2.1. Обратите внимание, что это похоже на оператор . для нетипизированных записей, но имя столбца не обязательно должно быть известно заранее.

  3. Следующая формула возвращает текстовое "name: Seattle, population: 737000":

    With(
        { untyped: ParseJSON( JsonString ) },
        Concat(
            ColumnNames( untyped ),
            $"{Value}: {Column( untyped, Value )}",
            ", "))
    

Пустые значения

Учитывая следующую строку JSON в переменной с именем JsonString

{ "text": "text value" , "number": 567, "empty": null }
  1. Попытка доступа к несуществующим полям возвращает Blank(). Следующая формула возвращает значение true:
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. Значения JSON null считаются Пустыми. Следующая формула возвращает значение true:
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Не записи

Вызов функций Column или ColumnNames с нетипизированными объектами, которые не представляют записи, возвращает ошибку. Все приведенные ниже выражения ошибочны:

Формула Причина для ошибки
ColumnNames( ParseJSON ( "[1, 2, 3]") ) Нетипизированный объект представляет собой массив
Столбец( ParseJSON ( "23.45" ), "Значение" ) Нетипизированный объект представляет собой число
ColumnNames( ParseJSON ( """привет""" ) ) Нетипизированный объект представляет собой текст
Столбец( ParseJSON ( "{""a"":false}" ).a, "a" ) Нетипизированный объект представляет логическое значение