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

📄 addnew00.asp

📁 功能齐全的oa系统
💻 ASP
📖 第 1 页 / 共 2 页
字号:
<%option explicit%>

<%
'----------------------------------------------------------------------
'---------------文件包含部分说明---------------------------------------
'----------------------------------------------------------------------
'---------------	使用数据库连接包含	DataEnvi.asp	---------------
'---------------	使用字符串包含	String.asp	-----------------------
'---------------	使用分页操作包含	Page.asp	-------------------
'----------------------------------------------------------------------
%>

<!--#include file ="../../../Include/DataEnvi.asp"-->
<!--#include file = "../../../Include/String.asp"-->
<!--#include file = "../../../Include/Page.asp"-->
<!--#include file = "../../../Include/SelectValue.asp" -->

<%
	Dim objDB,objRS,strSQL,strBody
	Dim	IsFromAddnew4					'由Addnew4.asp里Post过来,只有第一次进入本页面时才有值为 True , 其他时间都为 Null
	Dim FlowID,TempletID,ComMsgType		'第一次都是从 Addnew4.asp post 过来,以后由 本页面自己 post 过来
	Dim AccountID,IntID					'Account 由 Session 得到
										'IntID 由第一次进入本页面时 往 t_OA_Work_ComMessage 中加一条记录返回 ID得到,以后由 本页面自己 post 过来	
	Dim	ExecuteID,PassType,IsNeed,IsEnd,RecordID,NodeName				'负责往 t_OA_Work_ComMessage_Record 写数据
	
	Dim strFlow,strTemplet,strShowTemplet,strShowFlow,strShowWhat
										'strFlow     合成 strShowFlow
										'strTemplet  合成 strShowTemplet
										'最后根据    ComMsgType 由 strShowFlow和strShowTemplet生成strShowWhat
	Dim IsTypeChange,strTempletBody
	Dim strShowFlowNode,StrOptionExecute
	Dim ISSUBMIT						'判断本页面是否提交	
	Dim IsTempletHtml

	if session("AccountID")="" then
%>
<script language=javascript>
  	alert("因登录时间过长,会话失效,请退出重新登陆!")
</script>
<%  
   	Response.End
	end if
		
	Set objDB = server.CreateObject("ADODB.Connection")
	Set objRS = server.CreateObject("ADODB.Recordset")
	OpenDB objDB
	
	ComMsgType		=	Request.Form("ComMsgType")
	IsFromAddnew4	=	Request.Form("IsFromAddnew4")
	FlowID			=	Request.Form("FlowID")
	TempletID		=	Request.Form("TempletID")
	ExecuteID		=	Request.Form("ExecuteID")
	PassType		=	Request.Form("PassType")
	IsNeed			=	Request.Form("IsNeed")
	NodeName		=	Request.Form("NodeName")
	IsEnd			=	Request.Form("IsEnd")
	ISSUBMIT		=	Request.Form("isSubmit")		
	
	IsTypeChange	=	False
	If ComMsgType = 2 Then
			strSQL = "select IsHtml,Templet,DefaultFlowID from t_OA_Work_ComMessage_Templet Where ID= " & TempletID
			objrs.Open strSQL,objDB,1,3
			FlowID	=	objrs.Fields("DefaultFlowID")
			strTempletBody	=	objrs.Fields("Templet")
			IsTempletHtml = Objrs.Fields("IsHTML")
			objrs.Close()
		If FlowID = 0 Then 
			ComMsgType = 1
			IsTypeChange = True
		End if
	End If
	
	If IsFromAddnew4 = "True" Then			'第一次 Load 先往 t_OA_Work_ComMessage 中加一条记录,然后返回 ID
		strSQL = "select * from t_OA_Work_ComMessage"
		objrs.Open strSQL,objDB,1,3
		objrs.AddNew()
		objrs.Fields("AccountID")	= "168"
		objrs.Fields("Title")		= "NewTitle"
		objrs.Fields("MsgType")		= 2
		objrs.Update()
		IntID = objrs.Fields("ID")
		objRS.Close()	
		If ComMsgType	=	2 Then
			strSQL = "select DefaultFlowID from t_OA_Work_ComMessage_Templet Where ID= " & TempletID
			objrs.Open strSQL,objDB,1,3
			FlowID	=	objrs.Fields("DefaultFlowID")
			objrs.Close()
		End If
	End If
	
	AccountID	=  Session("AccountID")
	
	
	IF ISSUBMIT = "TRUE" THEN			'处理本页面提交,更新 t_OA_Work_ComMessage 中 ID = ID 的记录
		IntID	= Request.Form("IntID")
		strSQL = "select * from t_OA_Work_ComMessage where ID = " & IntID
		objRS.Open strSQL,objDB,1,3
		objRS.Fields("Title")		= FixSQL(Request.Form("title"))
		objRS.Fields("body")		= FixSQL(Request.Form("Msgbody") )
		objRS.Fields("AccountID")	= AccountID
		objRS.Fields("IsAttach")	= Request.Form("isAttach")
		objRS.Fields("MsgLevel")	= Request.Form("MsgLevel")
		objRS.Fields("isHtml")		= Request.Form("isHtml")
		objRS.Fields("MsgType")		= Request.Form("ComMsgType")
		
		If		ComMsgType = 1 Or ComMsgType = 4 Then
			objRS.Fields("TempletID")	= 0
			objRS.Fields("FlowID")		= 0
		ElseIf	ComMsgType = 2 Then
		'	Response.Write TempletID
			objRS.Fields("TempletID")	= Request.Form("TempletID")
			Dim objrsTemp
			strSQL = "Select DefaultFlowID From t_OA_Work_ComMessage_Templet Where ID = " &  Request.Form("TempletID")
			Set objrsTemp =objDB.Execute(strSQL)
			objRS.Fields("FlowID")	=	objrsTemp("DefaultFlowID")
		ElseIF	ComMsgType = 3 Then
			objRS.Fields("TempletID")	= 0
