PowerApps:如何从 Table 导航到另一个 Table
PowerApps : How to Navigate from Table to another Table
我是 PowerApps 的新手。
我想问的是如何将屏幕从 table 导航到另一个 table,我有 2 个 table 名为 table3
和 table2
当我第一次启动应用程序时,数据源使用 table3
当我单击按钮时,我想导航到另一个 table table
,但它失败了
我在单击箭头按钮时使用的代码
Filter(Table3,Code in Table2.Club);Navigate(DetailScreen2, ScreenTransition.Fade)
显示第二个屏幕的代码是这个
BrowseGallery1.Selected
这是我的数据源数据(使用 excel)
更新
我知道表单不接受来自静态 excel 文件的 tables。两种可能的方法来做到这一点。
1. 创建第二个 table 作为图库。连接到 table2 并将项目设置为 BrowseGallery1.Selected
。我删除了箭头按钮并更改了边框,使其看起来更像显示。
- 将您的 excel 文件存储到某些云存储,例如 SharePoint、OneDrive、Google Drive、Dropdox。 PowerApps 可以直接自动创建这个应用程序。这样这个应用程序也连接到数据。 Check this article.
我相信您对 PowerApps 中的某些术语感到困惑。该平台中的应用程序由许多 屏幕 组成,您可以 导航 从一个屏幕到另一个屏幕。每个屏幕都可以有显示来自(可能)一个或多个 table 的数据的控件。如果您想要 "navigate from one table to another",您需要创建几个屏幕,一个包含 table 之一,另一个包含另一个 table,并在它们之间导航。
我能找到的另一个问题是你对箭头 OnSelect
属性 的表达:
Filter(Table3,Code in Table2.Club);Navigate(DetailScreen2, ScreenTransition.Fade)
该表达式的第一部分没有执行任何操作 - Filter
函数不会更改其任何参数;相反,它 returns 一个新的 table (不存储在任何地方,只是可以用作另一个表达式或控件的输入的东西)。
如果我对您的场景理解正确,您有两个 table,并且您希望用户 select(在浏览屏幕中)第一个 table 中的项目(table3
),在第二个(浏览屏幕)上,您要编辑第二个 table (table2
) 中的单个项目 - 使用第一个 selection 中的代码来找到您要在第二个 table.
上显示的项目
如果是这种情况,您可以通过多种方式解决。您可以在箭头的 OnSelect
属性 中(在图库中显示来自 table3
的数据)以下表达式:
Navigate(DetailScreen2, ScreenTransition.Fade, { selectedCode: ThisItem.Code })
Navigate
function 可以采用可选的第三个参数,一个 context 将被传递到下一个屏幕。这样,在屏幕 DetailScreen2
中可以引用上下文变量 code
,并使用以下属性配置显示形式:
DataSource: table2
Item: LookUp(table2, Code = selectedCode)
Lookup
function 将 return 第二个 table 的项目,然后可以在该屏幕的表单中显示。
我是 PowerApps 的新手。
我想问的是如何将屏幕从 table 导航到另一个 table,我有 2 个 table 名为 table3
和 table2
当我第一次启动应用程序时,数据源使用 table3
当我单击按钮时,我想导航到另一个 table table
,但它失败了
我在单击箭头按钮时使用的代码
Filter(Table3,Code in Table2.Club);Navigate(DetailScreen2, ScreenTransition.Fade)
显示第二个屏幕的代码是这个
BrowseGallery1.Selected
这是我的数据源数据(使用 excel)
更新
我知道表单不接受来自静态 excel 文件的 tables。两种可能的方法来做到这一点。
1. 创建第二个 table 作为图库。连接到 table2 并将项目设置为 BrowseGallery1.Selected
。我删除了箭头按钮并更改了边框,使其看起来更像显示。
- 将您的 excel 文件存储到某些云存储,例如 SharePoint、OneDrive、Google Drive、Dropdox。 PowerApps 可以直接自动创建这个应用程序。这样这个应用程序也连接到数据。 Check this article.
我相信您对 PowerApps 中的某些术语感到困惑。该平台中的应用程序由许多 屏幕 组成,您可以 导航 从一个屏幕到另一个屏幕。每个屏幕都可以有显示来自(可能)一个或多个 table 的数据的控件。如果您想要 "navigate from one table to another",您需要创建几个屏幕,一个包含 table 之一,另一个包含另一个 table,并在它们之间导航。
我能找到的另一个问题是你对箭头 OnSelect
属性 的表达:
Filter(Table3,Code in Table2.Club);Navigate(DetailScreen2, ScreenTransition.Fade)
该表达式的第一部分没有执行任何操作 - Filter
函数不会更改其任何参数;相反,它 returns 一个新的 table (不存储在任何地方,只是可以用作另一个表达式或控件的输入的东西)。
如果我对您的场景理解正确,您有两个 table,并且您希望用户 select(在浏览屏幕中)第一个 table 中的项目(table3
),在第二个(浏览屏幕)上,您要编辑第二个 table (table2
) 中的单个项目 - 使用第一个 selection 中的代码来找到您要在第二个 table.
如果是这种情况,您可以通过多种方式解决。您可以在箭头的 OnSelect
属性 中(在图库中显示来自 table3
的数据)以下表达式:
Navigate(DetailScreen2, ScreenTransition.Fade, { selectedCode: ThisItem.Code })
Navigate
function 可以采用可选的第三个参数,一个 context 将被传递到下一个屏幕。这样,在屏幕 DetailScreen2
中可以引用上下文变量 code
,并使用以下属性配置显示形式:
DataSource: table2
Item: LookUp(table2, Code = selectedCode)
Lookup
function 将 return 第二个 table 的项目,然后可以在该屏幕的表单中显示。