PowerApps中有现成的请假系统模板,但是如果你不懂PowerApps的话也很难根据自己公司实际的情况去修改这个模板。所以这里我们介绍一个简单的创建请假系统的流程。
需要用到的软件:
1.PowerApps
2.SharePoint Online List
3.Flow
首先我们去SharePoint Online的一个站点里创建一个新的List:
然后我们创建新的列:
那么SharePoint这边就准备就绪了,现在我们切换到PowerApps这边。直接点击新的应用:
我们选择平板电脑,电话就是排版上会稍有不同。
选择 插入>窗体>编辑:
点击连接到数据库:
我们添加两个数据源:
1.Office 365 Users and Groups
2.SharePoint Site–这里我们选择自己刚刚创建的站点中的列表
简单排版一下:
接下来就是我们为每个窗口添加内容了:
这里我们需要添加的只有两个地方
1.员工名
2.替补
而这两个都属于我们刚刚添加的Office 365 User and Groups的连接器。注意,这里员工名就是登陆该系统的员工,替补是一个单选。
我们暂且不解释树状视图里每一项具体是什么,实际生产环境需要你去重命名,不然偶尔会混淆。
点击员工名里的框框:
也可以通过点击左边框所属的视图名称,这里一定要点击右边高级里的解锁,不然编辑不了。
在上方的函数框里输入:User().FullName
这里就默认为Default,不要选择其他的进行更改
对替补栏我们在Item函数里输入Office365Users.SearchUser():
注:所有的大小写不能输错,不然会报错。
到这里基本完成了PowerApps的部分,但是还缺少最关键的一个按钮–提交!
我们添加一个按钮,重命名为提交:
我们也编辑提交按钮的函数:SubmitForm(Form2);NewForm(Form2)
这里的Form就是这个包含了所有信息的框:
这条命令就是提交信息框里的内容并且重置信息框为初始值
我们还需要改一下替补和员工card,这样可以多选:
ForAll(
DataCardValue7.SelectedItems,
{
DisplayName: DisplayName,
Claims: “i:0#.f|membership|” & DisplayName
}
)
那么主体部分已经完成了,我们可以先测试一下:
点击右上角一个类似播放按钮的键
点击提交,如果成功了会发现程序里的值清空,然后我们再到SharePoint的站点列表里去可看到如下:
后面一章会着重在Flow里进行操作
PowerApps中有现成的请假系统模板,但是如果你不懂PowerApps的话也很难根据自己公司实际的情况去修改这个模板。所以这里我们介绍一个简单的创建请假系统的流程。需要用到的软件:1.PowerApps2.SharePoint Online List3.Flow首先我们去SharePoint Online的一个站点里创建一个新的List:然后我们创建新的列:那么ShareP...
Fullstack-Leave应用
系统
v1
在线
请假
管理
系统
是
使用
PHP和MySQL开发的基于Web的应用程序。
请假
管理
系统
的目的是开发一个基于Web的应用程序,
使用
该应用程序可以在线进行
请假
申请和批准的管理。 研究所的教职工可以申请休假,并直接从此申请中调整他们的工作量。 各自部门的HOD可以批准
请假
申请。
使用
的技术:-
前端:HTML,CSS,JavaScript
后端:PHP,MySQL
localserver在XAMPP上运行。
开源的企业信息管理
系统
基础框架。主要定位于“企业信息管理”领域,可用作企业信息管理类
系统
、网站后台管理类
系统
等。JeeSite是非常强调开发的高效性、健壮性和安全性的。
JeeSite
是轻量级的,简单易学,本框架以Spring
Framework为核心、Spring
MVC作为模型视图控制器、Hibernate作为数据库操作层,此组合是Java界业内最经典、最优的搭配组合。前端界面风格采用了结构简单、性能优良、页面精致的Twitter
Bootstrap作为前端展示框架。
JeeSite
已内置一系列企业信息管理
系统
的基础功能,目前包括三大模块,
系统
管理(SYS)模块、内容管理(CMS)模块和在线办公(OA)模块。
系统
管理模块
,包括企业组织架构(用户管理、机构管理、区域管理)、菜单管理、角色权限管理、字典管理等功能;
内容管理模块
,包括内容管理(文章、链接),栏目管理、站点管理、公共留言、文件管理、前端网站展示等功能;
在线办公模块
,提供简单的
请假
流程实例。
最近在研究Power Apps,尤其是以
SharePoint
Online 为数据源的Power Apps画布应用,下面就分享一下如何在画布应用中读取
SharePoint
列表
数据。
1.
创建
好测试
使用
的
列表
,
列表
的字段我就随便
创建
了一下,大家看一下;
2.
创建
一个测试用的画布应用,如下图:
3.
创建
一个数据源,搜索
SharePoint
可以找到ShareP...
之前我们
创建
了一个可以想
SharePoint
列表
进行写入的
PowerApps
小程序,现在我们在
Flow
中去
创建
这样的审批流:
1.
SharePoint
Online
列表
中新添加了
请假
申请
2.向申请者的直接汇报领导发送邮件
3.领导在邮件中通过或拒绝
请假
4.更新
SharePoint
Online
列表
中的
请假
审批状态并通知申请人
注:
PowerApps
现有的
请假
系统
做的较为完善,分为员工登陆和经理...
• BrowseScreen,这个一般是用来显示数据
列表
的,对应数据操作是“查询
列表
”。
• DetailScreen,这个一般是用来显示某条数据的详细信息的,对应数据操作是“查询”。
• EditScreen,这个屏幕比较有意思,它一般用来新建数据,或者编辑数据,对应数据操作是“插入”和“更新”。• 普通控件:如文本/控件/多媒体控件/图形控件
• 容器控件:主要是通过画布应用构建自己的第一个
PowerApps
应用Onchange: 触发器Onselect: 点击函数(User),用来获取当前用户的邮箱,
Power Platform 零基础 Power Apps canvas+
SharePoint
画布应用基础搭建应用流程学习实践进阶
我们在上节学习了基础 Power Apps canvas+Power Automate 画布应用基础搭建应用流程. 那么本节我们继续学习实践进阶基础画布应用。
本节学习来源:探索BI、自动化、低代码的技术与融合— 微软Power Platform平台赋能全民开发者 《全民开发大讲堂》.
canvas app 进阶Power Platform 零基础 Power Apps
SharePoint
集成PowerAppa和
Flow
教程(一,搭建
PowerApps
环境)
通过Office 365 E3,您可以访问Office产品的最新安装以及
PowerApps
和
Flow
等集成协作服务。
在Office 365网站上注册Office 365 E3试用版:https://aka.ms/edx-dat227x-o365
输入所有必需信息,然后单击下一步。
输入用户名,...
我们经常会在Power Apps里去修改
SharePoint
Online的数据,除了Form空间之外,就是Patch了。
1.首先,我们需要有一个
列表
保存数据,如下图:
2.在Power Apps中添加数据源,将
SharePoint
Online
列表
添加进来,如下图:
3.如果已经有连接了,直接选择就行了,没有的话就需要手动添加了,如下图:
4.在...
在
SharePoint
列表
中添加数据的时候,下拉菜单的级联选择一直是一个非常实用的功能,尤其是有很多数据的情况,级联选择可以根据上一层的选择,自动过滤下一层的选择,方便用户查找和选择准确的信息。一个最常用的情景是选择供应商的地区和国家,例如有三个
列表
,一个是供应商所在的大洲,一个是国家,一个是供应商。当用户选择州的时候,会自动列出属于这个州的国家。避免用户迷失在大量的数据中。
这里展示一下如何在...
<groupId>org.camunda.bpm</groupId>
<artifactId>camunda-engine</artifactId>
<version>7.14.0</version>
</dependency>
然后你需要
创建
一个 BPMN 文件来定义你的
请假
流程。例如,你可以
创建
一个名为 `leave-process.bpmn` 的文件,其中包含以下步骤:
1. 开始事件(Start Event)
2. 用户任务(User Task):
请假
申请
3. 排他网关(Exclusive Gateway):根据
请假
天数决定审批人
4. 用户任务(User Task):部门经理审批
5. 用户任务(User Task):总经理审批
6. 结束事件(End Event)
这个 BPMN 文件的 XML 可以长成这样:
```xml
<bpmn2:definitions xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
xmlns:dc="http://www.omg.org/spec/DD/20100524/DC"
xmlns:di="http://www.omg.org/spec/DD/20100524/DI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"
id="Definitions_1">
<bpmn2:process id="leave-process" isExecutable="true">
<bpmn2:startEvent id="start-event" name="Start"></bpmn2:startEvent>
<bpmn2:userTask id="leave-application" name="
请假
申请"></bpmn2:userTask>
<bpmn2:exclusiveGateway id="exclusive-gateway" name="根据
请假
天数决定审批人"></bpmn2:exclusiveGateway>
<bpmn2:userTask id="department-manager-approval" name="部门经理审批"></bpmn2:userTask>
<bpmn2:userTask id="general-manager-approval" name="总经理审批"></bpmn2:userTask>
<bpmn2:endEvent id="end-event" name="End"></bpmn2:endEvent>
<bpmn2:sequence
Flow
id="
flow
1" sourceRef="start-event" targetRef="leave-application"/>
<bpmn2:sequence
Flow
id="
flow
2" sourceRef="leave-application" targetRef="exclusive-gateway"/>
<bpmn2:sequence
Flow
id="
flow
3" sourceRef="exclusive-gateway" targetRef="department-manager-approval">
<bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[${days <= 3}]]></bpmn2:conditionExpression>
</bpmn2:sequence
Flow
>
<bpmn2:sequence
Flow
id="
flow
4" sourceRef="exclusive-gateway" targetRef="general-manager-approval">
<bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[${days > 3}]]></bpmn2:conditionExpression>
</bpmn2:sequence
Flow
>
<bpmn2:sequence
Flow
id="
flow
5" sourceRef="department-manager-approval" targetRef="end-event"/>
<bpmn2:sequence
Flow
id="
flow
6" sourceRef="general-manager-approval" targetRef="end-event"/>
</bpmn2:process>
</bpmn2:definitions>
其中,`${days}` 表示
请假
天数,根据
请假
天数的不同,审批人也会不同。
接下来,在你的 Java 代码中,你可以
使用
Camunda 的 API 来
创建
一个简单的
请假
流程实例。例如:
```java
public static void main(String[] args) {
//
创建
流程引擎
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
// 部署流程定义
Deployment deployment = processEngine.getRepositoryService()
.createDeployment()
.addClasspathResource("leave-process.bpmn")
.deploy();
// 启动流程实例
Map<String, Object> variables = new HashMap<>();
variables.put("days", 2);
processEngine.getRuntimeService()
.startProcessInstanceByKey("leave-process", variables);
// 关闭流程引擎
processEngine.close();
这个代码会启动一个
请假
流程实例,并且根据
请假
天数自动指定审批人。你可以根据需要修改这个代码,添加更多的步骤和条件分支。