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


Функції: Збирання, Очищення та ClearCollect

Створення та очищення колекцій, а також додавання записів до джерела даних.

Collect

Застосовується до: додатків Canvas Карткиз Dataverse базовим кодуванням плагінів Power Platform CLI Desktop flows

Функція Collect додає записи до джерела даних. До елементів, які можна додати, відносяться нижченаведені.

  • Одиночне значення: вноситься в поле Value нового запису. Усі інші властивості залишаються blank.
  • Запис: кожна властивість із назвою вноситься до відповідної властивості нового запису. Усі інші властивості залишаються пустими.
  • Таблиця: кожен запис таблиці додається як окремий запис джерела даних (описано вище). Таблиця не додається до запису як вкладена таблиця. Для цього спочатку потрібно перенести таблицю в запис.

У разі використання разом із колекцією будуть створені додаткові стовпці, якщо це потрібно. Стовпці для інших джерел даних закріпляються за конкретним джерелом даних, тому додавання нових стовпців неможливе.

Якщо джерела даних ще не існує, створюється колекція.

Іноді колекції використовуються для зберігання глобальних змінних або створення тимчасової копії джерела даних. Компоновані програми базуються на формулах, які автоматично переобчислюються, коли користувач взаємодіє з програмою. Ця перевага недоступна для колекцій, і їх використання може ускладнити створення і розуміння програми. Перш ніж використовувати колекцію в такий спосіб, ознайомтеся зі статтею про роботу зі змінними.

Записи у джерелі даних також можна створити за допомогою функції Patch.

Збір повертає змінене джерело даних у вигляді таблиці. Collect може використовуватися тільки у формулі поведінки.

Скасувати

Застосовується до: програм Canvas

Функція Clear видаляє всі записи колекції. Водночас стовпці колекції залишаються.

Зверніть увагу, що функція Clear працює лише з колекціями, але не з іншими джерелами даних. Для цієї мети можна скористатися функцією RemoveIf( DataSource, true ). Будьте уважні, оскільки буде видалено всі записи зі сховища джерела даних, що може вплинути на інших користувачів.

Скористайтеся функцією Remove для вибіркового видалення записів.

Clear не має значення, що повертається. Її можна використовувати тільки у формулі поведінки.

ClearCollect

Застосовується до: програм Canvas Програм на основі моделі

Функція ClearCollect видаляє всі записи із колекції. Після цього функція додає інший набір записів у ту саму колекцію. Будучи окремою функцією, ClearCollect пропонує комбінацію функцій Clear та Collect.

ClearCollect повертає змінену колекцію у вигляді таблиці. ClearCollect можна використовувати лише у формулі поведінки.

Делегування

Коли використовується з джерелом даних, ці функції не можна делегувати. Буде отримано лише першу частину джерела даних, а потім – застосовано функцію. У результаті може відображатися не повна історія. Під час редагування може з’явитися попередження, щоб нагадати вам про це обмеження та запропонувати переключитися на делеговані альтернативи, де це можливо. Додаткову інформацію див. у статті Огляд делегування.

Синтаксис

Збирати( Джерело даних, Предмет, ... )

  • Джерело даних– Обов’язковий. Джерело даних, до якого потрібно додати дані. Якщо його ще не існує, створюється нова колекція.
  • Предмети - обов’язкові. Один або кілька записів або таблиць, які потрібно додати до джерела даних.

Clear( колекція)

  • колекція– Обов’язковий. Колекція, яку потрібно очистити.

ClearCollect( колекція,предмет , ... )

  • колекція– Обов’язковий. Колекція, яку потрібно очистити, а потім додати до неї дані.
  • Предмети - обов’язкові. Один або кілька записів або таблиць, які потрібно додати до джерела даних.

Приклади

Очищення та додавання записів до джерела даних

У цих прикладах буде стерто колекцію з ім’ям IceCream (Морозиво) та додано до неї дані. Джерело даних починається з наведеного нижче вмісту.

Зразок джерела даних.

Формула Опис Результат
ClearCollect( Морозиво, { смак: "Полуниця", Кількість: 300 } ) Видаляє всі дані з колекції IceCream, а потім додає запис, що включає кількість морозива з полуничним смаком. Таблиця з одним записом.

Колекцію IceCream також було змінено.
Збирайте (морозиво, { смак: "Фісташки", Кількість: 40 }, { Смак: "Апельсин", Кількість: 200 } ) Додає два записи до колекції IceCream, що включає кількість морозива із фісташковим та апельсиновим смаками. Таблиця з двома записами.

Колекцію IceCream також було змінено.
Прозорий ( Морозиво ) Видаляє всі записи з колекції IceCream. Порожній стіл.

Колекцію IceCream також було змінено.

Покрокові приклади створення колекції див. в статті Створення та оновлення колекції.

Записи і таблиці

У цих прикладах розглядається порядок обробки аргументів записів і таблиць для функцій Collect і ClearCollect.

Формула Опис Результат
ClearCollect (морозиво, { смак: "шоколад", кількість: 100 }, { смак: "ваніль", кількість: 200 } ) Видаляє всі дані, а потім додає два записи до колекції IceCream, що включає кількість морозива з шоколадним і ванільним смаками. Записи, які необхідно додати, надаються як окремі аргументи функції. Шоколадні та ванільні платівки додані до колекції.

Колекцію IceCream також було змінено.
ClearCollect( Морозиво, Столове ( { Смак: "Шоколад", Кількість: 100 }, { Смак: "Ваніль", Кількість: 200 } ) ) Відповідає попередньому прикладу, за винятком того, що записи об’єднуються в таблицю та передаються за допомогою одного аргументу. Вміст таблиці видобувається запис за записом перед додаванням до колекції IceCream. Шоколадні та ванільні платівки додані до колекції та змінені.

Колекцію IceCream також було змінено.
ClearCollect( Морозиво,
{ MyFavorites: Table( { Flavor: "Chocolate", Quantity: 100 }, { Flavor: "Vanilla", Quantity: 200 } ) } )
Відповідає попередньому прикладу, за винятком того, що таблиця переноситься в запис. Записи таблиці не видобуваються. Замість цього вся таблиця додається як клітинка запису. Шоколадні та ванільні платівки, додані до колекції, модифіковані столом, загорнутим у платівку.

Колекцію IceCream також було змінено.