数据库备份.sql
上传用户:tiancihang
上传日期:2014-03-12
资源大小:21387k
文件大小:79k
源码类别:

.net编程

开发平台:

C#

  1. --1 职工表 Tb_Sys_Employee
  2. if exists(select name from sysobjects
  3.   where name = 'Tb_Sys_Employee' and type = 'u')
  4. drop table Tb_Sys_Employee
  5. GO
  6. create table Tb_Sys_Employee(
  7. EmpID  int  NOT NULL , --职工ID
  8. EmpName  varchar(20) NOT NULL , --职工名称
  9. PrimaryOrgID  int, --所属机构代码
  10. EmpType int, --员工类型(1、普通员工2、部门主管3、公司领导4、其他)
  11. EMail  varchar(50) NULL , --电子邮件
  12. PhoneNumber varchar(30) NULL , --职工电话
  13. EditDate  DateTime NULL , --编辑时间
  14. TempFlag  smallint NULL , --临时用户标志(0、非临时,1、临时)
  15. primary key(EmpID)
  16. )
  17. GO
  18. delete from Tb_Sys_Employee 
  19. insert into Tb_Sys_Employee values(1,'周飞',2,'flychou_fei@sina.com','13063362653','2007-04-01',0)
  20. insert into Tb_Sys_Employee values(2,'朱皖峰',2,'flychou_fei@sina.com','13063362653','2007-04-01',0)
  21. insert into Tb_Sys_Employee values(3,'周金根',4,'flychou_fei@sina.com','13063362653','2007-04-01',0)
  22. insert into Tb_Sys_Employee values(4,'徐秀梅',5,'flychou_fei@sina.com','13063362653','2007-04-01',0)
  23. insert into Tb_Sys_Employee values(5,'周飞1',1,'flychou_fei@sina.com','13063362653','2007-04-01',0)
  24. --2 职工组织机构表 Tb_Sys_EmpOrg (预留)
  25. if exists(select name from sysobjects
  26.   where name = 'Tb_Sys_EmpOrg' and type = 'u')
  27. drop table Tb_Sys_EmpOrg
  28. GO
  29. create table Tb_Sys_EmpOrg(
  30. EmpID  int  NOT NULL, --职工ID
  31. OrgID  int  NOT NULL, --组织机构ID
  32. EditDate  datetime NULL , --编辑时间
  33. primary key(EmpID,OrgID)
  34. )
  35. GO
  36. --3 组织机构类型 tb_Sys_OrgType
  37. if exists(select name from sysobjects
  38.   where name = 'tb_Sys_OrgType' and type = 'u')
  39. drop table tb_Sys_OrgType
  40. GO
  41. create table tb_Sys_OrgType
  42. (
  43. TypeID int, --类型
  44. TypeName varchar(40), --类型名称
  45. primary key(TypeID)
  46. )
  47. --3 组织机构表 Tb_Sys_Organization
  48. if exists(select name from sysobjects
  49.   where name = 'Tb_Sys_Organization' and type = 'u')
  50. drop table Tb_Sys_Organization
  51. GO
  52. create table Tb_Sys_Organization
  53. (
  54. OrgID INT NOT NULL, --组织机构ID
  55. ParentOrgID int , --级组织机构ID
  56.    OrgName varchar(40) NOT NULL, --组织机构名称
  57.    OrgDesc varchar(100), --描述
  58.    OrgInal smallint , --排列顺序
  59. OrgLevel int , --层次(级别)
  60. EditDate DateTIME, --编辑时间
  61.    OrgType varchar(100), --组织机构
  62.   OrgPath varchar(300), --机构全路径
  63. OrgcID varchar(2), --组织机构类型(a、公司领导b、基层部门c、职能部门1、其它)
  64. primary key(OrgID)
  65. )
  66. --(a、公司领导b、基层部门c、职能部门d、物资公司e、系统管理员1、其它)
  67. --delete from Tb_Sys_Organization
  68. insert into Tb_Sys_Organization values(1,-1,'供电公司','芜湖市供电公司',1,1,'2007-04-01','行政','1','0')
  69. --insert into Tb_Sys_Organization values(2,1,'管理信息部','芜湖市供电公司',1,2,'2007-04-01','行政','1/2')
  70. --insert into Tb_Sys_Organization values(3,1,'生产部','芜湖市供电公司',1,2,'2007-04-01','行政','1/3')
  71. --insert into Tb_Sys_Organization values(4,1,'财务部','芜湖市供电公司',1,2,'2007-04-01','行政','1/4')
  72. --insert into Tb_Sys_Organization values(5,2,'财务系统','芜湖市供电公司',1,3,'2007-04-01','行政','1/2/5')
  73. select * from Tb_Sys_Organization
  74. --4 用户表 Tb_Sys_User
  75. if exists(select name from sysobjects
  76.   where name = 'Tb_Sys_User' and type = 'u')
  77. drop table Tb_Sys_User
  78. GO
  79. create table Tb_Sys_User
  80. (
  81. UserID INT NOT NULL, --用户ID
  82. EmpID int , --职工ID
  83.    UserAccount varchar(20) NOT NULL, --用户帐号(登录)
  84.    UserCode varchar(30), --职工编号 
  85.    UserDecs varchar(100) , --描述
  86. OrdInal int, --排列顺序
  87. UserPwd varchar(20) , --用户密码
  88. IsLock smallint , --是否锁定(0、否,1、是为禁用的意思)
  89. IPAddress varchar(20) , --IP地址
  90. IsIPBound smallint , --是否绑定IP地址(0、否,1、是)
  91. EditDate DateTIME, --编辑时间
  92.    FromDate DateTIME, --开始时间(预留接口)
  93.   ToDate DateTIME, --截止时间(预留接口)
  94. primary key(UserID)
  95. )
  96. insert into Tb_Sys_User values(0,NULL,'admin','NULL','系统用户',NULL,'111111',0,NULL,0,'2007-04-01','','')
  97. --3183624000
  98. --5 角色表 Tb_Sys_Role
  99. if exists(select name from sysobjects
  100.   where name = 'Tb_Sys_Role' and type = 'u')
  101. drop table Tb_Sys_Role
  102. GO
  103. create table Tb_Sys_Role
  104. (
  105. RoleID INT NOT NULL, --角色ID
  106. RoleName varchar(20) , --角色名称
  107.    RoleDesc varchar(100) NOT NULL, --描述
  108. OrdInal int, --排列顺序
  109. CreateRole int , --角色创建者
  110.   UserRole int, --角色使用者
  111. primary key(RoleID)
  112. )
  113. insert into Tb_Sys_Role values(0,'系统管理员','系统管理员',NULL,0,NULL)
  114. --6 权限表 Tb_Sys_Permission
  115. if exists(select name from sysobjects
  116.   where name = 'Tb_Sys_Permission' and type = 'u')
  117. drop table Tb_Sys_Permission
  118. GO
  119. create table Tb_Sys_Permission
  120. (
  121. PermID INT NOT NULL, --权限ID
  122. CommandLine varchar(200), --参数
  123. OrdInal int, --排列顺序
  124. PermDesc varchar(100), --描述
  125. PermLevel int , --层次
  126. ToolTip varchar(200), --提示信息
  127. SecurityLevel int , --安全等级(1、禁止;2、浏览;3、管理)
  128. EditDate datetime , --编辑时间(Default sysdate)
  129. ImgURL varchar(200), --图标位置
  130. PerIdentity varchar(2000), --资源标识
  131. Alias varchar(1000), --资源别名
  132. ResType int , --资源类型
  133. --1 System,2 Module,3 UIMethod,4 ServiceAction,5 DataSource,6 Query,7 Report
  134. IsModule int , --是否模块入口点(0、否,1、是)
  135. ResCode varchar(100), --资源文档中编号
  136.    ParentresCode varchar(100), --父资源文档编号
  137. --1、管理区;2、工作区
  138. HostName varchar(50) , --所属主机名称
  139. DefaultPage varchar(100), --系统默认页面
  140.   DisplayName varchar(100), --显示名称
  141. primary key(PermID)
  142. )
  143. insert into Tb_Sys_Permission values(1,'null',1,'用户管理',2,'用户管理',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/SysManageUser.aspx','用户管理')
  144. --insert into Tb_Sys_Permission values(2,'null',1,'权限管理',2,'权限管理',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','permission.aspx','权限管理')
  145. insert into Tb_Sys_Permission values(3,'null',1,'角色管理',2,'角色管理',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/SysManageRole.aspx','角色管理')
  146. insert into Tb_Sys_Permission values(4,'null',1,'密码修改',2,'密码修改',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','editpsw.aspx?page=1','修改密码')
  147. insert into Tb_Sys_Permission values(5,'null',1,'项目分类',2,'项目分类',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/SysManageProject.aspx','项目分类')
  148. insert into Tb_Sys_Permission values(6,'null',1,'科目管理',2,'科目管理',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/MatCode/default.aspx','物资代码')
  149. insert into Tb_Sys_Permission values(7,'null',1,'启动工作流',2,'启动工作流',1,'2007-04-01','null','null','null',1,0,'null','2','localserver','Workflow/WorkFlowStart.aspx','启动工作')
  150. insert into Tb_Sys_Permission values(8,'null',1,'待办工作流',2,'待办工作流',1,'2007-04-01','null','null','null',1,0,'null','2','localserver','Workflow/WorkFlowWait.aspx','待办工作')
  151. insert into Tb_Sys_Permission values(9,'null',1,'组织机构',2,'组织机构',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/Org.aspx','组织机构')
  152. insert into Tb_Sys_Permission values(10,'null',1,'工作流配置',2,'工作流配置',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','Workflow/WorkFlowConfigure.aspx','流程配置')
  153. insert into Tb_Sys_Permission values(11,'null',1,'公告管理',2,'公告管理',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/Notice.aspx','公告管理')
  154. insert into Tb_Sys_Permission values(12,'null',1,'系统初始化',2,'系统初始化',1,'2007-04-01','null','null','null',1,0,'null','1','localserver','SysManage/SystemInit.aspx','系统初始化')
  155. --delete from Tb_Sys_Permission
  156. select * from Tb_Sys_Permission
  157. --7 角色权限表 Tb_Sys_RolePerm
  158. if exists(select name from sysobjects
  159.   where name = 'Tb_Sys_RolePerm' and type = 'u')
  160. drop table Tb_Sys_RolePerm
  161. GO
  162. create table Tb_Sys_RolePerm
  163. (
  164. RoleID int NOT NULL, --角色ID
  165.    PermissionID int NOT NULL, --权限ID
  166. EditDate datetime, --编辑时间
  167. PermissionType int , --权限类型(1、可分配权限,2、可使用权限)
  168.   FromDate datetime, --开始时间
  169. ToDate datetime, --截止时间
  170. primary key(RoleID,PermissionID)
  171. )
  172. --8 角色权限表 Tb_Sys_UserRole
  173. if exists(select name from sysobjects
  174.   where name = 'Tb_Sys_UserRole' and type = 'u')
  175. drop table Tb_Sys_UserRole
  176. GO
  177. create table Tb_Sys_UserRole
  178. (
  179. UserID int NOT NULL, --用户ID
  180.    RoleID int NOT NULL, --角色
  181. EditDate datetime, --编辑时间
  182. primary key(UserID,RoleID)
  183. )
  184. --9 访问控制审核表 Tb_Sys_Audit
  185. if exists(select name from sysobjects
  186.   where name = 'Tb_Sys_Audit' and type = 'u')
  187. drop table Tb_Sys_Audit
  188. GO
  189. create table Tb_Sys_Audit
  190. (
  191. AuditID INT IDENTITY(1,1), --审核ID
  192. IPAddress varchar(20) , --IP地址
  193. SessionID varchar(100), --会话ID
  194. Operation varchar(200), --操作
  195. EditDate datetime, --编辑时间
  196. UserAccount varchar(20) , --用户帐号
  197. AccessTime datetime, --访问时间
  198. ServiceName varchar(50) , --调用服务名
  199. ServiceActionName varchar(100), --服务动作名
  200. ServiceInstanceID varchar(100), --服务实例ID
  201. CallIngResult int , --调用结果(1、成功,2、失败)
  202. CallIngModule varchar(100), --调用模块
  203. LogCate int , --服务操作ID(0:登录1:注销2:模块操作3:服务操作)
  204. EmpName varchar(20) , --用户名称
  205.    OrgName varchar(200), --组织机构
  206. primary key(AuditID)
  207. )
  208. --select * from Tb_Sys_Audit
  209. --10 访问菜单表 Tb_Sys_Menu (不使用)
  210. if exists(select name from sysobjects
  211.   where name = 'Tb_Sys_Menu' and type = 'u')
  212. drop table Tb_Sys_Menu
  213. GO
  214. create table Tb_Sys_Menu
  215. (
  216. MenuID INT NOT NULL, --菜单ID
  217. MenuName varchar(20) , --菜单名称
  218. MenuAddress varchar(100), --菜单地址
  219. MenuPrentID int, --菜单所属ID(如果无不需要添加)
  220. EditDate datetime, --添加(改动)时间
  221. primary key(MenuID)
  222. )
  223. /************************************************************/
  224. if exists(select name from sysobjects
  225.   where name = 'tb_WF_Task' and type = 'u')
  226. drop table tb_WF_Task
  227. if exists(select name from sysobjects
  228.   where name = 'tb_WF_End' and type = 'u')
  229. drop table tb_WF_End
  230. if exists(select name from sysobjects
  231.   where name = 'tb_WF_PageAssign' and type = 'u')
  232. drop table tb_WF_PageAssign
  233. if exists(select name from sysobjects
  234.   where name = 'tb_WF_ActIns' and type = 'u')
  235. drop table tb_WF_ActIns
  236. if exists(select name from sysobjects
  237.   where name = 'tb_WF_Activity' and type = 'u')
  238. drop table tb_WF_Activity
  239. if exists(select name from sysobjects
  240.   where name = 'tb_WF_Decision' and type = 'u')
  241. drop table tb_WF_Decision
  242. if exists(select name from sysobjects
  243.   where name = 'tb_WF_Client' and type = 'u')
  244. drop table tb_WF_Client
  245. if exists(select name from sysobjects
  246.   where name = 'tb_sys_College' and type = 'u')
  247. drop table tb_sys_College
  248. if exists(select name from sysobjects
  249.   where name = 'tb_WF_Document' and type = 'u')
  250. drop table tb_WF_Document
  251. if exists(select name from sysobjects
  252.   where name = 'tb_WF_Router' and type = 'u')
  253. drop table tb_WF_Router
  254. if exists(select name from sysobjects
  255.   where name = 'tb_WF_StaticPage' and type = 'u')
  256. drop table tb_WF_StaticPage
  257. if exists(select name from sysobjects
  258.   where name = 'tb_WFIns_Participator' and type = 'u')
  259. drop table tb_WFIns_Participator
  260. if exists(select name from sysobjects
  261.   where name = 'tb_WF_Instance' and type = 'u')
  262. drop table tb_WF_Instance
  263. if exists(select name from sysobjects
  264.   where name = 'tb_WF_Attribute' and type = 'u')
  265. drop table tb_WF_Attribute
  266. if exists(select name from sysobjects
  267.   where name = 'tb_Project_Log' and type = 'u')
  268. drop table tb_Project_Log
  269. if exists(select name from sysobjects
  270.   where name = 'tb_Project_Other' and type = 'u')
  271. drop table tb_Project_Other
  272. if exists(select name from sysobjects
  273.   where name = 'tb_Project_Material' and type = 'u')
  274. drop table tb_Project_Material
  275. if exists(select name from sysobjects
  276.   where name = 'tb_Project_Equipment' and type = 'u')
  277. drop table tb_Project_Equipment
  278. if exists(select name from sysobjects
  279.   where name = 'tb_Project' and type = 'u')
  280. drop table tb_Project
  281. if exists(select name from sysobjects
  282.   where name = 'tb_WF_Kind' and type = 'u')
  283. drop table tb_WF_Kind
  284. if exists(select name from sysobjects
  285.   where name = 'tb_WorkFlow' and type = 'u')
  286. drop table tb_WorkFlow
  287. if exists(select name from sysobjects
  288.   where name = 'tb_Project_Serial' and type = 'u')
  289. drop table tb_Project_Serial
  290. /************************************************************/
  291. --11 项目分类表 tb_Project_Serial
  292. if exists(select name from sysobjects
  293.   where name = 'tb_Project_Serial' and type = 'u')
  294. drop table tb_Project_Serial
  295. GO
  296. create table tb_Project_Serial
  297. (
  298. SerialID INT IDENTITY(1,1), --项目类型ID(自增型)
  299. SerialName varchar(20) , --项目类型名称
  300. primary key(SerialID)
  301. )
  302. --12 自定义工作流表 tb_WorkFlow
  303. if exists(select name from sysobjects
  304.   where name = 'tb_WorkFlow' and type = 'u')
  305. drop table tb_WorkFlow
  306. GO
  307. create table tb_WorkFlow
  308. (
  309. WFID INT IDENTITY(1,1), --工作流ID(自增型)
  310. LastUpdateDate DateTime, --最后一次修改时间
  311. WFDesc varchar(200), --描述
  312. WFName varchar(40), --工作流名称
  313. Status int, --工作流状态(1、启用;0、停用)
  314. CreateDate DateTime, --工作流创建时间
  315. StartUpType int, --工作流启动类型(0、任意;1、专人;默认为任意)
  316. Unit varchar(100), --工作流使用单位
  317. OwnExcColonyID int, --除了同类型的ID(预留)
  318. OwnIncColonyID int, --包括同类型的ID
  319. ReadExcColonyID int, --读取除了同类型ID
  320. ReadIncColonyID int, --读取同类型ID
  321. Readtype int, --读取类型(0、同类型;1、非同类型;默认0,预留字段)
  322. KindID int, --种类编号(参照tb_WF_Kind)
  323. StartDesc varchar(100), --流程关联表
  324. StartName varchar(100), --开始名称
  325. StartX int, --起始X位置
  326. StartY int, --起始Y位置
  327. StartRouterID int, --起始ID (任务启动的位置)
  328. PanelX int, --面板X位置
  329. PanelY int, --面板Y位置
  330. CodeName varchar(200) , --工作流代码名称(预留)
  331. primary key(WFID)
  332. )
  333. --insert into tb_WorkFlow values('2007-04-01','欢迎使用本系统工作流','项目申请','1','2007-04-01',
  334. --0,'芜湖市供电局',null,null,null,null,null,null,'开始','开始',null,null,1,null,null,'01')
  335. --13 自定义工作流种类表 tb_WF_Kind
  336. if exists(select name from sysobjects
  337.   where name = 'tb_WF_Kind' and type = 'u')
  338. drop table tb_WF_Kind
  339. GO
  340. create table tb_WF_Kind
  341. (
  342. KindID INT IDENTITY(1,1), --种类ID(自增型)
  343. KindDesc varchar(200), --描述
  344. KindName varchar(40), --名称
  345. ParentKindID int, --所属种类
  346. primary key(KindID)
  347. )
  348. --insert into tb_WF_Kind values('NULL','项目工作流',null)
  349. --select * from tb_WF_Kind
  350. --14 项目工程表 tb_Project
  351. if exists(select name from sysobjects
  352.   where name = 'tb_Project' and type = 'u')
  353. drop table tb_Project
  354. GO
  355. create table tb_Project
  356. (
  357. ProjectID INT IDENTITY(1,1), --项目ID(自增型)
  358. AuditIdea varchar(20), --审计(提交)意见(默认为:同意)
  359. ChargeMachine Decimal(14,2), --设备费用合计
  360. ChargeManPower Decimal(14,2), --人工费
  361. ChargeOther Decimal(14,2), --其他费用合计
  362. ChargeStuff Decimal(14,2), --材料费合计
  363. ChargeSum Decimal(15,2), --所有费用合计
  364. CreateDate DateTime, --项目申报日期(默认为:系统日期)
  365. Yw_ChargeMachine Decimal(14,2), --业务设备费用合计
  366. Yw_ChargeManPower Decimal(14,2), --业务人工费
  367. Yw_ChargeOther Decimal(14,2), --业务其他费用合计
  368. Yw_ChargeStuff Decimal(14,2), --业务材料费合计
  369. Yw_ChargeSum Decimal(15,2), --业务所有费用合计
  370. Yw_ExpenseChannel varchar(200), --业务费用用途
  371. Yw_ProjectNumber varchar(100), --业务项目编号
  372. Yw_TransactorIdea varchar(200), --业务审核者意见
  373. Yw_TransactorSignature varchar(20), --业务审核者签名
  374. DirectorGeneralIdea varchar(200), --分管领导审定意见
  375. EditUnit varchar(100), --编报单位(默认为供电公司)
  376. GeneralManagerIdea varchar(200), --总经理审定意见
  377. Fg_ChargeMachine Decimal(14,2), --分管领导设备费用合计
  378. Fg_ChargeManPower Decimal(14,2), --分管领导人工费
  379. Fg_ChargeOther Decimal(14,2), --分管领导其他费用合计
  380. Fg_ChargeStuff Decimal(14,2), --分管领导材料费合计
  381. Fg_ChargeSum Decimal(15,2), --分管领导所有费用合计
  382. Fg_ExpenseChannel varchar(200), --分管领导费用用途
  383. Fg_ProjectNumber varchar(100), --分管领导项目编号
  384. Fg_TransactorIdea varchar(200), --分管领导审核者意见
  385. Fg_TransactorSignature varchar(20), --分管领导审核者签名
  386. Zjl_ChargeMachine Decimal(14,2), --总经理设备费用合计
  387. Zjl_ChargeManPower Decimal(14,2), --总经理人工费
  388. Zjl_ChargeOther Decimal(14,2), --总经理其他费用合计
  389. Zjl_ChargeStuff Decimal(14,2), --总经理材料费合计
  390. Zjl_ChargeSum Decimal(15,2), --总经理所有费用合计
  391. Zjl_ExpenseChannel varchar(200), --总经理费用用途
  392. Zjl_ProjectNumber varchar(100), --总经理项目编号
  393. Zjl_TransactorIdea varchar(200), --总经理审核者意见
  394. Zjl_TransactorSignature varchar(20), --总经理审核者签名
  395. OfficeLeadIdea varchar(200), --业务主管部门审定意见
  396. ProjectManager varchar(20), --项目负责人
  397. ProjectName varchar(20), --项目名称
  398. ProjectReason varchar(200), --立项理由
  399. SuccessDate DateTime, --计划项目完成时间
  400. Transactor varchar(20), --项目经办(申请)人
  401. UnitManager varchar(200), --单位负责人(可能是多人)
  402. ProjectType int, --项目所属类型(1、生产类2、科技类3、营销类)
  403. wi_id int, --材料
  404. ProjectSort varchar(200), --项目种类
  405. Dynamic_Wi_ID int, --动态工作流ID
  406. Status int, --项目状态(0、正常;1、项目申请完成;2、作废;3、施工;4、竣工;5、完成)
  407. ProjectNumber varchar(200), --项目编号
  408. CurrentDate DateTime, --最近时间
  409. FactCharge Decimal(16,2), --实际费用
  410. Memo varchar(200), --备注
  411. PlanCharge Decimal(15,2), --计划费用
  412. SuccessedDate DateTime, --实际完工时间
  413. TakeDepartment varchar(200), --提交竣工验收部门
  414. ProjcetLsh Varchar(15), --项目申请流水号(yyyymmdd+流水号)
  415. Jqb_TransactorSignature varchar(20), --计企部审核者签名
  416. Jqb_Idea varchar(200), --计企部审定意见
  417. primary key(ProjectID)
  418. )
  419. --15 设备费 tb_Project_Equipment
  420. if exists(select name from sysobjects
  421.   where name = 'tb_Project_Equipment' and type = 'u')
  422. drop table tb_Project_Equipment
  423. GO
  424. create table tb_Project_Equipment
  425. (
  426. EquipmentID INT IDENTITY(1,1), --设备费编号ID(自增型)
  427. UnitName varchar(200), --制造厂家名
  428. wz_id int, --代码(物资)
  429. EquipmentName varchar(200), --设备名称
  430. Number int, --数量
  431. ProjectID int, --项目工程编号
  432. Price Decimal(14,2), --价格
  433. EquipmentSize varchar(200), --设备规格与型号
  434. sstatus smallint, --状态(1、在用2、废弃)
  435. status smallint, --变动说明(1、新增2、修改3、删除)
  436. UserName varchar(20), --变动人
  437. primary key(EquipmentID)
  438. --constraint FK_EQPJ foreign key (ProjectID)
  439.         --references tb_Project (ProjectID)
  440. )
  441. --16 材料费 tb_Project_Material
  442. if exists(select name from sysobjects
  443.   where name = 'tb_Project_Material' and type = 'u')
  444. drop table tb_Project_Material
  445. GO
  446. create table tb_Project_Material
  447. (
  448. MaterialID INT IDENTITY(1,1), --材料费编号(自增型)
  449. BudGetPrice Decimal(14,2), --预算原价
  450. DifferencePrice Decimal(14,2), --单位(单个原件)差价(小计)
  451. DifferencePriceSum Decimal(14,2), --差价小计(合计)
  452. MarketPrice Decimal(14,2), --市场价
  453. MeterialName varchar(200), --材料名称
  454. MeterialSize varchar(200), --规格
  455. wz_id int, --物资代码
  456. Number int, --数量
  457. UnitName varchar(200), --生产单位名称
  458. ProjectID int, --项目工程编号
  459. sstatus smallint, --状态(1、在用2、废弃)
  460. status smallint, --变动说明(1、新增2、修改3、删除)
  461. UserName varchar(20), --变动人
  462. primary key(MaterialID),
  463. --constraint FK_MAPJ foreign key (ProjectID)
  464.         --references tb_Project (ProjectID)
  465. )
  466. --17 其他费用 tb_Project_Other
  467. if exists(select name from sysobjects
  468.   where name = 'tb_Project_Other' and type = 'u')
  469. drop table tb_Project_Other
  470. GO
  471. create table tb_Project_Other
  472. (
  473. OtherID INT IDENTITY(1,1), --其他费用编号(自增型)
  474. Explain varchar(200), --报价依据及计算说明
  475. OtherName varchar(200), --其他费用名称
  476. Memo varchar(3500), --备注
  477. Price Decimal(14,2), --合计价格
  478. ProjectID int, --项目工程编号
  479. sstatus smallint, --状态(1、在用2、废弃)
  480. status smallint, --变动说明(1、新增2、修改3、删除)
  481. UserName varchar(20), --变动人
  482. primary key(OtherID),
  483. --constraint FK_OTPJ foreign key (ProjectID)
  484.         --references tb_Project (ProjectID)
  485. )
  486. --18 项目日志 tb_Project_Log
  487. if exists(select name from sysobjects
  488.   where name = 'tb_Project_Log' and type = 'u')
  489. drop table tb_Project_Log
  490. GO
  491. create table tb_Project_Log
  492. (
  493. LogID INT IDENTITY(1,1), --项目日志编号(自增型)
  494. Writer varchar(20), --填写人
  495. WriteDate DateTime, --填写时间
  496. WriteInfo varchar(1000), --日志内容
  497. ProjectID int, --项目工程编号
  498. primary key(LogID),
  499. --constraint FK_LOGPJ foreign key (ProjectID)
  500.         --references tb_Project (ProjectID)
  501. )
  502. --19 工作流属性 tb_WF_Attribute
  503. if exists(select name from sysobjects
  504.   where name = 'tb_WF_Attribute' and type = 'u')
  505. drop table tb_WF_Attribute
  506. GO
  507. create table tb_WF_Attribute
  508. (
  509. AttributeID INT IDENTITY(1,1), --属性编号(自增型)
  510. AttributeCode int, --属性代码
  511. AttributeName varchar(100), --属性名称
  512. primary key(AttributeID)
  513. )
  514. --20 工作流工作实例 tb_WF_Instance
  515. if exists(select name from sysobjects
  516.   where name = 'tb_WF_Instance' and type = 'u')
  517. drop table tb_WF_Instance
  518. GO
  519. create table tb_WF_Instance
  520. (
  521. WFInstanceID INT IDENTITY(1,1), --工作流实例编号
  522. CreateDate DateTime, --创建日期
  523. CreateUserID int, --创建者用户编号
  524. TargetRoleID int, --接受者角色编号
  525. ClientID int, --委托人编号(客户档案号)
  526. RealEndDate DateTime, --结束日期
  527. Status int, --工作流实例状态(1、项目申请2、项目施工3、生产)
  528. TheoryEndDate DateTime, --计划结束日期
  529. WorkFlowID int, --工作流ID
  530. PrjID int, --项目ID(项目、施工和生产)
  531. primary key(WFInstanceID),
  532. constraint FK_INWF foreign key (WorkFlowID)
  533.         references tb_WorkFlow (WFID),
  534. )
  535. --21 工作流实例参与者 tb_WFIns_Participator
  536. if exists(select name from sysobjects
  537.   where name = 'tb_WFIns_Participator' and type = 'u')
  538. drop table tb_WFIns_Participator
  539. GO
  540. create table tb_WFIns_Participator
  541. (
  542. UserID INT, --用户编号
  543. WFInsID int, --工作流实例编号
  544. primary key(UserID,WFInsID),
  545. constraint FK_PAUS foreign key (UserID)
  546. references Tb_Sys_User (UserID),
  547. constraint FK_PAWF foreign key (WFInsID)
  548. references tb_WF_Instance (WFInstanceID)
  549. )
  550. --22 工作流页面配置 tb_WF_StaticPage
  551. if exists(select name from sysobjects
  552.   where name = 'tb_WF_StaticPage' and type = 'u')
  553. drop table tb_WF_StaticPage
  554. GO
  555. create table tb_WF_StaticPage
  556. (
  557. StaticPageID INT IDENTITY(1,1), --静态页面编号
  558. Type varchar(10), --页面类型
  559. PageUrl varchar(200), --页面地址
  560. PageDesc varchar(200), --页面内容(作用)描述
  561. PageName varchar(100), --页面名称(标题)
  562. CanChooseItem varchar(100), --可选项(预留)
  563. MustChooseItem varchar(100), --必选项(预留)
  564. primary key(StaticPageID)
  565. )
  566. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','项目启动页','项目申请','','0')
  567. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','生产','生产部','','1')
  568. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','分管领导','分管领导','','2')
  569. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','总经理','总经理','','3')
  570. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','计企部','计企部','','4')
  571. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','项目资金委员会','项目资金委员会','','5')
  572. --insert into tb_WF_StaticPage values('DotNet','WFTaskBrowse.aspx','计企部','计企部项目确定','','6')
  573. --insert into tb_WF_StaticPage values('施工起始','CompleteAssgin.aspx','施工计划下达','施工计划下达','','10')
  574. --insert into tb_WF_StaticPage values('施工类型','CompleteAssgin.aspx','施工类型判断','施工类型判断','','11')
  575. --insert into tb_WF_StaticPage values('施工自营','CompleteAssgin.aspx','施工自营','施工自营','','12')
  576. --insert into tb_WF_StaticPage values('材料调整','CompleteAssgin.aspx','材料调整','材料调整','','13')
  577. --insert into tb_WF_StaticPage values('分管领导审','CompleteAssgin.aspx','分管领导审核','分管领导审核','','14')
  578. --insert into tb_WF_StaticPage values('总经理审批','CompleteAssgin.aspx','总经理审批','总经理审批','','15')
  579. --insert into tb_WF_StaticPage values('外委类型','CompleteAssgin.aspx','外委类型','外委类型','','16')
  580. --insert into tb_WF_StaticPage values('全委','CompleteAssgin.aspx','全委','全委','','17')
  581. --insert into tb_WF_StaticPage values('半委','CompleteAssgin.aspx','半委','半委','','18')
  582. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','物资部门采购','物资部门采购','','19')
  583. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','材料发放','材料发放','','20')
  584. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','财务进帐','财务进账','','21')
  585. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','撰写开工报告','撰写开工报告','','22')
  586. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','材料发放','材料发放','','23')
  587. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','进度控制','进度控制','','24')
  588. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','资料归档','资料归档','','25')
  589. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','提交竣工报告','提交竣工报告','','26')
  590. --insert into tb_WF_StaticPage values('施工','CompleteAssgin.aspx','施工完毕','施工完毕','','27')
  591. --23 工作流分流 tb_WF_Router
  592. if exists(select name from sysobjects
  593.   where name = 'tb_WF_Router' and type = 'u')
  594. drop table tb_WF_Router
  595. GO
  596. create table tb_WF_Router
  597. (
  598. RouterID INT IDENTITY(1,1), --分流编号
  599. RouterDesc varchar(200), --分流描述
  600. Type int, --分流类型(默认0)
  601. RouterName varchar(40), --分流名称
  602. DecisionName varchar(100), --最终结果(回退、作废等)
  603. FormActivityID int, --起始活动编号
  604. FormDecisionID int, --起始结果编号
  605. ToActivityID int, --最终活动编号
  606. ToDecisionID int, --最终结果编号
  607. PointPos varchar(100), --指名位置(预留)
  608. ToEndID int, --结束(完成)编号
  609. FormFreeActivitID int, --起始自由活动(预留)
  610. ToFreeActivityID int, --终止自由活动
  611. PageID int, --页面id
  612. primary key(RouterID),
  613. constraint FK_ROSP foreign key (PageID)
  614. references tb_WF_StaticPage (StaticPageID)
  615. )
  616. --insert into tb_WF_Router values('',0,'','',null,null,5,null,'',null,null,null,1)
  617. --24 工作流客户(单位)文档 tb_WF_Document
  618. if exists(select name from sysobjects
  619.   where name = 'tb_WF_Document' and type = 'u')
  620. drop table tb_WF_Document
  621. GO
  622. create table tb_WF_Document
  623. (
  624. DocCode varchar(14), --客户编码
  625. DocName varchar(200), --客户(单位)名称
  626. DocDecs varchar(800), --客户说明
  627. DocType smallint, --单位类型
  628. DocBig smallint, --大中小型工业企业
  629. primary key(DocCode)
  630. )
  631. --25 学历表 tb_sys_College
  632. if exists(select name from sysobjects
  633.   where name = 'tb_sys_College' and type = 'u')
  634. drop table tb_sys_College
  635. GO
  636. create table tb_sys_College
  637. (
  638. CollID INT IDENTITY(1,1), --学历编号
  639. CollName varchar(20), --学历名称
  640. primary key(CollID)
  641. )
  642. insert into tb_sys_College values('中专')
  643. insert into tb_sys_College values('大专')
  644. insert into tb_sys_College values('本科')
  645. insert into tb_sys_College values('研究生')
  646. insert into tb_sys_College values('博士')
  647. insert into tb_sys_College values('其他')
  648. --26  客户资料 tb_WF_Client
  649. if exists(select name from sysobjects
  650.   where name = 'tb_WF_Client' and type = 'u')
  651. drop table tb_WF_Client
  652. GO
  653. create table tb_WF_Client
  654. (
  655. ClientID INT IDENTITY(1,1), --客户编号
  656. ClientWorkUnit varchar(14), --客户工作单位
  657. MateWorkUnit varchar(14), --配偶单位
  658. Number varchar(20), --编号
  659. ClientNote varchar(200), --客户备注
  660. ClientResidence varchar(200), --客户住所
  661. ClientDegreeID int, --客户学历(tb_sys_college)
  662. ClientBirthday DateTime, --出生年月
  663. ClientHomeAddress varchar(200), --家庭住址
  664. ClientIDCard varchar(30), --身份证
  665. ClientMale int, --性别(1、男;2、女)
  666. ClientMarriage int, --婚姻状况(1、未婚;2、已婚;3、离异;4、丧偶)
  667. ClientName varchar(20), --客户名称
  668. ClientTelNum varchar(100), --客户电话
  669. Salary Decimal(10,2), --工资
  670. MateNote varchar(200), --配偶备注
  671. MateResidence varchar(200), --配偶住所
  672. MateBirthday DateTime, --配偶出生年月
  673. MateDegree int, --配偶学历
  674. MateHomeAddress varchar(200), --配偶家庭住址
  675. MateIDCard varchar(30), --配偶身份证号码
  676. MateMale int, --配偶性别
  677. MateName varchar(20), --配偶名称
  678. MateSalary Decimal(10,2), --配偶工资
  679. primary key(ClientID),
  680. constraint FK_CLCOM foreign key (MateDegree)
  681.         references tb_sys_College (CollID),
  682. constraint FK_CLCOC foreign key (ClientDegreeID)
  683.         references tb_sys_College (CollID),
  684. )
  685. --27 工作流决策 tb_WF_Decision
  686. if exists(select name from sysobjects
  687.   where name = 'tb_WF_Decision' and type = 'u')
  688. drop table tb_WF_Decision
  689. GO
  690. create table tb_WF_Decision
  691. (
  692. DecisionID INT IDENTITY(1,1), --决策编号
  693. DecisionDesc varchar(200), --决策描述
  694. DecisionName varchar(60), --决策者名(部门、职务)
  695. DecisionX int, --X位置(预留)
  696. DecisionY int, --Y位置(预留)
  697. WorkFlowID int, --工作流编号
  698. primary key(DecisionID),
  699. constraint FK_DEWF foreign key (WorkFlowID)
  700.         references tb_WorkFlow (WFID)
  701. )
  702. --28 工作流活动 tb_WF_Activity
  703. if exists(select name from sysobjects
  704.   where name = 'tb_WF_Activity' and type = 'u')
  705. drop table tb_WF_Activity
  706. GO
  707. create table tb_WF_Activity
  708. (
  709. ActivityID INT IDENTITY(1,1), --活动编号
  710. Unit varchar(200), --单位
  711. UnitType int, --单位类型
  712. ActDesc varchar(200), --描述
  713. ActName varchar(200), --工作流活动名称
  714. WorkFlowID int, --工作流编号
  715. PageID int, --页面编号
  716. DecisionTitle varchar(200), --决策标题
  717. DecisionName varchar(200), --决策内容
  718. StartEnd int not null, --任务开始结束标志(0、起始任务;1、一般任务;2、最终任务)
  719. BlockFlag int not null, --阻塞标志(0、非阻塞;1、阻塞)
  720. ShuntFlag int, --分流标志(0、不分流;1、自营;2、半委托;3、全委托;4、外委;5、更改材料;6、不更改材料)
  721. ModeFlag int, --工作流方式(0、抢先式;1、并行式)
  722. primary key(ActivityID)
  723. --constraint FK_ACWF foreign key (WorkFlowID)
  724.         --references tb_WorkFlow (WFID),
  725. --constraint FK_ACSP foreign key (PageID)
  726. --references tb_WF_StaticPage (StaticPageID)
  727. )
  728. /*if exists(select name from sysobjects
  729.   where name = 'tb_WF_Activity' and type = 'u')
  730. drop table tb_WF_Activity
  731. GO
  732. create table tb_WF_Activity
  733. (
  734. ActivityID INT IDENTITY(1,1), --活动编号
  735. OwnExcColonyID int, --除了同类型的id
  736. OwnIncColonyID int, --包括同类型的id
  737. Unit varchar(200), --单位
  738. UnitType int, --单位类型
  739. ActDesc varchar(200), --描述
  740. ActName varchar(200), --工作流名称
  741. ActivityX int, --X位置(预留)
  742. ActivityY int, --Y位置(预留)
  743. DurationType int, --持续类型
  744. ReadExcColonyID int, --读取除了同类型的id
  745. ReadIncColonyID int, --读取包括同类型的id
  746. WorkFlowID int, --工作流编号
  747. PageID int, --页面编号
  748. DecisionTitle varchar(200), --决策标题
  749. DecisionName varchar(200), --决策内容
  750. CodeName varchar(200), --名称代码(预留)
  751. primary key(ActivityID),
  752. constraint FK_ACWF foreign key (WorkFlowID)
  753.         references tb_WorkFlow (WFID),
  754. constraint FK_ACSP foreign key (PageID)
  755. references tb_WF_StaticPage (StaticPageID)
  756. )*/
  757. --29 工作流活动实例 tb_WF_ActIns
  758. if exists(select name from sysobjects
  759.   where name = 'tb_WF_ActIns' and type = 'u')
  760. drop table tb_WF_ActIns
  761. GO
  762. create table tb_WF_ActIns
  763. (
  764. ActInsID INT IDENTITY(1,1), --活动实例编号
  765. ActivityID int, --活动编号
  766. CreateDate DateTime, --创建日期
  767. RealEndDate DateTime, --实际完成时间
  768. Status int NOT NULL, --状态(0、正常;1、完成(审核通过);2、回退;3、回退并完成;4、作废)
  769. TheoryEndDate DateTime, --计划完成时间
  770. WfInstanceID int, --工作流实例编号
  771. BlockReason varchar(2000), --耽误进度的原因
  772. UserID INT, --接受(受理)用户ID
  773. RoleID int, --接受(受理)角色ID
  774. primary key(ActInsID),
  775. constraint FK_AIWFI foreign key (WFInstanceID)
  776.         references tb_WF_Instance (WFInstanceID),
  777. constraint FK_AIAC foreign key (ActivityID)
  778. references tb_WF_Activity (ActivityID)
  779. )
  780. --30 工作流任务指派 tb_WF_PageAssign
  781. if exists(select name from sysobjects
  782.   where name = 'tb_WF_PageAssign' and type = 'u')
  783. drop table tb_WF_PageAssign
  784. GO
  785. create table tb_WF_PageAssign
  786. (
  787. AssignID INT IDENTITY(1,1), --指派任务编号
  788. StaticPageID int, --静态页面编号
  789. Type int, --指派类型
  790. WorkFlowID INT, --工作流编号
  791. primary key(AssignID),
  792. constraint FK_ASWF foreign key (WorkFlowID)
  793.         references tb_WorkFlow (WFID),
  794. constraint FK_ASSP foreign key (StaticPageID)
  795. references tb_WF_StaticPage (StaticPageID)
  796. )
  797. --31 工作流任务完成 tb_WF_End
  798. if exists(select name from sysobjects
  799.   where name = 'tb_WF_End' and type = 'u')
  800. drop table tb_WF_End
  801. GO
  802. create table tb_WF_End
  803. (
  804. EndID INT IDENTITY(1,1), --任务结束编号
  805. EndDesc varchar(200), --任务结束描述
  806. EndName varchar(200), --任务结束名
  807. EndX INT, --X位置(预留)
  808. EndY int, --Y位置(预留)
  809. WorkFlowID int, --工作流编号
  810. primary key(EndID),
  811. constraint FK_WF foreign key (WorkFlowID)
  812.         references tb_WorkFlow (WFID)
  813. )
  814. --32 工作流任务配置 tb_WF_Task
  815. if exists(select name from sysobjects
  816.   where name = 'tb_WF_Task' and type = 'u')
  817. drop table tb_WF_Task
  818. GO
  819. create table tb_WF_Task
  820. (
  821. TaskID INT IDENTITY(1,1), --任务编号
  822. Type int, --任务类型
  823. ActivityID int, --任务活动编号
  824. TaskName varchar(40), --任务名称
  825. PageID int, --页面编号
  826. Ord int, --组
  827. ControlUrl varchar(200), --地址控制
  828. primary key(TaskID),
  829. constraint FK_TAAC foreign key (ActivityID)
  830. references tb_WF_Activity (ActivityID),
  831. constraint FK_TAST foreign key (PageID)
  832. references tb_WF_StaticPage (StaticPageID)
  833. )
  834. /***********************************************/
  835. --33 物资代码表 tb_sys_MatCode
  836. if exists(select name from sysobjects
  837.   where name = 'tb_sys_MatCode' and type = 'u')
  838. drop table tb_sys_MatCode
  839. GO
  840. create table tb_sys_MatCode
  841. (
  842. ID INT IDENTITY(1,1), --物资代码ID
  843. MatCode varchar(14), --物资代码(按照一定的规则)
  844. MatName varchar(400), --物资代码名称
  845. MatDecs varchar(800), --物资代码描述
  846. primary key(ID)
  847. )
  848. /**********************************************
  849. 物资代码规则描述
  850. 代码结构如下: 
  851. A   A   A   A    A  · B  B  B ·C   C ·D D D ·X
  852. |   |   |   |    |    |_____|   |___|   |___|   |
  853. |   |   |   |    |       |     |     |   |
  854. |   |   |   |    |       |     |     |   |
  855. |   |   |   |    |       |     |     |   |
  856. 大    小   大   中    小       细     扩     空   校
  857. 部   部                       充   验
  858. 类   类   类   类    类       类     类     码   位
  859. 其中:AAAAA是国际标准部分,BBB是国家标准部分,CC 是电力系统根据应用需求在国家标准基础上,
  860. 进行的扩充,其扩充的原则是一层两位数字码。DDD是空留扩展部分,X是检验位。
  861. 信息汇总说明:
  862.     在对代码前六层,即第一位---第十位代码信息进行统计时,对于所列产品,
  863. 第1、2、3、4、5、以及第6、7、8和第9、10位分别为第1、2、3、4、5、6和第7层次,
  864. 同一类目(层次)的下位类(下位层次)的数据可以汇总,同类目(层次)之间的数据不能汇总,
  865. 也不能与代码表中其余相关类目(层次)的数据汇总。
  866. 代码表举例说明:
  867. 代 码   名 称   说 明  
  868. 0 农林(牧)渔业产品;中药
  869. 03 森林产品和森林采伐产品
  870. 031 原木和原竹采伐产品
  871. 0311 针叶树原木
  872. 03111 红松原木
  873. 03112 落叶松原木
  874. 03119 其它针叶树原木
  875. 0312 阔叶树原木
  876. 03121 硬杂原木
  877. 03122 软杂原木
  878. 03129 其他杂原木
  879. 0314 原竹采伐产品
  880. 03141 毛竹
  881. 03142 篙竹
  882. 03149 其他原竹采伐产品
  883. 0319 其他原木和原竹采伐产品
  884. 039 其他森林产品
  885. 09 其他农林牧渔业产品
  886. 1 矿和矿物;电力、可燃气和水
  887. 11 无烟煤、烟煤和褐煤等煤;泥炭 包括煤加工产品等
  888. 110 无烟煤、烟煤和褐煤;泥炭和煤加工产品
  889. 1101 成块或不成块的煤 用GB/T 17608-1998和GB 5751—1986的产品名称和分类;
  890. 指按煤炭产品用途、加工方法和粒度分级及产品的化学性质
  891. 分类的无烟煤和烟煤;褐煤入代码1103
  892. 11014 原煤 包括水采原煤,不含褐煤。褐煤列入1103。
  893. 电力物资分类代码校验位计算方法:
  894. ××××××××××××× ×                               
  895.        |                  |               
  896.     本体代码            校验码 
  897. 校验位的作用:
  898. 校验码用于检验本体代码的正确性。
  899. 校验位的算方法:
  900.     第一步:按照由右至左的顺序,确定代码中包括校验码在内的各位代码的代码位置序号
  901. (校验码的代码位置序号为1 ,其他由右至左依次为2 , 3 ,… … ,14 ); 
  902.     第二步:从代码位置序号为2 的位置开始,求所有偶数位代码的和; 
  903.     第三步:将第二步的和乘以3; 
  904.     第四步:从代码位置序号为3 的位置开始,求除了代码位置序号为1 的其他所有奇数位代码的和; 
  905.     第五步:将第三步与第四步的结果相加; 第六步:如果第五步所得的和的个位数为零,
  906. 则校验码为0;如果第五步所得的和的个位数不为零,则用“10 ”减去第五步所得的和的个位数,
  907. 所得的差为校验码。
  908. 举例说明:
  909. 以计算本体代码为8358210987461 的校验码为例.
  910.  
  911. 该例中的校验码计算步骤如下: 
  912. ( 1 ) l + 4 + 8 + O + 2 + 5 + 8 = 28 ;  
  913. ( 2 ) 28 ×3 = 84 ;  
  914. ( 3 ) 6 + 7 + 9 + 1 十8 + 3 = 34 ;  
  915. ( 4 ) 84 + 34 = 1 18 ;  
  916. ( 5 ) 10 一8 = 2  因此,该例中的校验码为2 ,即表中的X 的值为2 
  917. **********************************************/
  918. --34 电力物资供应厂商 tb_sys_HomeDocument(国内)
  919. if exists(select name from sysobjects
  920.   where name = 'tb_sys_HomeDocument' and type = 'u')
  921. drop table tb_sys_HomeDocument
  922. GO
  923. create table tb_sys_HomeDocument
  924. (
  925. DocID int IDENTITY(1,1), --电力物资供应厂商ID
  926. DocCountry varchar(2), --国别或地区代码
  927. ManObligate varchar(12), --主体预留码
  928. DocType varchar(1), --单位类型
  929. DocName varchar(100), --企业名称
  930. OperationArea varchar(120), --经营及业务范围 
  931. DocCode varchar(14), --国别或地区代码 
  932. EconomyVocation varchar(4), --经济行业
  933. EconomyType varchar(3), --经济类型
  934. Dimensions varchar(2), --企业规模 
  935. DocArea varchar(6), --行政区划
  936. DocAddress varchar(60), --单位地址
  937. DocTelNum varchar(12), --电话号码
  938. PostCode varchar(6), --邮政编码
  939. Satrap varchar(9), --主管单位
  940. ManagerCode varchar(6), --代码管理机关编号
  941. primary key(DocID)
  942. )
  943. --35 国家和地区代码表 tb_sys_Area
  944. if exists(select name from sysobjects
  945.   where name = 'tb_sys_Area' and type = 'u')
  946. drop table tb_sys_Area
  947. GO
  948. create table tb_sys_Area
  949. (
  950. ID int IDENTITY(1,1), --序号
  951. ChinaEngSimple varchar(100), --中文和英文简称
  952. DocCountry varchar(2), --两字符拉丁字母 代码
  953. ChinaEnglish varchar(400), --中文和英文全称
  954. primary key(ID)
  955. )
  956. /******************************************************************
  957. tb_sys_Document
  958. 电力物资供应厂商编码规则:
  959. 该代码采用三节,十四位等长混合编码结构: 
  960. XX - XXXXXXXXX  -  XXX  
  961. │       │         │ 
  962. 国家或地区代码   主体码    预留码
  963.     建立统一的电力物资供应厂商代码,只是在电力行业管理范围内给予电力物资供应厂商唯一的、
  964. 始终不变的法定代码标识,为使其在电力生产的各个方面充分发挥作用,
  965. 必须有相应的计算机信息系统对代码信息进行统一的管理,同时,
  966. 建立起能够较为客观地反映电力物资供应厂商单位基本情况的组织机构代码信息数据库,
  967. 实现对基础信息的资源共享,便于各系统之间的信息互换。为此,
  968. 本标准制订了企业代码信息数据库(基本库)机读格式规范,
  969. 建议各用户在业务管理工作及信息系统的建立过程中,采用标准的格式进行设计和开发,
  970. 以保证代码及相关信息在各系统间能进行正确的接收和转换。
  971. *******************************************************************/
  972. --36 单位类型 tb_sys_CompanyType
  973. if exists(select name from sysobjects
  974.   where name = 'tb_sys_CompanyType' and type = 'u')
  975. drop table tb_sys_CompanyType
  976. GO
  977. create table tb_sys_CompanyType
  978. (
  979. ComType varchar(1), --单位类型代码
  980. TypeName varchar(20), --单位类型名称
  981. primary key(ComType)
  982. )
  983. insert into tb_sys_CompanyType values('1','企业法人')
  984. insert into tb_sys_CompanyType values('2','企业非法人')
  985. insert into tb_sys_CompanyType values('3','事业法人')
  986. insert into tb_sys_CompanyType values('4','事业非法人')
  987. insert into tb_sys_CompanyType values('5','社团法人')
  988. insert into tb_sys_CompanyType values('6','社团非法人')
  989. insert into tb_sys_CompanyType values('7','机关法人')
  990. insert into tb_sys_CompanyType values('8','机关非法人')
  991. --37 企业规模 tb_sys_Dimensions
  992. if exists(select name from sysobjects
  993.   where name = 'tb_sys_Dimensions' and type = 'u')
  994. drop table tb_sys_Dimensions
  995. GO
  996. create table tb_sys_Dimensions
  997. (
  998. DimenCode varchar(2), --企业规模 代码
  999. TypeName varchar(10), --企业规模 名称
  1000. primary key(DimenCode)
  1001. )
  1002. insert into tb_sys_Dimensions values('11','特大型')
  1003. insert into tb_sys_Dimensions values('12','大一型')
  1004. insert into tb_sys_Dimensions values('13','大二型')
  1005. insert into tb_sys_Dimensions values('21','中一型')
  1006. insert into tb_sys_Dimensions values('22','中二型')
  1007. insert into tb_sys_Dimensions values('30','小型')
  1008. --38 工作流实例任务指派 tb_wf_ActIntAss
  1009. if exists(select name from sysobjects
  1010.   where name = 'tb_wf_ActIntAss' and type = 'u')
  1011. drop table tb_wf_ActIntAss
  1012. GO
  1013. create table tb_wf_ActIntAss
  1014. (
  1015. AssID int IDENTITY(1,1), --接受ID
  1016. AcceptDate DateTime, --接受时间
  1017. AllotDate DateTime, --察看时间
  1018. FinishDate DateTime, --完成时间
  1019. ActInsID INT, --接受工作流实例ID
  1020. Status int, --状态(1、代办2、公共3、已办)
  1021. UserID INT, --处理用户
  1022. Idea varchar(1000), --意见
  1023. Decision varchar(20), --决策
  1024. primary key(AssID)
  1025. )
  1026. --39 工作流归属(同类) tb_wf_colony
  1027. if exists(select name from sysobjects
  1028.   where name = 'tb_wf_colony' and type = 'u')
  1029. drop table tb_wf_colony
  1030. GO
  1031. create table tb_wf_colony
  1032. (
  1033. NyID int IDENTITY(1,1), --同类ID
  1034. NyName varchar(100), --名称
  1035. NyDesc varchar(200), --描述
  1036. primary key(NyID)
  1037. )
  1038. --39 工作流归属角色 tb_Colony_User
  1039. if exists(select name from sysobjects
  1040.   where name = 'tb_Colony_User' and type = 'u')
  1041. drop table tb_Colony_User
  1042. GO
  1043. create table tb_Colony_User
  1044. (
  1045. ActivityID int, --活动实例ID
  1046. ParentActID int, --上一级活动ID(-1、为无上级活动)
  1047. RoleID INT, --角色
  1048. primary key(ActivityID,ParentActID,RoleID) 
  1049. )
  1050. --40 工作流自定义表 tb_Basis_DataTable
  1051. if exists(select name from sysobjects
  1052.   where name = 'tb_Basis_DataTable' and type = 'u')
  1053. drop table tb_Basis_DataTable
  1054. GO
  1055. CREATE TABLE tb_Basis_DataTable (
  1056. dtID  INT IDENTITY(1, 1) NOT NULL , --表流水号
  1057. realName varchar(40) NOT NULL , --真实表名
  1058. creDate datetime , --创建时间
  1059. showName varchar(40)  , --显示表名
  1060. IsCode varchar(1) NOT NULL , --是否作为代码表 0:否;1:是
  1061. PRIMARY KEY(dtID) ,
  1062. Unique (realName)
  1063. )
  1064. INSERT INTO tb_Basis_DataTable VALUES('tb_Project',null,'项目申请表','1');
  1065. --41 工作流公告 tb_Notice
  1066. if exists(select name from sysobjects
  1067.   where name = 'tb_NOTICE' and type = 'u')
  1068. drop table tb_Notice
  1069. GO
  1070. create table tb_Notice
  1071. (
  1072.    NoticeID       INT IDENTITY(1, 1) NOT NULL, --公告编号
  1073.    NoticeTitle    varchar(200), --公告标题
  1074.    NoticeContent  varchar(1000), --公告内容
  1075.    InvaidDate    datetime, --失效时间
  1076.    NoticeDate     datetime, --公告时间
  1077.    CreateUserID     int, --创建者
  1078. AssRoleID int, --接受角色
  1079. AssUserID INT, --接受者
  1080. primary key(NoticeID)
  1081. )
  1082. --42 工作流阻塞方式 tb_BlockSort
  1083. if exists(select name from sysobjects
  1084.   where name = 'tb_BlockSort' and type = 'u')
  1085. drop table tb_BlockSort
  1086. GO
  1087. create table tb_BlockSort
  1088. (
  1089.    BlockID       INT NOT NULL, --阻塞编号
  1090.    BlockName    varchar(10), --阻塞名称
  1091. primary key(BlockID)
  1092. )
  1093. insert into tb_BlockSort values(0,'非阻塞')
  1094. insert into tb_BlockSort values(1,'阻塞')
  1095. --43 工作流任务种类 tb_TaskSort
  1096. if exists(select name from sysobjects
  1097.   where name = 'tb_TaskSort' and type = 'u')
  1098. drop table tb_TaskSort
  1099. GO
  1100. create table tb_TaskSort
  1101. (
  1102.    TaskSID       INT NOT NULL, --任务种类编号
  1103.    TaskSName    varchar(10), --任务种类名称
  1104. primary key(TaskSID)
  1105. )
  1106. insert into tb_TaskSort values(0,'起始任务')
  1107. insert into tb_TaskSort values(1,'一般任务')
  1108. insert into tb_TaskSort values(2,'最终任务')
  1109. --44 工作流任务种类 tb_Shunt
  1110. if exists(select name from sysobjects
  1111.   where name = 'tb_Shunt' and type = 'u')
  1112. drop table tb_Shunt
  1113. GO
  1114. create table tb_Shunt
  1115. (
  1116.    ShuntID       INT NOT NULL, --分流编号
  1117.    ShuntName    varchar(10), --分流种类名称
  1118. primary key(ShuntID)
  1119. )
  1120. insert into tb_Shunt values(0,'不分流')
  1121. insert into tb_Shunt values(1,'自营')
  1122. insert into tb_Shunt values(2,'半委托')
  1123. insert into tb_Shunt values(3,'全委托')
  1124. insert into tb_Shunt values(4,'外委')
  1125. insert into tb_Shunt values(5,'更改材料')
  1126. insert into tb_Shunt values(6,'不更改材料')
  1127. --45 工作流协调方式 tb_ModeSort
  1128. if exists(select name from sysobjects
  1129.   where name = 'tb_ModeSort' and type = 'u')
  1130. drop table tb_ModeSort
  1131. GO
  1132. create table tb_ModeSort
  1133. (
  1134.    ModeID       INT NOT NULL, --分流编号
  1135.    ModeName    varchar(10), --分流种类名称
  1136. primary key(ModeID)
  1137. )
  1138. insert into tb_ModeSort values(0,'抢先式')
  1139. insert into tb_ModeSort values(1,'并行式')
  1140. --46 项目施工表 tb_construct
  1141. if exists(select name from sysobjects
  1142.   where name = 'tb_construct' and type = 'u')
  1143. drop table tb_construct
  1144. GO
  1145. create table tb_construct
  1146. (
  1147. ConID INT IDENTITY(1,1), --施工ID(自增型)
  1148. PrjID int, --项目ID
  1149. TaskSort int, --任务类型(1、自营;2、半委托;3、全委托;4;外委)
  1150. MatRej int, --是否更改材料计划(5、更改材料;6、不更改材料)
  1151. Rej_ChargeMachine Decimal(14,2), --更改人设备费用合计
  1152. Rej_ChargeManPower Decimal(14,2), --更改人人工费
  1153. Rej_ChargeOther Decimal(14,2), --更改人其他费用合计
  1154. Rej_ChargeStuff Decimal(14,2), --更改人材料费合计
  1155. Rej_ChargeSum Decimal(15,2), --更改人所有费用合计
  1156. Rej_TransactorIdea varchar(800), --更改人审核者意见(包括用途)
  1157. Rej_TransactorSignature varchar(20), --更改人审核者签名
  1158. Fg_TransactorIdea varchar(200), --分管领导审核者意见
  1159. Fg_TransactorSignature varchar(20), --分管领导审核者签名
  1160. Zjl_TransactorIdea varchar(200), --总经理审核者意见
  1161. Zjl_TransactorSignature varchar(20), --总经理审核者签名
  1162. Mat_Stock varchar(200), --物资部门采购情况
  1163. Mat_Grant varchar(200), --物资发放情况
  1164. Ent_AccountMon varchar(200), --财务情况(金额之间使用“|”隔开)
  1165. Ent_AddAccount Decimal(14,2), --财务追加金额
  1166. Ent_Account int, --财务情况(0、未处理;1、部分;2、全部;3、追加费用)
  1167. StartWorking int, --开工情况(0、未开工;1、开工)
  1168. Working varchar(200), --开工报告
  1169. DrawMat int, --领取材料情况(0、未领取;1、已领取;2、已全部领取;3、追加领取)
  1170. PlanFile varchar(100), --施工进度表(文件)
  1171. ClientInfo varchar(20), --收集客户资料签名
  1172. FinishFile varchar(100), --竣工验收报告(文件)
  1173. Ys_Manager varchar(20), --竣工报告填写人签名
  1174. YsW_Idea varchar(200), --接受竣工报告并办理人意见
  1175. YsW_Manager varchar(20), --接受竣工报告并办理人签名
  1176. PactFile varchar(100), --合同文件名
  1177. PactSq varchar(20), --合同和授权委托人签名
  1178. PactSqIdea varchar(200), --合同和授权委托人意见
  1179. ConStatus int, --工程状态(3、施工;4、竣工;5、完成)
  1180. primary key(ConID)
  1181. )
  1182. /*********************************************************
  1183. --用途:选择用户显示待办事宜和公共事宜
  1184. --项目名称:待办事宜和公共事宜
  1185. --说明:@Param_UserIDflag 用户ID(大于-1时为代办事宜)
  1186. @Param_UserID 用户ID
  1187. @Param_RoleID        用户角色
  1188.    @Param_Status0          正常流程(0)
  1189.    @Param_Status2          回退流程(2)
  1190. --返回:项目名称、项目流水号、工作流名称、活动名称、项目编号、分配时间
  1191. --时间:2007-04-05
  1192. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,AcceptDate from tb_WF_Instance i,
  1193. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where a.UserID=@Param_UserID 
  1194. and a.Status=@Param_Status and t.ActInsID=a.ActInsID and i.WfInstanceID=t.WfInstanceID 
  1195. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID and y.ActivityID = t.ActivityID
  1196. 341
  1197. 283
  1198. P_GetWaitProject -1,341,-1,0,2
  1199. **********************************************************/
  1200. IF EXISTS (SELECT name FROM sysobjects 
  1201.          WHERE name = 'P_GetWaitProject' AND type = 'P')
  1202.    DROP PROCEDURE P_GetWaitProject
  1203. GO
  1204. CREATE PROCEDURE P_GetWaitProject
  1205.   @Param_UserIDflag   int,
  1206.   @Param_UserID       int,
  1207.   @Param_RoleID       int,
  1208.   @Param_Status0      int,
  1209.   @Param_Status2      int
  1210. AS
  1211. declare @li_orgid int
  1212. declare @li_2orgid int
  1213. declare @li_level int
  1214. CREATE TABLE #tempwait1 (
  1215. ProjectName varchar(20) ,
  1216. ProjcetLsh  varchar(15) ,
  1217. WFName  varchar(40) ,
  1218. ActName varchar(200),
  1219. ProjectNumber varchar(200),
  1220. CreateDate DateTime    ,
  1221. MustChooseItem varchar(100),
  1222. ProjectID int     ,
  1223. WorkFlowID int     ,
  1224. ActivityID int     , 
  1225. WFInstanceID int     ,
  1226. PageUrl         varchar(200),
  1227. ActID int
  1228. )
  1229. select @li_orgid = PrimaryOrgID from Tb_Sys_Employee where empid = 
  1230. (select empid from Tb_Sys_User where userid = @Param_UserID)
  1231. select @li_level=OrgLevel from Tb_Sys_Organization where orgid=@li_orgid
  1232. if (@li_level<=2)
  1233. begin
  1234. if (@Param_UserIDflag>-1)
  1235. begin
  1236. insert INTO #tempwait1
  1237. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1238. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1239. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1240. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1241. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1242. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1243. and RoleID = @li_orgid and t.UserID= @Param_UserID
  1244. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1245. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1246. and sp.StaticPageID=y.PageID
  1247. UNION
  1248. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1249. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1250. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1251. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1252. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1253. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1254. and RoleID = @li_orgid and t.UserID= @Param_UserID
  1255. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1256. and f.WFID=i.WorkFlowID and (c.PrjID=i.PrjID and p.ProjectID<>c.PrjID)
  1257. and p.ProjectID=i.PrjID and p.Status=0
  1258. and sp.StaticPageID=y.PageID
  1259. select * from #tempwait1
  1260. end
  1261. else
  1262. begin
  1263. select @li_orgid = PrimaryOrgID from Tb_Sys_Employee where empid = 
  1264. (select empid from Tb_Sys_User where userid = @Param_UserID)
  1265. insert INTO #tempwait1
  1266. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1267. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1268. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1269. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1270. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1271. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1272. and RoleID = @li_orgid and t.UserID=-1
  1273. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1274. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1275. and sp.StaticPageID=y.PageID
  1276. UNION
  1277. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1278. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1279. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1280. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1281. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1282. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1283. and RoleID = @li_orgid and t.UserID=-1 
  1284. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1285. and f.WFID=i.WorkFlowID and (c.PrjID=i.PrjID and p.ProjectID<>c.PrjID)
  1286. and p.ProjectID=i.PrjID and p.Status=0
  1287. and sp.StaticPageID=y.PageID
  1288. select * from #tempwait1
  1289. end
  1290. end
  1291. else
  1292. begin
  1293. select @li_2orgid=ParentOrgID from Tb_Sys_Organization where orgid=@li_orgid
  1294. if (@Param_UserIDflag>-1)
  1295. begin
  1296. insert INTO #tempwait1
  1297. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1298. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1299. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1300. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1301. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1302. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1303. and (RoleID in (select orgid from Tb_Sys_Organization where ParentOrgID=@li_2orgid)
  1304. or RoleID=@li_2orgid)
  1305. and t.UserID= @Param_UserID
  1306. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1307. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1308. and sp.StaticPageID=y.PageID
  1309. UNION
  1310. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1311. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1312. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1313. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1314. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1315. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1316. and (RoleID in (select orgid from Tb_Sys_Organization where ParentOrgID=@li_2orgid)
  1317. or RoleID=@li_2orgid)
  1318. and t.UserID= @Param_UserID
  1319. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1320. and f.WFID=i.WorkFlowID and (c.PrjID=i.PrjID and p.ProjectID<>c.PrjID)
  1321. and p.ProjectID=i.PrjID and p.Status=0
  1322. and sp.StaticPageID=y.PageID
  1323. select * from #tempwait1
  1324. end
  1325. else
  1326. begin
  1327. select @li_orgid = PrimaryOrgID from Tb_Sys_Employee where empid = 
  1328. (select empid from Tb_Sys_User where userid = @Param_UserID)
  1329. insert INTO #tempwait1
  1330. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1331. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1332. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1333. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1334. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1335. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1336. and (RoleID in (select orgid from Tb_Sys_Organization where ParentOrgID=@li_2orgid)
  1337. or RoleID=@li_2orgid)
  1338. and t.UserID=-1
  1339. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1340. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1341. and sp.StaticPageID=y.PageID
  1342. UNION
  1343. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1344. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1345. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1346. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1347. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1348. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1349. and (RoleID in (select orgid from Tb_Sys_Organization where ParentOrgID=@li_2orgid)
  1350. or RoleID=@li_2orgid)
  1351. and t.UserID=-1 
  1352. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1353. and f.WFID=i.WorkFlowID and (c.PrjID=i.PrjID and p.ProjectID<>c.PrjID)
  1354. and p.ProjectID=i.PrjID and p.Status=0
  1355. and sp.StaticPageID=y.PageID
  1356. select * from #tempwait1
  1357. end
  1358. end 
  1359. go
  1360. /*********************************************************
  1361. --用途:选择用户显示待办事宜和公共事宜
  1362. --项目名称:待办事宜和公共事宜
  1363. --说明:@Param_UserIDflag 用户ID(大于-1时为代办事宜)
  1364. @Param_UserID 用户ID
  1365. @Param_RoleID        用户角色
  1366.    @Param_Status0          正常流程(0)
  1367.    @Param_Status2          回退流程(2)
  1368. --返回:项目名称、项目流水号、工作流名称、活动名称、项目编号、分配时间
  1369. --时间:2007-04-05
  1370. select p.ProjectID,ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,i.WorkFlowID
  1371. from tb_WF_Instance i,
  1372. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where t.RoleID in (
  1373. select RoleID from Tb_Sys_UserRole where UserID = @Param_UserID)
  1374. and (t.Status= @Param_Status0 or t.Status= @Param_Status2) and t.UserID=-1
  1375. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1376. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID
  1377. P_GetWaitProjectback -1,60,-1,0,2
  1378. **********************************************************/
  1379. IF EXISTS (SELECT name FROM sysobjects 
  1380.          WHERE name = 'P_GetWaitProjectback' AND type = 'P')
  1381.    DROP PROCEDURE P_GetWaitProjectback
  1382. GO
  1383. CREATE PROCEDURE P_GetWaitProjectback
  1384.   @Param_UserIDflag   int,
  1385.   @Param_UserID       int,
  1386.   @Param_RoleID       int,
  1387.   @Param_Status0      int,
  1388.   @Param_Status2      int
  1389. AS
  1390. declare @li_orgid int
  1391. CREATE TABLE #tempwait1 (
  1392. ProjectName varchar(20) ,
  1393. ProjcetLsh  varchar(15) ,
  1394. WFName  varchar(40) ,
  1395. ActName varchar(200),
  1396. ProjectNumber varchar(200),
  1397. CreateDate DateTime    ,
  1398. MustChooseItem varchar(100),
  1399. ProjectID int     ,
  1400. WorkFlowID int     ,
  1401. ActivityID int     , 
  1402. WFInstanceID int     ,
  1403. PageUrl         varchar(200),
  1404. ActID int
  1405. )
  1406. if (@Param_UserIDflag>-1)
  1407. begin
  1408. select @li_orgid = PrimaryOrgID from Tb_Sys_Employee where empid = 
  1409. (select empid from Tb_Sys_User where userid = @Param_UserID)
  1410. insert INTO #tempwait1
  1411. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1412. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1413. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1414. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1415. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1416. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1417. and RoleID = @li_orgid and t.UserID= @Param_UserID
  1418. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1419. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1420. and sp.StaticPageID=y.PageID
  1421. UNION
  1422. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1423. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1424. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1425. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1426. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1427. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1428. and RoleID = @li_orgid and t.UserID= @Param_UserID
  1429. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1430. and f.WFID=i.WorkFlowID and (c.PrjID=i.PrjID and p.ProjectID<>c.PrjID)
  1431. and p.ProjectID=i.PrjID and p.Status=0
  1432. and sp.StaticPageID=y.PageID
  1433. select * from #tempwait1
  1434. end
  1435. else
  1436. begin
  1437. select @li_orgid = PrimaryOrgID from Tb_Sys_Employee where empid = 
  1438. (select empid from Tb_Sys_User where userid = @Param_UserID)
  1439. insert INTO #tempwait1
  1440. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1441. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1442. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1443. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1444. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1445. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1446. and RoleID = @li_orgid and t.UserID=-1
  1447. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1448. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1449. and sp.StaticPageID=y.PageID
  1450. UNION
  1451. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1452. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1453. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1454. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1455. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1456. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1457. and RoleID = @li_orgid and t.UserID=-1 
  1458. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1459. and f.WFID=i.WorkFlowID and (c.PrjID=i.PrjID and p.ProjectID<>c.PrjID)
  1460. and p.ProjectID=i.PrjID and p.Status=0
  1461. and sp.StaticPageID=y.PageID
  1462. select * from #tempwait1
  1463. end
  1464. go
  1465. /*********************************************************
  1466. --用途:选择用户显示待办事宜和公共事宜
  1467. --项目名称:待办事宜和公共事宜
  1468. --说明:@Param_UserIDflag 用户ID(大于-1时为代办事宜)
  1469. @Param_UserID 用户ID
  1470. @Param_RoleID        用户角色
  1471.    @Param_Status0          正常流程(0)
  1472.    @Param_Status2          回退流程(2)
  1473. --返回:项目名称、项目流水号、工作流名称、活动名称、项目编号、分配时间
  1474. --时间:2007-04-05
  1475. select p.ProjectID,ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,i.WorkFlowID
  1476. from tb_WF_Instance i,
  1477. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where t.RoleID in (
  1478. select RoleID from Tb_Sys_UserRole where UserID = @Param_UserID)
  1479. and (t.Status= @Param_Status0 or t.Status= @Param_Status2) and t.UserID=-1
  1480. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1481. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID
  1482. P_GetWaitProject1 -1,60,-1,0,2
  1483. **********************************************************/
  1484. IF EXISTS (SELECT name FROM sysobjects 
  1485.          WHERE name = 'P_GetWaitProject1' AND type = 'P')
  1486.    DROP PROCEDURE P_GetWaitProject1
  1487. GO
  1488. CREATE PROCEDURE P_GetWaitProject1
  1489.   @Param_UserIDflag   int,
  1490.   @Param_UserID       int,
  1491.   @Param_RoleID       int,
  1492.   @Param_Status0      int,
  1493.   @Param_Status2      int
  1494. AS
  1495. declare @iCount int
  1496. declare @li_roleid int
  1497. CREATE TABLE #tempwait2 (
  1498. ProjectName varchar(20) ,
  1499. ProjcetLsh  varchar(15) ,
  1500. WFName  varchar(40) ,
  1501. ActName varchar(200),
  1502. ProjectNumber varchar(200),
  1503. CreateDate DateTime    ,
  1504. MustChooseItem varchar(100),
  1505. ProjectID int     ,
  1506. WorkFlowID int     ,
  1507. ActivityID int     , 
  1508. WFInstanceID int     ,
  1509. PageUrl         varchar(200)
  1510. )
  1511. if (@Param_UserIDflag>-1)
  1512. begin
  1513. declare cur_wait2 cursor  for
  1514. select roleid from Tb_Sys_UserRole where UserID = @Param_UserID
  1515. open cur_wait2
  1516. fetch  cur_wait2 into @li_roleid
  1517. while (@@fetch_status=0)
  1518. BEGIN
  1519. SELECT @iCount=count(*) from Tb_Sys_UserRole where RoleID =@li_roleid
  1520. IF (@iCount=1)
  1521. begin
  1522. insert INTO #tempwait2
  1523. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1524. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,i.WFInstanceID,sp.PageUrl
  1525. from tb_WF_Instance i,tb_wf_staticPage sp,
  1526. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1527. (t.Status= @Param_Status0 or t.Status= @Param_Status2)
  1528. and RoleID = @li_roleid
  1529. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1530. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID 
  1531. and sp.StaticPageID=y.PageID
  1532. end
  1533. else if (@iCount>1)
  1534. begin
  1535. insert INTO #tempwait2
  1536. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1537. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,i.WFInstanceID,sp.PageUrl
  1538. from tb_WF_Instance i,tb_wf_staticPage sp,
  1539. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1540. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1541. and RoleID = @li_roleid and t.UserID =@Param_UserID
  1542. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1543. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID 
  1544. and sp.StaticPageID=y.PageID
  1545. end
  1546. fetch cur_wait2 into @li_roleid
  1547. end
  1548. close cur_wait2   --关闭游标
  1549. deallocate cur_wait2
  1550. select * from #tempwait2
  1551. end
  1552. else
  1553. begin
  1554. declare cur_comm2 cursor for
  1555. select roleid from Tb_Sys_UserRole where UserID = @Param_UserID
  1556. open cur_comm2
  1557. fetch  cur_comm2 into @li_roleid
  1558. while (@@fetch_status=0)
  1559. BEGIN
  1560. SELECT @iCount=count(*) from Tb_Sys_UserRole where RoleID =@li_roleid
  1561. if (@iCount>1)
  1562. begin
  1563. insert INTO #tempwait2
  1564. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1565. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,i.WFInstanceID,sp.PageUrl
  1566. from tb_WF_Instance i,tb_wf_staticPage sp,
  1567. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1568. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1569. and RoleID = @li_roleid and t.UserID=-1
  1570. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1571. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID
  1572. and sp.StaticPageID=y.PageID
  1573. end
  1574. fetch cur_comm2 into @li_roleid
  1575. end
  1576. close cur_comm2   --关闭游标
  1577. deallocate cur_comm2
  1578. select * from #tempwait2
  1579. end
  1580. go
  1581. select * from tb_wf_actins where status=0
  1582. /*********************************************************
  1583. --用途:选择用户显示待办事宜和公共事宜
  1584. --项目名称:待办事宜和公共事宜
  1585. --说明:@Param_UserIDflag 用户ID(大于-1时为代办事宜)
  1586. @Param_UserID 用户ID
  1587. @Param_RoleID        用户角色
  1588.    @Param_Status0          正常流程(0)
  1589.    @Param_Status2          回退流程(2)
  1590. --返回:项目名称、项目流水号、工作流名称、活动名称、项目编号、分配时间
  1591. --时间:2007-04-21
  1592. P_GetWaitProject2 -1,61,-1,0,2
  1593. **********************************************************/
  1594. IF EXISTS (SELECT name FROM sysobjects 
  1595.          WHERE name = 'P_GetWaitProject2' AND type = 'P')
  1596.    DROP PROCEDURE P_GetWaitProject2
  1597. GO
  1598. CREATE PROCEDURE P_GetWaitProject2
  1599.   @Param_UserIDflag   int,
  1600.   @Param_UserID       int,
  1601.   @Param_RoleID       int,
  1602.   @Param_Status0      int,
  1603.   @Param_Status2      int
  1604. AS
  1605. declare @iCount int
  1606. declare @li_roleid int
  1607. CREATE TABLE #tempwait1 (
  1608. ProjectName varchar(20) ,
  1609. ProjcetLsh  varchar(15) ,
  1610. WFName  varchar(40) ,
  1611. ActName varchar(200),
  1612. ProjectNumber varchar(200),
  1613. CreateDate DateTime    ,
  1614. MustChooseItem varchar(100),
  1615. ProjectID int     ,
  1616. WorkFlowID int     ,
  1617. ActivityID int     , 
  1618. WFInstanceID int     ,
  1619. PageUrl         varchar(200),
  1620. ActID int
  1621. )
  1622. if (@Param_UserIDflag>-1)
  1623. begin
  1624. declare cur_wait cursor  for
  1625. select roleid from Tb_Sys_UserRole where UserID = @Param_UserID
  1626. open cur_wait
  1627. fetch  cur_wait into @li_roleid
  1628. while (@@fetch_status=0)
  1629. BEGIN
  1630. SELECT @iCount=count(*) from Tb_Sys_UserRole where RoleID =@li_roleid
  1631. IF (@iCount=1)
  1632. begin
  1633. insert INTO #tempwait1
  1634. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1635. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1636. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1637. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1638. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1639. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1640. and RoleID = @li_roleid
  1641. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1642. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1643. and sp.StaticPageID=y.PageID
  1644. UNION
  1645. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1646. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1647. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1648. from tb_WF_Instance i,tb_wf_staticPage sp,
  1649. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1650. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1651. and RoleID = @li_roleid
  1652. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1653. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID 
  1654. and sp.StaticPageID=y.PageID
  1655. end
  1656. else if (@iCount>1)
  1657. begin
  1658. insert INTO #tempwait1
  1659. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1660. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1661. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1662. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1663. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1664. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1665. and RoleID = @li_roleid and t.UserID =@Param_UserID
  1666. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1667. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1668. and sp.StaticPageID=y.PageID
  1669. UNION
  1670. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1671. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1672. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1673. from tb_WF_Instance i,tb_wf_staticPage sp,
  1674. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1675. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1676. and RoleID = @li_roleid and t.UserID =@Param_UserID
  1677. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1678. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID 
  1679. and sp.StaticPageID=y.PageID
  1680. end
  1681. fetch cur_wait into @li_roleid
  1682. end
  1683. close cur_wait   --关闭游标
  1684. deallocate cur_wait
  1685. select * from #tempwait1
  1686. end
  1687. else
  1688. begin
  1689. declare cur_comm1 cursor for
  1690. select roleid from Tb_Sys_UserRole where UserID = @Param_UserID
  1691. open cur_comm1
  1692. fetch  cur_comm1 into @li_roleid
  1693. while (@@fetch_status=0)
  1694. BEGIN
  1695. SELECT @iCount=count(*) from Tb_Sys_UserRole where RoleID =@li_roleid
  1696. if (@iCount>1)
  1697. begin
  1698. insert INTO #tempwait1
  1699. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1700. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1701. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1702. from tb_WF_Instance i,tb_wf_staticPage sp,tb_construct c,
  1703. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1704. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1705. and RoleID = @li_roleid and t.UserID=-1
  1706. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1707. and f.WFID=i.WorkFlowID and c.ConID=i.PrjID and p.ProjectID=c.PrjID
  1708. and sp.StaticPageID=y.PageID
  1709. UNION
  1710. select ProjectName,ProjcetLsh,WFName,ActName,ProjectNumber,t.CreateDate,
  1711. sp.MustChooseItem,p.ProjectID,y.WorkFlowID,y.ActivityID,
  1712. i.WFInstanceID,sp.PageUrl,t.ActInsID
  1713. from tb_WF_Instance i,tb_wf_staticPage sp,
  1714. tb_WorkFlow f,tb_Project p,tb_WF_ActIns t,tb_WF_Activity y where
  1715. (t.Status= @Param_Status0 or t.Status= @Param_Status2) 
  1716. and RoleID = @li_roleid and t.UserID=-1
  1717. and y.ActivityID = t.ActivityID and i.WFInstanceID =t.WFInstanceID
  1718. and f.WFID=i.WorkFlowID and p.ProjectID=i.PrjID 
  1719. and sp.StaticPageID=y.PageID
  1720. end
  1721. fetch cur_comm1 into @li_roleid
  1722. end
  1723. close cur_comm1   --关闭游标
  1724. deallocate cur_comm1
  1725. select * from #tempwait1
  1726. end
  1727. go
  1728. /*********************************************************
  1729. --用途:选择同一职工有关登录帐户
  1730. --项目名称:登录帐户
  1731. --说明:@Param_EmpID 职工ID
  1732. --返回:帐户、描述、IP地址
  1733. --时间:2007-04-05
  1734. P_GetEmpUserAccount 1
  1735. **********************************************************/
  1736. IF EXISTS (SELECT name FROM sysobjects 
  1737.          WHERE name = 'P_GetEmpUserAccount' AND type = 'P')
  1738.    DROP PROCEDURE P_GetEmpUserAccount
  1739. GO
  1740. CREATE PROCEDURE P_GetEmpUserAccount
  1741.   @Param_EmpID  int
  1742. AS
  1743. select UserAccount,UserDecs,IPAddress from tb_sys_user
  1744. where EmpID=@Param_EmpID
  1745. go
  1746. /*********************************************************
  1747. --用途:选择工作流种类
  1748. --项目名称:工作流配置
  1749. --说明:
  1750. --返回:工作流种类(KindID,KindName)
  1751. --时间:2007-04-09
  1752. P_GetWFKind
  1753. **********************************************************/
  1754. IF EXISTS (SELECT name FROM sysobjects 
  1755.          WHERE name = 'P_GetWFKind' AND type = 'P')
  1756.    DROP PROCEDURE P_GetWFKind
  1757. GO
  1758. CREATE PROCEDURE P_GetWFKind
  1759. AS
  1760. select KindID,KindName from tb_WF_Kind
  1761. go
  1762. /*********************************************************
  1763. --用途:选择工作流启动页面
  1764. --项目名称:工作流配置
  1765. --说明:
  1766. --返回:工作流页面(StaticPageID,PageUrl,PageName)
  1767. --时间:2007-04-09
  1768. P_GetWFStaticPage
  1769. **********************************************************/
  1770. IF EXISTS (SELECT name FROM sysobjects 
  1771.          WHERE name = 'P_GetWFStaticPage' AND type = 'P')
  1772.    DROP PROCEDURE P_GetWFStaticPage
  1773. GO
  1774. CREATE PROCEDURE P_GetWFStaticPage
  1775. AS
  1776. select StaticPageID,PageUrl,PageName from tb_WF_StaticPage
  1777. go
  1778. /*********************************************************
  1779. --用途:选择关联表单
  1780. --项目名称:工作流配置
  1781. --说明:@Param_IsCode 表单选择
  1782. --返回:工作流表单(dtID,showName)
  1783. --时间:2007-04-09
  1784. P_GetDataTable 1
  1785. **********************************************************/
  1786. IF EXISTS (SELECT name FROM sysobjects 
  1787.          WHERE name = 'P_GetDataTable' AND type = 'P')
  1788.    DROP PROCEDURE P_GetDataTable
  1789. GO
  1790. CREATE PROCEDURE P_GetDataTable
  1791. @Param_IsCode varchar(1)
  1792. AS
  1793. select dtID,showName from tb_Basis_DataTable
  1794. where IsCode=@Param_IsCode
  1795. go
  1796. /*********************************************************
  1797. --用途:获取关联表单
  1798. --项目名称:工作流配置
  1799. --说明:@Param_IsCode 表单选择
  1800. @Param_DTID     表单ID
  1801. --返回:工作流表单(dtID,showName)
  1802. --时间:2007-04-09
  1803. P_GetOldTable 1,1
  1804. **********************************************************/
  1805. IF EXISTS (SELECT name FROM sysobjects 
  1806.          WHERE name = 'P_GetOldTable' AND type = 'P')
  1807.    DROP PROCEDURE P_GetOldTable
  1808. GO
  1809. CREATE PROCEDURE P_GetOldTable
  1810. @Param_IsCode varchar(1),
  1811. @Param_DTID int
  1812. AS
  1813. select dtID,showName from tb_Basis_DataTable
  1814. where IsCode=@Param_IsCode and dtID=@Param_DTID
  1815. go
  1816. /*********************************************************
  1817. --用途:选择工作流任务
  1818. --项目名称:登录帐户
  1819. --说明:@Param_WFID 工作流ID
  1820. --返回:帐户、描述、IP地址
  1821. --时间:2007-04-17
  1822. P_ZFGetWFTask 1
  1823. **********************************************************/
  1824. IF EXISTS (SELECT name FROM sysobjects 
  1825.          WHERE name = 'P_ZFGetWFTask' AND type = 'P')
  1826.    DROP PROCEDURE P_ZFGetWFTask
  1827. GO
  1828. CREATE PROCEDURE P_ZFGetWFTask
  1829.   @Param_WFID  int
  1830. AS
  1831. select a.ActivityID,ActName,ParentActID,RoleID,StartEnd,
  1832. BlockFlag,ShuntFlag,ModeFlag,Unit,ActDesc,PageID
  1833. from tb_WF_Activity a,tb_Colony_User u
  1834. where WorkFlowID=@Param_WFID and a.ActivityID = u.ActivityID
  1835. order by u.ParentActID
  1836. go
  1837. /*********************************************************
  1838. --用途:获取工作流未使用的任务流
  1839. --项目名称:工作流
  1840. --说明:@Param_WFID 工作流ID
  1841. --返回:
  1842. --时间:2007-04-17
  1843. P_ZFGetParentTask 1
  1844. **********************************************************/
  1845. IF EXISTS (SELECT name FROM sysobjects 
  1846.          WHERE name = 'P_ZFGetParentTask' AND type = 'P')
  1847.    DROP PROCEDURE P_ZFGetParentTask
  1848. GO
  1849. CREATE PROCEDURE P_ZFGetParentTask
  1850.   @Param_WFID  int
  1851. AS
  1852. select a.ActivityID,ActName,ParentActID
  1853. from tb_WF_Activity a,tb_Colony_User u
  1854. where WorkFlowID=@Param_WFID and a.ActivityID=u.ActivityID
  1855. and a.ActivityID not in (select ParentActID from tb_Colony_User c,tb_WF_Activity w
  1856. where WorkFlowID=@Param_WFID and w.ActivityID=c.ActivityID and StartEnd<>1)
  1857. go
  1858. /*********************************************************
  1859. --用途:选择工作流任务分页
  1860. --项目名称:登录帐户
  1861. --说明:@Param_WFID 工作流ID
  1862. --返回:帐户、描述、IP地址
  1863. --时间:2007-04-17
  1864. P_ZFGetWFTaskPage 1,2,0
  1865. **********************************************************/
  1866. IF EXISTS (SELECT name FROM sysobjects 
  1867.          WHERE name = 'P_ZFGetWFTaskPage' AND type = 'P')
  1868.    DROP PROCEDURE P_ZFGetWFTaskPage
  1869. GO
  1870. create PROCEDURE P_ZFGetWFTaskPage(
  1871.   @Param_WFID              int,
  1872.   @page_num                INT,
  1873.   @row_in_page             INT
  1874. )
  1875. AS
  1876. BEGIN
  1877.     SET NOCOUNT ON
  1878.     DECLARE 
  1879.       @sql              NVARCHAR(4000),
  1880.       @row_ahead        INT,
  1881.       @row_delete       int
  1882.      
  1883.   SET @row_ahead = @page_num * @row_in_page
  1884.   set @row_delete = @row_ahead- @row_in_page
  1885.   --set @sql = 'select top ' + cast(@row_in_page as varchar(20)) +  ' a.ActivityID,ActName,ParentActID,RoleID,StartEnd,
  1886. --BlockFlag,ShuntFlag,ModeFlag,Unit,ActDesc,PageID from tb_WF_Activity a,tb_Colony_User u
  1887. --where WorkFlowID=' + cast(@Param_WFID as varchar(255)) + ' and a.ActivityID = u.ActivityID
  1888.  --and a.ActivityID not in ( select top ' + cast(@row_ahead as varchar(255)) + ' a.ActivityID
  1889. --from tb_WF_Activity a,tb_Colony_User u
  1890. --where WorkFlowID=' + cast(@Param_WFID as varchar(255)) + ' and a.ActivityID = u.ActivityID order by a.ActivityID)
  1891. --order by a.ActivityID'
  1892.  --set @sql ='select top ' + cast(@row_ahead as varchar(255)) + ' a.ActivityID,ActName,ParentActID,RoleID,StartEnd,
  1893. --BlockFlag,ShuntFlag,ModeFlag,Unit,ActDesc,PageID
  1894. --from tb_WF_Activity a,tb_Colony_User u
  1895. --where WorkFlowID=' + cast(@Param_WFID as varchar(255)) + ' and a.ActivityID = u.ActivityID'
  1896. set rowcount @row_ahead
  1897. select a.ActivityID,ActName,ParentActID,RoleID,StartEnd,
  1898. BlockFlag,ShuntFlag,ModeFlag,Unit,ActDesc,PageID into #temp
  1899. from tb_WF_Activity a,tb_Colony_User u
  1900. where WorkFlowID=@Param_WFID and a.ActivityID = u.ActivityID
  1901. if @row_delete>0
  1902. begin
  1903. set rowcount @row_delete
  1904. delete from #temp
  1905. end
  1906. select * from #temp
  1907. drop table #temp
  1908. set rowcount 0
  1909. --print @sql
  1910. --EXEC sp_executesql @sql
  1911. END
  1912. GO
  1913. /*********************************************************
  1914. --用途:获取工作流未使用的任务流
  1915. --项目名称:工作流
  1916. --说明:@Param_WFID 工作流ID
  1917. --返回:
  1918. --时间:2007-04-17
  1919. P_ZFGetParentTask1 1
  1920. **********************************************************/
  1921. IF EXISTS (SELECT name FROM sysobjects 
  1922.          WHERE name = 'P_ZFGetParentTask1' AND type = 'P')
  1923.    DROP PROCEDURE P_ZFGetParentTask1
  1924. GO
  1925. CREATE PROCEDURE P_ZFGetParentTask1
  1926.   @Param_WFID  int
  1927. AS
  1928. select distinct(a.ActivityID),ActName
  1929. from tb_WF_Activity a,tb_Colony_User u
  1930. where WorkFlowID=@Param_WFID and a.ActivityID=u.ActivityID
  1931. and a.ActivityID not in (select ParentActID from tb_Colony_User c,tb_WF_Activity w
  1932. where WorkFlowID=@Param_WFID and w.ActivityID=c.ActivityID and StartEnd<>1)
  1933. go
  1934. /*********************************************************
  1935. --用途:获取工作流未使用的任务流
  1936. --项目名称:工作流
  1937. --说明:@Param_WFID 工作流ID
  1938. @Param_Start    
  1939. --返回:
  1940. --时间:2007-04-17
  1941. P_ZFGetParentTask2 1,1
  1942. **********************************************************/
  1943. IF EXISTS (SELECT name FROM sysobjects 
  1944.          WHERE name = 'P_ZFGetParentTask2' AND type = 'P')
  1945.    DROP PROCEDURE P_ZFGetParentTask2
  1946. GO
  1947. CREATE PROCEDURE P_ZFGetParentTask2
  1948.   @Param_WFID  int,
  1949.   @Param_ModeFlag int
  1950. AS
  1951. if (@Param_ModeFlag=1)  --并行
  1952. select distinct(a.ActivityID),ActName
  1953. from tb_WF_Activity a,tb_Colony_User u
  1954. where WorkFlowID=@Param_WFID and a.ActivityID=u.ActivityID and StartEnd<>2
  1955. and a.ActivityID not in (select ParentActID from tb_Colony_User c,tb_WF_Activity w
  1956. where WorkFlowID=@Param_WFID and w.ActivityID=c.ActivityID and ModeFlag<>@Param_ModeFlag)
  1957. else 
  1958. begin
  1959. select distinct(a.ActivityID),ActName
  1960. from tb_WF_Activity a,tb_Colony_User u
  1961. where WorkFlowID=@Param_WFID and a.ActivityID=u.ActivityID and StartEnd<>2
  1962. and a.ActivityID not in (select ParentActID from tb_Colony_User c,tb_WF_Activity w
  1963. where WorkFlowID=@Param_WFID and w.ActivityID=c.ActivityID)
  1964. end
  1965. go
  1966. /*********************************************************
  1967. --用途:获取已办工作流任务
  1968. --项目名称:工作流
  1969. --说明:@Param_User 用户ID
  1970.     
  1971. --返回:
  1972. --时间:2007-04-17
  1973. P_ZFGetAlreadyDo 1
  1974. **********************************************************/
  1975. IF EXISTS (SELECT name FROM sysobjects 
  1976.          WHERE name = 'P_ZFGetAlreadyDo' AND type = 'P')
  1977.    DROP PROCEDURE P_ZFGetAlreadyDo
  1978. GO
  1979. CREATE PROCEDURE P_ZFGetAlreadyDo
  1980.   @Param_User  int
  1981. AS
  1982. select distinct(i.WfInstanceID),p.ProjectID,w.WFID,w.WFName,i.CreateUserID,i.CreateDate,
  1983.        i.Status,i.ClientID,c.ClientName
  1984.        from tb_Project p,tb_WF_ActIns s,tb_WorkFlow w,tb_WF_Client c
  1985.        right outer join tb_WF_Instance i on i.ClientID = c.ClientID
  1986.        where p.ProjectID=i.PrjID and w.WFID=i.WorkFlowID and 
  1987.        i.WFInstanceID=s.WfInstanceID and s.Status=1 and s.UserID=@Param_User
  1988. go
  1989. /*********************************************************
  1990. --用途:获取物资系统组织机构
  1991. --项目名称:工作流
  1992. --说明:@Param_User 用户ID
  1993.     
  1994. --返回:
  1995. --时间:2007-04-17
  1996. P_ZFGetAlreadyDo 1
  1997. **********************************************************/
  1998. IF EXISTS (SELECT name FROM sysobjects 
  1999.          WHERE name = 'P_GetOrgzationZF' AND type = 'P')
  2000.    DROP PROCEDURE P_GetOrgzationZF
  2001. GO
  2002. CREATE PROCEDURE P_GetOrgzationZF
  2003. @param_menuid int
  2004. as
  2005. select IDENTITY(int,2,1) a,menuid,supermenuid,dept_name into #temp
  2006. from usertype where actionpage1='#' and menuid>9999 
  2007. order by supermenuid
  2008. select * from #temp where menuid = @param_menuid
  2009. go  
  2010. SELECT * FROM tb_WF_Activity where workflowid=2
  2011. SELECT * FROM tb_Colony_User
  2012. SELECT * FROM TB_WF_KIND
  2013. select * from tb_wf_router
  2014. select * from tb_wf_staticpage
  2015. select * from tb_sys_user
  2016. select * from tb_wf_actins where status =0
  2017. select * from tb_Project_Material
  2018. select * from tb_Project_Equipment
  2019. select * from Tb_Sys_User
  2020. select * from tb_sys_userrole
  2021. select * from material_name where wz_spec like 's9-10%'
  2022.    
  2023. update tb_WF_Activity set Unit='e-tong',ActName='项目申报起始',PageID=1,StartEnd=0,BlockFlag=0,ShuntFlag=0,ModeFlag=0 where WorkFlowID=1 and ActivityID=1
  2024.  
  2025.    
  2026.    
  2027.    
  2028.    
  2029.    
  2030.    
  2031.    
  2032.    
  2033.   
  2034.    
  2035.    
  2036.    
  2037.    
  2038.    
  2039.    
  2040.    
  2041.    
  2042.    
  2043.    
  2044.