⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xgprocess.cls

📁 asp+sql2000做的oa软件+vb制作的组件源码
💻 CLS
📖 第 1 页 / 共 2 页
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "xgprocess"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Option Explicit
Private Cnn As New ADODB.Connection
Private ProRs As New ADODB.Recordset '循环流程纪录
Private Rs As New ADODB.Recordset
Private Com As New ADODB.Command     '处理插入与更新

Private Curstepnum As String
Private Curflowname As String
Private Curformnum As String
Private Curformname As String

Private Prostr As String
Private ErrorMessage As String

Public Sub flowprocess(Curuserdept)
   Dim Ifagree As String
   Dim Parent_no, Action_type, Tell_type, Judge_type, Judge_result, Form_unit, Judge_symbol, Judge_value As String
   Dim Flow_title, Check_member, Company_member, Formtype, Uname As String
   Dim Tname()
   
   If Cnn.State = 1 Then
      Prostr = "select * from workflow_process_rec "
      ProRs.Open Prostr
      While Not ProRs.EOF And Not ProRs.BOF  '有工作流处理纪录
         Curstepnum = ProRs.Fields("flow_no")       '当前步骤
         Curflowname = ProRs.Fields("flow_name")    '当前流程名
         Curformnum = ProRs.Fields("date_id")       '当前表单ID
         Prostr = "select form_name from workflow_date_id where date_id='" & Curformnum & "'"
         Rs.Open Prostr
         If Not Rs.EOF And Not Rs.BOF Then Curformname = Rs.Fields("form_name") '当前表单名称
         Rs.Close
         
         Prostr = "select * from workflow_flow_construction where flow_no='" & Curstepnum & "' and flow_name='" & Curflowname & "'"
         Rs.Open Prostr
         If Not Rs.EOF And Not Rs.BOF Then   '有当前流程步骤纪录
            Parent_no = Rs.Fields("parent_no")
            Action_type = Rs.Fields("action_type")
            Tell_type = Rs.Fields("tell_type")
            Judge_type = Rs.Fields("judge_type")
            Judge_result = Rs.Fields("judge_result")
            Form_unit = Rs.Fields("form_unit")
            Judge_symbol = Rs.Fields("judge_symbol")
            Judge_value = Rs.Fields("judge_value")
            Flow_title = Rs.Fields("flow_title")
            Check_member = Rs.Fields("check_member")
            Company_member = Rs.Fields("company_member")
            Rs.Close
            
            If Action_type <> "结束" Then
               '//------------------------有审批完成的工作------------------------------------------------------
               Prostr = "select * from workflow_check_rec where ifcheck='yes' and flow_name='" & Curflowname & "' and flow_no='" & Curstepnum & "' and date_id='" & Curformnum & "'"
               Rs.Open Prostr
               While Not Rs.EOF And Not Rs.BOF
                  Ifagree = Rs.Fields("ifagree")
                  Rs.Close
                        
                  Prostr = "select flow_no from workflow_flow_construction where parent_no='" & Curstepnum & "' and flow_name='" & Curflowname & "' and judge_result='" & Ifagree & "'and judge_type='审批判断'"
                  Rs.Open Prostr
                  Com.CommandText = "update workflow_process_rec set flow_no='" & Rs.Fields("flow_no") & "' where flow_no='" & Curstepnum & "' and flow_name='" & Curflowname & "' and date_id='" & Curformnum & "'"
                  Com.Execute
                  Rs.MoveNext
               Wend
               Rs.Close
               '//----------------------------------------------------------------------------------------------
                    Select Case Action_type
                        '---------------------------------------------
                       Case "开始"
                            Forprocess ("开始")
                        Case "判断"
                            Forprocess ("判断")
                       '---------------------------------------------
                       Case "审批"
                          Select Case Check_member
                             Case "公司负责人"
                                Prostr = "select username from userinf where ifcompanymang='yes'"
                                Rs.Open Prostr
                                While Not Rs.EOF And Not Rs.BOF
                                    Com.CommandText = "insert into workflow_check_rec (checkusername,date_id,flow_name,flow_no)values('" & Rs.Fields("username") & "','" & Curformnum & "','" & Curflowname & "','" & Curstepnum & "')"
                                    Com.Execute
                                    Rs.MoveNext
                                Wend
                                Rs.Close
                             Case "部门负责人"
                                Prostr = "select username from userinf where ifdeptmentmang='yes' and userdept='" & Curuserdept & "'"
                                Rs.Open Prostr
                                While Not Rs.EOF And Not Rs.BOF
                                    Com.CommandText = "insert into workflow_check_rec (checkusername,date_id,flow_name,flow_no)values('" & Rs.Fields("username") & "','" & Curformnum & "','" & Curflowname & "','" & Curstepnum & "')"
                                    Com.Execute
                                    Rs.MoveNext
                                Wend
                                Rs.Close
                            Case "公司成员"
                                    Prostr = "select * from workflow_check_rec where checkusername='" & Company_member & "' and date_id='" & Curformnum & "' and flow_name='" & Curflowname & "' and flow_no='" & Curstepnum & "'"
                                Rs.Open Prostr
                                If Rs.EOF And Rs.BOF Then
                                  Com.CommandText = "insert into workflow_check_rec (checkusername,date_id,flow_name,flow_no)values('" & Company_member & "','" & Curformnum & "','" & Curflowname & "','" & Curstepnum & "')"
                                  Com.Execute
                                  Rs.MoveNext
                                End If
                                Rs.Close
                          End Select
                       Case "通知"
                            Forprocess ("通知")
                            '------------------------------------------
                          Select Case Tell_type
                             Case "通知表单提交人"
                                Prostr = "select username from workflow_date_id where date_id='" & Curformnum & "' and form_name='" & Curformname & "'"
                                Rs.Open Prostr
                                Com.CommandText = "insert into workflow_tell_user(username,date_id,form_name,flow_name,flow_no)values('" & Rs.Fields("username") & "','" & Curformnum & "','" & Curformname & "','" & Curflowname & "','" & Curstepnum & "')"
                                Com.Execute
                                Rs.Close
                             Case "通知所有人"
                                Prostr = "select username from userinf"
                                Rs.Open Prostr
                                While Not Rs.EOF And Not Rs.BOF
                                   Com.CommandText = "insert into workflow_tell_user(username,date_id,form_name,flow_name,flow_no)values('" & Rs.Fields("username") & "','" & Curformnum & "','" & Curformname & "','" & Curflowname & "','" & Curstepnum & "')"
                                   Com.Execute
                                Wend
                                Rs.Close
                             Case "通知指定人"
                                Com.CommandText = "insert into workflow_tell_user(username,date_id,form_name,flow_name,flow_no)values('" & Company_member & "','" & Curformnum & "','" & Curformname & "','" & Curflowname & "','" & Curstepnum & "')"
                                Com.Execute
                             Case "通知表单单元人员"
                                Prostr = "select form_type from workflow_form_construction where form_arrno='" & Form_unit & "' and form_name='" & Curformname & "'"
                                Rs.Open Prostr
                                If Not Rs.EOF And Not Rs.BOF Then Formtype = Rs.Fields("form_type")
                                Rs.Close
                                             
                                Prostr = "select content from workflow_" & Formtype & "_content where form_arrno='" & Form_unit & "' and form_name='" & Curformname & "' and date_id='" & Curformnum & "'"
                                Rs.Open Prostr
                                If Not Rs.EOF And Not Rs.BOF Then Uname = Rs.Fields("content")
                                Rs.Close

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -