Одна галерея из списка нескольких точек обмена (все те же поля) - PullRequest
0 голосов
/ 12 декабря 2018

В настоящее время у моего powerapp есть Галерея, которая основана на одном списке sharepoint, но Я хотел бы создать галерею в моем приложении, которая должна отображать элементы из 3 разных списков sharepoint (все имеют одинаковые столбцы / поля) и я использую фильтр на камбузе, чтобы пользователь мог печатать на поле и получать только фильтрованный ответ вместо отображения всех данных

Пожалуйста, помогите

У меня уже есть эта формула вgallery1.items:

Поиск ('PO list', TextSearchBox.Text, "Branch_x0020_Code") Например, рассмотрим, у меня есть 2 list: list 1 & list 2, теперь, когда пользователь выполняет поиск в окне поиска (т.е.TextSearchbox) я хочу, чтобы галерея фильтровала данные, в которых «Branch_x0020_Code» равен поисковым данным из обоих списков

РЕДАКТИРОВАТЬ 1: эту формулу я пытаюсь реализовать: Формула: ClearCollect (Aitems, 'PO list ', PO 2)

, и ошибка отображается, как показано на следующем рисунке:

error

My «Список PO» имел столбец с именем status, а его тип был однострочный, тогда как в «PO 2» тип столбца состояния был «Выбор». Поскольку я не могу изменить тип данных, я изменил один из столбцов спискаимя "Статус 0" .Теперь единственное различие между этими двумя списками, которое у меня есть, состоит в том, что в одном списке есть дополнительные столбцы, а в другом нет.Но все же, когда я пытаюсь реализовать, я получаю «Несовместимый тип» Ошибка.

Ответы [ 2 ]

0 голосов
/ 18 декабря 2018

Если у вас есть одинаковые столбцы / поля для двух списков, тогда решение Райана будет работать.Однако, если некоторые поля отличаются (либо по названию, либо по типу), вы можете использовать одну из многих функций, которые могут помочь вам изменить «формы таблицы» в PowerApps.

В вашем конкретном случае, если у вас есть следующие два списка в SharePoint:

  • List01
    • Заголовок (Текст)
    • Статус (Текст)
  • List02
    • Заголовок (Текст)
    • Статус (Выбор)

Затем вы можете создать коллекциюс содержимым обоих списков с помощью этого выражения:

ClearCollect(
    ItemsCollection,
    ShowColumns(
        AddColumns(List01, "StatusText", Status),
        "Title", "StatusText"));
Collect(
    ItemsCollection,
    ShowColumns(
        AddColumns(List02, "StatusText", Status.Value),
        "Title", "StatusText"));

Вышеприведенное выражение создает новый столбец (*) с именем «StatusText» в обоих списках, нормализуя тип столбца «Состояние» к тексту, а затемвыберите столбцы Title и StatusText из двух списков, что обеспечит совпадение схемы (типов полей).

(*) Функция AddColumns не создает никаких дополнительных столбцов в списке SharePoint;вместо этого он возвращает новую «виртуальную» таблицу, которую можно использовать в выражениях / элементах управления в PowerApps.

0 голосов
/ 13 декабря 2018

Галереи не могут напрямую отображать результаты из нескольких источников данных одновременно.Однако один из способов добиться этого - сначала собрать данные из различных списков в одну коллекцию , а затем связать галерею с этой коллекцией.

Например, вы можете сделать это в OnStart свойство приложения или свойство OnSelect кнопки «обновление»:

ClearCollect( CombinedListsCollection,
 List1, List2, List3 )

Затем вместо этого свяжите gallery.items с коллекцией:

Search( CombinedListsCollection, TextInput.Text, [columns])

Еще один способ добиться этого - динамически собирать отфильтрованный набор записей при поиске пользователями.Например, в элементе управления «Ввод текста» для поля поиска установите для свойства «OnChange» значение:

ClearCollect(CombinedFilteredLists,
Filter(List1, StartsWith(Title, TextInput1.Text)),
Filter(List2, StartsWith(Title, TextInput1.Text)))

Затем установите для элементов галереи значение CombinedFilteredLists.

Использование StartsWith () , обернутый в Filter () для делегирования больших списков SharePoint, как в примере выше.

Вот пример этого в действии: Объединение двух списков SharePoint в одну галерею в PowerApps

...