【问题标题】:Validate Stored Procedure Success in Powerapps在 Powerapps 中验证存储过程是否成功
【发布时间】:2020-01-09 17:48:54
【问题描述】:

我对 powerapps 还很陌生,但听起来在能够为 SQL Server 存储过程返回值方面存在重大限制。

我有一个应用程序,当您按下按钮时,它会从屏幕上的各种控件中提取数据并将其提交给存储过程。这是通过调用流来完成的。代码基本上是:

EditPuddles.Run(ActionDrop.Selected.Value, PuddlesText.Text,
                ClassicDrop.Selected.Value, ServiceRates.Text, User().FullName)

代码可以正常工作并按预期执行。然而,我现在最需要的是告诉我它何时失败或成功。

理想情况下,我会让它返回一个值,我可以使用该值来确定是否应该显示成功或失败消息。我知道我无法返回数据集,但它至少必须能够判断是否有错误。

【问题讨论】:

  • 查看 Flow 中的“配置运行后”选项。执行 PowerApps 响应、电子邮件等,以在应用程序失败和/或成功时通知您。 flow.microsoft.com/en-us/blog/error-handling
  • 我确实看到了,但是我需要更强大的错误处理,例如什么错误?

标签: sql-server stored-procedures powerapps


【解决方案1】:

我也是 PowerApps 和 Power Automate 的新手,但我想出了一种方法,可以在执行流程后显示成功结果和失败错误消息。

PowerApps

对于您的示例,按钮的属性“OnSelect”的代码应为:

UpdateContext({ PuddlesResult: EditPuddles.Run("a", "b", "c") });
If(
   Not IsBlank(PuddlesResult.errormessage), 
   // on failure:
   Notify(PuddlesResult.errormessage, NotificationType.Error, 5000),
   // on success: (use PuddlesResult.ResultSets.Table1)
   Notify("All good", NotificationType.Information, 5000)
)

电源自动化

您在 Power Automate 中的流程应如下所示:

捕获错误信息

发生错误时,“执行存储过程 (V2)”操作会返回输出:

要在输出中返回消息,请更新操作“响应 PowerApp 或流”:

  • 文本:错误消息
  • 表达式:outputs('Execute_stored_procedure_(V2)')?['body']?['message']

仅在失败/超时时返回错误消息

在“响应 PowerApp 或流”操作上选择“配置运行后”:

并将其设置为仅在失败和超时时运行此操作:

要返回正常结果,您可以使用操作“响应”并将“配置运行后”设置设置为“成功”。

我希望这对您和其他人有所帮助,因为我也花了很长时间才弄清楚这一点。但它可以让您在 PowerApp 中适当地处理成功和失败。

【讨论】:

  • 感谢您的努力,但部分由于没有弄清楚这一点而失去了这份工作:)。
  • 很遗憾听到那个人...希望你能找到别的东西。
猜你喜欢
  • 2022-10-05
  • 1970-01-01
  • 2022-01-03
  • 1970-01-01
  • 2018-12-01
  • 1970-01-01
  • 2015-05-16
  • 2021-04-11
  • 1970-01-01
相关资源
最近更新 更多