【Power Platform】快速搭建一个功能丰富的申请单,第一部分:Dataverse建表以及使用Power Apps搭建申请单页面

这是我在客户服务中遇到的一个真实案例,在此做一个记录,同时也分享一下这个案例与其解决方案。

客户的需求是需要一个有审批功能的PC使用申请书,客户原本有一套线上审批流程,本次开发是因为客户想要更换平台,想要把原本的审批流以及表单放到Power Platform平台。客户采用的方案是使用Power Apps制作表单,使用Dataverse存放数据,并使用Power Automate搭建审批流,我们要做的就是把客户在原来的平台上搭建的表单和审批流原封不动地在PP平台实现即可。

审批流方面,客户要求该表单一共有四个审批人,前两个审批人由申请人指定,若申请人未指定跳过对应的审批,后两个审批人为固定人员,最后审批通过后抄送给固定的阅览者。而在表单方面,客户除了要求实现原有表单的所有字段外,还要实现一些老平台上就有的额外功能——表单上要实时显示当前审批人和所有审批人的审批意见,以及表单列表中除了能看到自己提交的表单,还要能看到需要自己审批的表单和抄送给自己的表单。

在Dataverse数据表搭建时我们只需要按照客户原有的表单添加对应的字段即可,此外为了满足客户的那部分额外需求,我们还需要添加对应的选择前两级审批人的字段、展示审批意见的字段、展示当前审批人的字段和阅览者字段,届时我们可以通过审批流来实时更新这些字段,同时表单中也可以根据这些字段来实现筛选“我提交的字段”、“抄送我的字段”的功能。

我们直接像往常一样把人员相关的所有字段设置成查找类型的字段,并关联用户表,但这里有一个小问题,就是查找类型的字段无法直接设置默认值,而我们的阅览者是需要有默认值的,这个时候我们可以去设置业务规则来实现自动添加阅览者的值,从而实现类似默认值的一个效果。

这样我们在提交表单后,系统就会自动将我们设置的默认值填到阅览者字段中了。

Dataverse表设置完后我们开始搭建页面,我们这次依然直接选择使用数据开始,还是那句话,有现成的搭起来就是快。

进入系统为我们直接生成的页面后,我们主要需要改的只有两方面,为左侧申请单列表添加“我提交的”、“需要我审批的”和“抄送我的”三个筛选器;以及将例如各级审批意见、当前审批人、阅览者、审批状态等这类不是由申请人填写的字段改成只读模式。

这个筛选器我们只需要向左侧边栏的容器中添加一个新的容器即可。

然后像这个水平容器中添加三个按钮,将这三个按钮的“OnSelect”配置项改为设置一个变量,我们将通过这个变量的值来确定用户按的是哪个按钮。

然后我们修改表单列表的数据源,表单列表原本的“Items”配置项是这样的,想要实现列表中的内容跟随上边三个按钮的选择而变化,只需要将“Items”配置项中的数据源稍加修改即可。

把“[@PC使用申请书]”改成

If(Mode=2,

        Filter([@PC使用申请书],当前审批人.主要电子邮件=User().Email&&审批状态='审批状态 (PC使用申请书)'.审批中), 

        If(Mode=3, 

                Filter([@PC使用申请书],阅览者.主要电子邮件=User().Email&&审批状态='审批状态 (PC使用申请书)'.通过),

                Filter([@PC使用申请书],创建者.主要电子邮件=User().Email)

        )

)

其他部分不需要变。

这样就实现了切换显示“我提交的”、“需要我审批的”和“抄送我的”这三种不同的表单的能力。

至于修改只读状态,把这里改成“视图”就好了,注意这里默认的是写着一个表达式的,这个表达式可以直接删除,删除之后就可以修改了。

之后就是收尾工作了,先设置一下提交后不可修改。

当然也可以选择直接删掉修改按钮,这里客户想要保留修改按钮,以防未来可能出现的变化。

最后再设置一下点击提交按钮后自动把状态改为已提交。

至此,我们的数据库设计和表单搭建基本完成了,下次我们会分享关于这个表单的审批流搭建的相关案例。

  • 25
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值