实现无人值守流程审批管理

实现无人值守流程审批管理

你想实现,不登陆网站就能审批文件?你想实现不用去公司就可以 解决自己的审批任务?
我可以给你一个 很好的思路。
我们可以很好的利用手机短信的业务来实现事件通过Ws回调,
只需要一个短信 就能实现你的审批 或者拒绝

大家可以举一反三 我只是告诉大家可以这样做

如图:
下面这个列子就是现实一个 无人值守的审批 
代码实现如下:

上面是我的截图
下面是代码

using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Workflow;
using System.Data;

namespace SPWorkflowTaskDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                SPSite site = null;
                SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    site = new SPSite(@"http://lh-vmpc:6060/");
                    SPWeb web = site.OpenWeb();
                    web.AllowUnsafeUpdates = true;
                    site.AllowUnsafeUpdates = true;
                    SPList lists = web.Lists["申请列表"];
                    SPWorkflowManager manager = site.WorkflowManager;

SPWorkflowTaskCollection tasks = lists.Items[lists.Items.Count - 1].Workflows[0].Tasks;
                    int index = tasks.Count - 1;
                    //foreach (SPField field in tasks[index].Fields)
                    //{

//    Console.WriteLine("name:{0}---Value:{1}", field.InternalName, tasks[index][field.InternalName]);

//}

tasks[index]["Status"] = "批准";
                    tasks[index]["Completed"] = "True";
                    tasks[index]["PercentComplete"] = 1;
                    tasks[index]["WorkflowOutcome"] = "批准";
                    tasks[index].Properties[SPBuiltInFieldId.Comment] = "批准";
                    tasks[index].Properties["ows_TaskStatus"] = "@";
                    Hashtable ht = new Hashtable();
                    ht.Add("Status", "已完成");
                    ht.Add("Completed", true);
                    ht.Add("ows_TaskStatus", "#");
                    ht.Add("WorkflowOutcome", "OK");
                    SPWorkflowTask.AlterTask(tasks[index], ht, true);
                    tasks[index].Update();

web.Close();
                    web.Dispose();
                    site.Close();

site.Dispose();
                });
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }

代码没有什么实际的价值,只是希望大家可以在其中学习一些东西,

时间: 2024-10-07 01:51:04

实现无人值守流程审批管理的相关文章

企业流程组织管理

流程管理对深受传统观念特别是权力意识制约的中国企业而言不亚于一场思想革命.没有企业统一组织,没有广泛的宣传,没有认识上的统一,就不会有真正的流程管理.不少企业在尝试流程管理中失败甚至摔倒,除了技术方法的欠缺之外,更重要的原因就是思想观念没有转变,只有流程形式(徒有其形--流程图),而无流程实质(管理思想的变革).因此,企业决定导入流程管理,必须成立流程管理领导小组,进行转变观念教育,组织流程管理的技术方法学习,其次才能组织流程优化实施活动. 企业流程优化领导小组的人员构成. 企业负责人亲自挂帅担

工作流学习——Activiti流程定义管理三步曲

一.前言 在上一篇文章我们通过一个小demo对Activiti进行了宏观的介绍,让大家对Activiti有了整体的认识,这篇文章我们来学习具体的流程定义管理的CRUD. 二.正文 流程定义是什么 ProcessDefinition(流程定义)就是一个流程的步骤说明,比如我们接下来要说的这个流程,申请人王三发起提交申请,李四作为部门经理进行审批,审批完成后,此申请到达下一级总经理王五,进行审批.就这么整个流程说明其实就是流程定义,不过在Activiti中整个流程定义是以helloworld.bpm

工作流学习——Activiti流程定义管理三步曲 (zhuan)

http://blog.csdn.net/zwk626542417/article/details/46602419 **************************************************************** 一.前言 在上一篇文章我们通过一个小demo对Activiti进行了宏观的介绍,让大家对Activiti有了整体的认识,这篇文章我们来学习具体的流程定义管理的CRUD. 二.正文 流程定义是什么 ProcessDefinition(流程定义)就是一个流

基于Scriptcase的流程审批开发明细

通过Scriptcase的快速代码生成工具,可以方便的生成表单和行式报表:通过weBasic框架的流程配置向导和流程管理工具,可以方便的定义流程的节点.流程关联关系.收件人.加载函数.发送函数等等,从而使得业务数据可以进行多步骤的流程式审批. 流程审批可以使用在企业内部的请假申请.费用审批.事项审批.业务流转等各个方面,可以加快企业内部的业务数据流转,及完成企业业务信息的数据化. 可以通过 http://www.phpscriptcase.com/flow/ 查看使用Scriptcase开发流程

基于SSM框架下的JAVA企业流程审批系统

每天记录学习,每天会有好心情.*^_^* 今天将为大家分析一个企业流程审批系统(现代企业对资金流的控制十分严格,但是绝大部分企业的费用审批还停滞在手动填单.逐级递交.逐级审批的现状,既没有效率也不利于与国际接轨.文中采用基于JAVA技术和mysql数据库开发了一个改变原始审批流程操作的自动审批流程系统,缩短了审批时间,提高了企业的工作效率,真正实现了无纸办公,为电子商务时代企业的发展提供了崭新的模式.),该项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE.企业流程审批

CustomerWise助力网目信息,支持全球IT外包运维流程化管理

2014年4月,北京--TechExcel喜签网目信息技术(上海)有限公司(以下简称"网目信息"),采用TechExcel公司CustomerWise产品助力其建立全球用户统一门户,统一各分公司的服务标准和服务流程,为用户提供全球标准化的服务. ICONZ-Webvisions公司(网目信息)总部设在新加坡,拥有20多年的IT运维及外包服务经验历史,是唯一以亚洲为中心,为亚洲.澳大利亚和全球市场提供"云"和托管服务的供应商.ICONZ-Webvisions可以利用其

流程定义管理

package com.kite.pd; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.util.List; import java.util.zip.ZipInputStream; import org.apache.log.output.FileOutputLo

BOS项目 第10天(activiti工作流第二天,流程变量、组任务、排他网关、spring整合activiti、项目中实现流程定义管理)

BOS项目笔记 第10天 今天内容安排: 1.流程变量(设置.获取) 2.组任务(候选人.候选组) 3.排他网关使用 4.spring整合activiti 5.将activiti应用到bos项目中 6.在bos项目中实现流程定义管理(部署.查询.查看png.删除) 1. 流程变量 1.1 设置流程变量的方式 l 方式一:启动流程实例时设置 l 方式二:办理任务时设置 l 方式三:使用RuntimeService的set方法设置 l 方式四:使用TaskService的set方法设置 注意:如果设

BOS项目 第11天(activiti工作流第三天,流程实例管理、项目中的用户和角色同步到activiti的用户和组表、设计物流配送流程、启动物流配送流程、组任务操作(查询、拾取)、个人任务操作(查询、办理))

BOS项目笔记 第11天 今天内容安排: 1.流程实例管理(查询.查看运行状态) 2.将bos系统中的用户和角色同步到activiti的用户和组表 3.设计物流配送流程 4.启动物流配送流程 5.组任务操作(查询.拾取) 6.个人任务操作(查询.办理) 1. 流程实例管理 1.1 查询流程实例列表 第一步:创建一个流程实例管理Action,提供list方法,查询流程实例列表数据 第二步:配置struts.xml 第三步:提供processinstance.jsp页面,展示列表数据 <s:iter