Редактирование связанных записей таблицы прямо из главной формы другой таблицы
Есть несколько способов работы со связанными записями таблицы в форме таблицы в Power Apps. Например, вы можете включить связанные таблицы в режиме только для чтения с помощью экспресс-формы и создать или отредактировать запись с помощью основной формы в диалоге.
Другой способ работы с записями связанных таблиц — добавление элемента управления компонента формы в основную форму другой таблицы. Элемент управления компонента формы позволяет пользователям редактировать информацию связанной записи таблицы непосредственно из формы другой таблицы.
Например, вот компонент формы на отдельной вкладке в основной форме учетной записи, который позволяет пользователю редактировать запись контакта, не выходя из формы учетной записи.
Например, вот компонент формы в существующей вкладке в основной форме учетной записи, что также позволяет пользователю редактировать запись контакта, не выходя из формы учетной записи Сводка.
Добавить компонент формы в основную форму таблицы
- В левой области навигации выберите Компоненты. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.
- Разверните Вход или Отображение и выберите Форма.
На странице конфигурации элемента управления компонента формы выберите свойства для элемента управления:
- Выберите Столбец подстановки для формы.
- Выберите Связанная форма. В зависимости от конфигурации связанной таблицы для столбца:
- Если столбец связан с одной таблицей (например, столбец "Кем создано"), выберите Связанную форму для использования.
- Если столбец подключен к нескольким таблицам (полиморфный, например столбец владельца), выберите + Связанная форма, затем выберите Добавить, чтобы добавить связанную форму. Продолжайте выбирать + Связанная форма > Добавить, чтобы добавить связанную форму для каждой связанной таблицы.
- По умолчанию все типы клиентских приложений Интернет, Телефон и Планшет включены для отображения формы. Очистите типы клиентов, в которых вы не хотите отображать форму.
- Нажмите кнопку Готово.
- Сохраните, затем Опубликуйте форму.
Добавление компонента формы с использованием классического интерфейса
В этом примере стандартная основная форма Контакт настроена для элемента управления form component, который добавляется в основную форму учетной записи.
Важно!
Изменился способ добавления элемента управления компонентом формы. Мы рекомендуем использовать новый интерфейс. Дополнительная информация: Добавление компонента формы в основную форму таблицы
Войдите в Power Apps.
В левой области выберите Таблицы. Или откройте решение, а затем выберите таблицу, например Организация. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.
Выберите Формы в меню компонентов.
Выберите форму с типом формы Основная из доступных форм.
Выберите Перейти в классический режим. Классический интерфейс редактор форм открывается в вашем браузере в виде вкладки.
Выберите вкладку Вставить. Затем создайте новую вкладку и добавьте новый раздел или добавьте новый раздел к существующей вкладке.
В новом разделе добавьте столбец подстановки, например столбец подстановки Важный контакт.
Выберите столбец подстановки, а затем на вкладке Главная выберите Изменить свойства.
На вкладке Элементы управления выберите Добавить элемент управления, в списке типов элементов управления выберите Элемент управления компонента формы, а затем выберите Добавить.
Выберите Интернет, Планшет и Телефон для компонента.
Выберите Изменить (значок карандаша) и в диалоговом окне Настроить свойство выберите Связать со статическим значением, а затем добавьте запись XML, подобную этой, где TableName — уникальное имя таблицы, а FormID — это идентификатор формы для основной формы:
<QuickForms><QuickFormIds><QuickFormId entityname="TableName">FormID</QuickFormId></QuickFormIds></QuickForms>
- Например, для отрисовки основной формы Контакт в форме учетной записи, используйте:
<QuickForms><QuickFormIds><QuickFormId entityname="contact">1fed44d1-ae68-4a41-bd2b-f13acac4acfa</QuickFormId></QuickFormIds></QuickForms>
- Например, для отрисовки основной формы Контакт в форме учетной записи, используйте:
Выберите ОК и затем снова выберите ОК.
Следует Сохранить и Опубликовать свою форму.
Совет
Чтобы найти уникальное имя для таблицы, выберите таблицу в Power Apps, а затем выберите Настройки. Имя появляется в области таблицы Изменить. Идентификатор формы можно найти в URL-адресе браузера при редактировании формы. Идентификатор следует за частью /edit/ URL-адреса.
В классическом конструктор форм идентификатор формы следует за частью formId%3d URL-адреса.
Поведение компонента формы
В этом разделе описывается поведение компонента формы при использовании в приложении на основе модели.
Выбор записи
Для того, чтобы элемент управления компонентом формы мог показывать форму, столбец подстановки, к которому он привязан, должен иметь значение. В противном случае элемент управления покажет сообщение Исходная запись не выбрана. Один из способов установить значение — добавить в форму элемент управления подстановки, который привязан к тому же столбцу подстановки, что и элемент управления компонентом формы. При использовании элемента управления подстановки для изменения значения столбца подстановки элемент управления компонентом формы покажет форму с данными для нового значения столбца подстановки.
Проверка столбца
Все столбцы, как в основной форме, так и в элементах управления компонентами формы, должны быть допустимыми для отправки данных в Microsoft Dataverse. Это верно как для ошибок проверки столбцов, так и для отсутствия обязательных столбцов и т. д.
Обработчики OnSave
запускаются для основной формы и ее элементов управления компонентов формы. Любой обработчик может отменить сохранение для основной формы и элементов управления компонента формы, используя preventDefault. Это означает, что операция сохранения не может вызывать preventDefault
для отправки данных в Dataverse. Порядок, когда обработчики OnSave
вызываются, не определен. Дополнительные сведения: Событие OnSave формы (справочник по клиентскому API) в приложениях на основе модели
Сохранение записи
После прохождения этапа проверки данные отправляются в Dataverse для каждой записи. В настоящее время каждая запись обновляется независимо с разными запросами. Сохранения не являются транзакционными, и порядок сохранений не определен. Ошибка при сохранении одного компонента формы не приведет к откату изменений в основной форме или других компонентах формы. После завершения каждого сохранения данные обновляются для всех записей в форме.
Уведомления
Уведомления в компоненте формы объединяются в уведомления основной формы. Например, если в компоненте формы есть недопустимые столбцы и вы пытаетесь сохранить, уведомление о недопустимом столбце будет отображаться в верхней части основной формы, а не в компоненте формы.
Обработка ошибок
Если во время сохранения будет несколько ошибок, пользователю будет показана только одна ошибка. Если пользователь может внести изменения, чтобы исправить первую ошибку и сохранить, будет видна следующая ошибка. Пользователь должен будет продолжить сохранение, пока все ошибки не будут устранены.
Изменение записей с несохраненными изменениями
Если в форме для компонента формы есть несохраненные изменения и пользователь пытается изменить столбец подстановки, к которому привязан компонент формы, пользователь будет предупрежден об этом изменении.
API-адрес клиента
Контекст формы доступен для элемента управления компонента формы. Доступ можно получить через контекст формы основной формы, получив доступ к элементу управления через API, например getControl. Прежде чем вы получите доступ к данным для связанной таблицы в элементе управления компонента формы, обработчики событий должны дождаться, чтобы значение isLoaded API элемента управления возвратило true.
Ограничения
Обратите внимание на следующие ограничения при добавлении элемента управления компонента формы в форму таблицы:
Элемент управления компонента формы поддерживает отрисовку только основных форм. Точно так же поддержка добавления элемента управления компонентом формы поддерживается только в основных формах. Другие типы форм, такие как быстрое создание, быстрый просмотр и карточка, не поддерживаются.
Формы с потоком бизнес-процесса в настоящее время не поддерживаются ни в основной форме таблицы, ни в связанной форме таблицы. Если у вас есть форма с потоком бизнес-процессов, вы можете столкнуться с неожиданным поведением. Мы рекомендуем не использовать компонент формы с формой, в которой используется поток бизнес-процессов.
Элемент управления компонента формы не поддерживает встроенные элементы управления компонента формы, например добавление элемента управления компонента формы в форму, которая используется элементом управления компонента формы.
Элемент управления компонентом формы не поддерживает встроенные приложения на основе холста. Вы можете столкнуться с неожиданным поведением этих приложений на основе холста.
Элемент управления компонента формы будет отображать только первую вкладку используемой формы, если в эту форму включено несколько вкладок.
Использование одной и той же формы для разных элементов управления компонентами формы в одной форме не поддерживается.
Форма, которую вы используете с компонентом формы, должна быть включена в ваше приложение. Если это не так или если текущий пользователь не имеет доступа к форме, будет выполнена откат к самой верхней основной форме, включенной в приложение и доступной пользователю (в зависимости от порядка форм). Больше информации: Добавление компонента.
Элементы управления для компонентов формы имеют определенные ограничения при отображении в многосеансовых приложениях. Если клиентский API используется для изменения элемента управления «компонент формы» или, если данные вводятся в форму, изменения могут не сохраняться при переключении между многосеансовыми вкладками.
Вы можете заметить, что стена временной шкалы может не обновляться, если столбец, используемый для установки стены временной шкалы, изменился в компоненте формы. Когда страница обновится, стена временной шкалы обновится, как и ожидалось.
На мобильных устройствах элемент управления временной шкалой в настоящее время не отображается в элементе управления компонента формы.
Для вложенных сеток кнопки команд Показать все записи и Показать связанные записи будут недоступны, если они отображаются внутри компонента формы.
Элементы управления компонентами формы не поддерживаются в диалоговых окнах массового редактирования. Они не будут отображаться в форме в диалоговом окне массового редактирования по умолчанию, и любые изменения, внесенные в связанные с ними записи таблицы, не будут сохранены.
См. также
Использование настраиваемых элементов управления для визуализации данных приложений на основе модели
Примечание
Каковы ваши предпочтения в отношении языка документации? Пройдите краткий опрос (обратите внимание, что этот опрос представлен на английском языке).
Опрос займет около семи минут. Личные данные не собираются (заявление о конфиденциальности).
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по