0

如果用户未经授权进行其他导航,我在屏幕可见参数条件下存在问题,如果用户无权查看特定屏幕,则用户将被重定向到另一个屏幕。如果还有其他选择,请为我提供解决方案。

If(
    IsBlank(
            Param("ID")
   ),
   0,
   If (
        LookUp(
                <<Table_Name>>, 
                <<Field_name>> = Param("ID"),
                <<Field_name>>
              ) = Office365Users.MyProfile().Mail,
        Param("ID"),
        Navigate(Auth_404)
      )
)

提前致谢

4

2 回答 2

1

OnVisible您是否考虑过将代码移至应用程序,而不是执行您的第一个屏幕的代码OnStart

于 2019-11-07T22:38:53.297 回答
0

您可以通过解决方法来实现这一点,

有一个按钮 'button_A' 和 On select = Navigate(Auth_404) 然后将屏幕上的可见更改为

If(
IsBlank(
        Param("ID")),0,If (
    LookUp(
            <<Table_Name>>, 
            <<Field_name>> = Param("ID"),
            <<Field_name>>
          ) = Office365Users.MyProfile().Mail,
    Param("ID"),
    Select(button_A)
  ))

有关更多信息Trigger OnSelect on a Button

于 2019-11-07T11:22:19.370 回答