'			objRS.Fields("FlowID")		= Request.Form("FlowID")
		End If
		
		objRS.Fields("IsValid")		= 1
		objRS.Update()
		
		'2002-11-22日加上,为使垃圾箱只从 t_OA_Work_ComMessage_Record 中取数据达到兼容性,state 为特殊值 99
			objRS.Close()
			strSQL = "select * from t_OA_Work_ComMessage_Record "
			objRS.Open strSQL,objDB,1,3
			objRS.AddNew()
			objRS.Fields("ComMsgType")		=	ComMsgType
			objRS.Fields("ComMsgID")		=	intID
			objRS.Fields("ExecuteID")		=	AccountID
			objRS.Fields("State")			=	99
			objRS.Update()
			RecordID	=	objrs.Fields("ID")
		'(如果不这样则要从2个表取,另一个表是 t_OA_Work_ComMessage)
		
		If	ComMsgType = 1 Or ComMsgType = 4 Then						'如果公文类型为普通一次单向传输方式 或者为	随机工作流方式
			objRS.Close()												'则用 t_OA_Work_ComMessage_Record 类追踪
			strSQL = "select * from t_OA_Work_ComMessage_Record "
			objRS.Open strSQL,objDB,1,3
			objRS.AddNew()
			objRS.Fields("ComMsgID")		=	intID
			objRS.Fields("ComMsgType")		=	ComMsgType
			objRS.Fields("ExecuteID")		=	ExecuteID
			objRS.Fields("PassType")		=	PassType
			If	ComMsgType = 4	Then											
				If IsEnd = "" Then
					objRS.Fields("IsEnd")		=	0	'如果公文类型为随机工作流方式则根据提交上来的 IsEnd 往 t_OA_Work_ComMessage_Record 写数据
				Else
					objRS.Fields("IsEnd")		=	1	'如果公文类型为随机工作流方式则根据提交上来的 IsEnd 往 t_OA_Work_ComMessage_Record 写数据
				End If
			ElseIf	ComMsgType = 1 Then
				objRS.Fields("IsEnd")			=	1					'而如果公文类型为普通一次单向传输方式则 IsEnd =1
			End If
			objRS.Update()
		End If
		
		If	ComMsgType = 3 Or ComMsgType = 2  Then		'2002-11-27改动	'如果公文类型为包含工作流的也用	 t_OA_Work_ComMessage_Record 类追踪		
			objRS.Close()	
			strSQL = "select * from t_OA_Work_ComMessage_Record "
			objrs.Open strSQL,objDB,1,3
			
		'	Response.Write ExecuteID	&	"<br>"	&	PassType	&	"<br>"	&	IsNeed											
			IsNeed		=	Split(IsNeed,",")
			ExecuteID	=	Split(ExecuteID,",")
			PassType	=	Split(PassType,",")
			NodeName	=	Split(NodeName,",")
			For i = LBound(IsNeed) To UBound(IsNeed)
				objrs.AddNew()
				objRS.Fields("ComMsgID")		=	intID
				objRS.Fields("ComMsgType")		=	ComMsgType
				objRS.Fields("ExecuteID")		=	ExecuteID(i)
				objRS.Fields("PassType")		=	PassType(i)
				objRS.Fields("IsNeed")			=	IsNeed(i)
				objrs.Fields("NodeName")		=	NodeName(i)
				objrs.Fields("ParentID")		=	RecordID
				if i=UBound(IsNeed) Then
					objRS.Fields("IsEnd")			=	1
				Else
					objRS.Fields("IsEnd")			=	0
				End if
				objrs.Update
				RecordID	=	objrs.Fields("ID") 
			Next
		'	Response.End 
		'	objRS.Update()
		End If
		
		
		If Request.Form("isAttach") = "1" then		'如果带附件,则同时把上传成功的附件置为有效
			strSQL = "Update t_OA_Work_ComMessage_Attach set Isvalid=1 Where ComMsgID = " & IntID & " And IsUpSuccess = 1"
			objDB.Execute(strSQL)
		End If
		objRS.Close()
		Set objRS = Nothing
		objDB.Close()
		Set objDB = Nothing
%>
<script language=javascript>
parent.frmToolbar.doList(2)
</script>
<%
		Response.End 
	END IF
	
													'strFlow     合成 strShowFlow
													'strTemplet  合成 strShowTemplet
													'最后根据    ComMsgType 由 strShowFlow和strShowTemplet生成strShowWhat
	strSQL = "select ID,TempletTitle,DefaultFlowID from t_OA_Work_ComMessage_Templet"
	objRS.Open strSQL,objDB,1,3
	If Not objRS.EOF Then
		Do While Not objRS.EOF 

⌨️ 快捷键说明

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