通用查询完整设计文档
- 格式:doc
- 大小:77.50 KB
- 文档页数:4
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==通用技术设计方案篇一:通用技术设计方案举例通用技术设计方案举例制作携带方便的小凳的设计方案:设计问题的构思:为小朋友们设计一种适合他们在户外活动时使用并携带方便的小凳呢。
便携式小凳的特点:结构简单、稳固,易于制作;自重轻,体积小,携带方便;成本不高于 5 元。
详细的设计方案与说明:设计了符合要求的多种材料、结构及连接方式。
方案的比较与决策:考虑到制作出来的小凳要适合批量生产,选择了以五夹板为制作材料的五个方案。
又根据设计要求对这五个方案进行了再次筛选,最后选中了三个方案。
当多个设计方案产生以后,依据一定的原则,再对这些方案进行筛选。
测试、评估及优化:主要考查设计方案是否可行,进行各种测试、评估,以及优化设计方案、完善产品原型。
综合考虑了各方面的因素,对三种设计方案和产品进行较为全面的评估。
三个方案评估如下。
经过测试和评估,对照设计要求,在使用五夹板材料的方案中C3是较理想的设计方案。
C3的设计三视图。
根据绘制的加工图样进行了产品原型的制作。
在经过锯、削、刨、磨和装配等几道工序之后,设计制作出生产C3方案的产品原型的过程图。
便携式小板凳使用说明书:产品简介:本产品是一款专门为小朋友外出活动设计的便携式小凳。
它自重轻,体积小,携带方便,拆卸、组装的方法简单。
产品构成:中空式凳面,凳脚板 ( 两块 ) 。
技术指标:凳子高度:16.5cm。
凳子质量:350g。
凳面面积:432cm2。
使用方法:先将两块凳脚板从凳面中取出,然后对准插缝 , 将它们插接起来,再将插接好的凳脚板插入凳面的槽缝中,并用手或其他物体使凳脚板与凳面完全贴紧。
注意事项:(1) 使用完毕后 , 要及时拆卸,将凳脚板放回中空的盒式凳面内。
(2) 勿将过重的物体 (大于42kg) 放置在小凳上,以免凳面弯曲变形。
住宅设计规范(GB50096)一、总则1、为保障城市居民基本的住房条件,提高城市住宅功能质量,使住宅设计符合适用、安全、卫生、经济等要求,制定本规范。
2、本规范适用于全国城市新建、扩建的住宅设计。
3、住宅按层数划分如下:(1)低层住宅为一层至三层;(2)多层住宅为四层至六层;(3)中高层住宅为七层至九层;(4)高层住宅为十层及以上。
4、住宅设计必须执行国家的方针政策和法规,遵守安全卫生、环境保护、节约用地、节约能源、节约用材、节约用水等有关规定。
5、住宅设计应符合城市规划和居住区规划的要求,使建筑与周围环境相协调,创造方便、舒适、优美的生活空间。
6、住宅设计应推行标准化、多样化,积极采用新技术、新材料、新产品,促进住宅产业现代化。
7、住宅设计应在满足近期使用要求的同时,兼顾今后改造的可能。
8、住宅设计应以人为核心,除满足一般居住使用要求外,根据需要尚应满足老年人、残疾人的特殊使用要求。
9、住宅设计除应符合本规范外,尚应符合国家现行的有关强制性标准的规定。
二、术语1、住宅residential building:供家庭居住使用的建筑。
2、套型dwelling size:按不同使用面积、居住空间组成的成套住宅类型。
3、居住空间habitable space:系指卧室、起居室(厅)的使用空间。
4、卧室bed room:供居住者睡眠、休息的空间。
5、起居室(厅)living room:供居住者会客、娱乐、团聚等活动的空间。
6、厨房kitchen:供居住者进行炊事活动的空间。
7、卫生间bathroom:供居住者进行便溺、洗浴、盥洗等活动的空间。
8、使用面积usable area:房间实际能使用的面积,不包括墙、柱等结构构造和保温层的面积。
9、标准层typical floor:平面布置相同的住宅楼层。
10、层高storey height:上下两层楼面或楼面与地面之间的垂直距离。
11、室内净高interior net storey height:楼面或地面至上部楼板底面或吊顶底面之间的垂直距离。
软件架构设计说明书 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】<XXX>架构设计说明书版本1.0.0目录1.引言[对于由多个进程构成的复杂系统,系统设计阶段可以分为:架构设计(构架设计)、组件高层设计、组件详细设计。
对于由单个进程构成的简单系统,系统设计阶段可以分为:系统概要设计、系统详细设计。
本文档适用于由多个进程构成的复杂系统的构架设计。
][架构设计说明书是软件产品设计中最高层次的文档,它描述了系统最高层次上的逻辑结构、物理结构以及各种指南,相关组件(粒度最粗的子系统)的内部设计由组件高层设计提供。
][系统:指待开发产品的软件与硬件整体,其软件部分由各个子系统嵌套组成,子系统之间具有明确的接口;组件:指粒度最粗的子系统;模块:指组成组件的各层子系统,模块由下一层模块或函数组成;][此文档的目的是:1)描述产品的逻辑结构,定义系统各组件(子系统)之间的接口以及每个组件(子系统)应该实现的功能;2)定义系统的各个进程以及进程之间的通信方式;3)描述系统部署,说明用来部署并运行该系统的一种或多种物理网络(硬件)配置。
对于每种配置,应该指出执行该系统的物理节点(计算机、网络设备)配置情况、节点之间的连接方式、采用何种通信协议、网络带宽。
另外还要包括各进程到物理节点的映射;4)系统的整体性能、安全性、可用性、可扩展性、异常与错误处理等非功能特性设计;5)定义该产品的各个设计人员应该遵循的设计原则以及设计指南,各个编程人员应该遵循的编码规范。
][建议架构设计工程师与组件设计工程师共同完成此文档。
][架构设计说明书的引言应提供整个文档的概述。
它应包括此文档的目的、范围、定义、首字母缩写词、缩略语、参考资料和概述。
]1.1目的[简要描述体系结构文档的目的。
]1.2范围[简要说明此文档的范围:它的相关项目以及受到此文档影响的任何其它事物]1.3预期的读者和阅读建议[说明此文档的阅读对象,简要说明此文档中其它章节包含的内容与文档组织方式,对于不同读者的阅读方式建议。
校内生产实习报告Android日历日程管理指导老师:姓名: xxx专业班级: xxxxxxxxxxxxx学号: xxxxxxxx电话: xxxxxxxxx系(院):计算机与信息工程学院2014年 7月 14日目录一.项目概述 (4)1.1编写目的 (4)1.2项目介绍 (4)1.3软件相关信息 (4)二.项目需求 (4)2.1概述 (4)2.1.1编写目的 (4)2.1.2项目概述 (5)2.1.3运行环境 (5)2.2项目需求分析 (5)2.2.1项目需求介绍 (5)2.2.2 自定义与其他类库 (5)2.2.3 模块、流程描述 (5)2.3功能需求 (6)2.3.1功能需求点列表 (6)2.3.2其他功能需求 (7)2.3.3 系统界面 (7)2.4 系统输入输出需求 (7)三.软件概要设计 (7)3.1 概述 (7)3.1.1 编写目的 (7)3.1.2 预期读者 (8)3.2系统概要设计说明 (8)3.2.1系统功能模块说明 (8)3.2.2系统功能模块结构图 (8)四.软件详细设计 (11)4.1.系统的日历界面 (11)4.1.1系统主界面 (11)4.1.2 系统的日历特色显示 (13)4.2 系统日程界面的设计 (14)4.2.1日程界面的数据库准备 (14)4.2.2 数据库操作 (15)4.3 添加日程界面 (17)4.3.1画图类 (17)4.3.2 日程添加 (18)4.4日程界面 (24)4.4.1日程界面的布局 (24)4.2.3 单一日程界面 (26)4.2.4 标记日程日期 (28)4.5系统菜单项 (29)4.5.1日历界面的菜单项 (29)4.5.2其他界面菜单项实现 (31)4.6天气查询界面设计 (32)4.7 系统主要实现类介绍 (34)4.7.1 CalendarActivity类 (34)4.7.2 CalendarConvert类 (35)4.7.3 CalendarView类 (35)4.7.4 ScheduleAll类 (36)4.7.5 ScheduleInfoView类 (37)4.7.6 ScheduleTypeView类 (37)4.7.7 LunarCalendar类 (38)4.7.8 SpecialCalendar类 (39)4.7.9 WeatherActivity类 (40)五.总结 (42)5.1参考资料 (42)5.2总结语 (42)一.项目概述1.1编写目的本文档的编写主要为了介绍本项目的开发目的,项目需求,以及开发的情况,将本系统的结构进行大概的介绍,以便用户更熟悉的了解本软件,让用户在使用该软件前,对本软件的使用有一定的了解。
目录一、绪论 (4)1。
1开发背景 (4)二、可行性分析报告 (4)2。
1引言 (4)2.1。
1编写目的 (4)2.1。
2项目背景 (4)2。
1.3定义 (4)2.1。
4参考资料 (5)2。
2技术可行性 (5)2。
3操作可行性 (5)2。
4时间、设备可行性 (5)2。
5对现有系统的分析 (5)2.5.1处理流程和数据流程 (5)2。
5.2工作负荷 (5)2.5.3费用支出 (6)2。
5.4人员 (6)2。
5。
5设备 (6)2.5。
6局限性 (6)2。
6所建议的系统 (6)2.6.1对系统的简要描述 (6)2.7系统工作量 (6)2。
9文档要求 (6)三、需求分析说明书 (6)3.1引言 (6)3。
1。
1编写目的 (6)3。
1。
2项目背景 (6)3.1.3定义 (6)3。
1.4参考资料 (7)3.2系统介绍 (7)3.3系统面向的用户群体 (7)3。
4系统的功能性需求 (7)3。
5系统的非功能性需求 (7)3.5。
1用户界面需求 (7)3.5.2软硬件环境需求 (7)3.5.3软件质量需求 (8)3.6系统E-R图 (8)四、开发环境与项目规划 (8)4。
1开发环境 (8)4.2项目规划与管理 (8)4。
2.1开发人员安排 (8)五、软件界面设计标准与规范 (9)5.1编写目的 (9)5.2界面设计思想 (9)5。
4界面设计样式 (9)5。
5常见错误信息样式 (9)5。
6其他界面约定...................................................................................9六、概要设计说明书 (10)6.1引言 (10)6。
1。
1编写目的 (10)6。
1。
2项目背景 (10)6.1。
3定义 (10)6.1。
4参考资料 (10)6.2系统概述 (10)6。
3系统总体结构图 (10)6。
4系统局部模块IPO表 (11)七、详细设计说明书 (12)7。
深化设计阐明
○设计图纸对天棚和立面均有详图予以标注,能指点施工,部份不明确的地方在答疑中也曾经阐明,本次深化对部份未表述的部位作装璜补充。
○设计图纸对部份的墙面隔断材料未作明示,本次深化中考虑到内墙面会运用水泥砂浆贴墙砖,所以引荐运用轻质砖隔墙隔墙。
由于施工简单,不再出图。
○设计图纸对厨房的墙面材料未作明示,本次深化中对厨房墙面按规范贴330*250墙砖,直至天棚处,由于施工简单,不再出图。
○普通墙面材料,本次深化中对图纸上未作阐明的部份,一致运用乳胶漆材料按规范涂刷施工。
○对室内的落水管,本次深化中也予以阐明,施工时厨房厕所内的落水管采用砖包落水管,其它办公区域的落水管采用木工板包饰,面饰材料与周围分歧。
○室内给排水、电,设计图大于此标准,所以以设计图为准。
○一切办公室无作法阐明的文件柜、办公家俱、窗帘、厨房内的厨具和厨柜由业主自购,不在本深化设计范围。
○运用的建筑材料具有阻燃、无毒、放射性目标满足环保要求,且经济、耐用,便于维修和清洁,其地面材料并具有防滑、耐磨和耐腐蚀。
○全体效果做到简洁、明快、朴实、大方;室内空间表现古代风格。
2009.6.11。
数据库设计示例文档(完整)物理数据库设计数据库设计示例文档(完整)物理数据库设计D2小组网上培训系统物理数据库设计陈俊华、董磊、陈俊娜、董昊、海霞、郭云龙1(针对选定的DBMS,生成基表由于本系统主要架构在windows操作系统之上,加之本小组成员对SQLServer 比较熟悉,且系统有并发操作的要求,因此决定采用SQLServer2000 DBMS系统。
2(选择合适的文件组织(Heap, Hash, ISAM, B+ Tree, Clustered) 基于在System’s Specification中对系统性能的要求:1)非峰值时,数据查找、更新、存储的平均时间低于1秒2)在峰值时,数据查找、更新、存储的平均时间低于5秒采用SQL Server 2000默认的文件组织结构3(选择建立适当的索引基于在System’s Specification中对事务处理的分析:1)学生情况检索每天50次2)教师情况检索每天10次3)课程检索每天100次4)常见问题检索每天200次5)资料查询每天200次6)试题检索每天50次7)成绩查询每天50次在SQL Server 2000里,在数据库关系图中为表定义一个主键将自动创建主键索引;由于要频繁查询学生姓名、教师姓名、课程名称、题目、成绩,因此在各表的对应列上创建第二索引。
4(定义全局约束根据需求分析,本网上培训系统不允许同一名学生在一个学期中选课超过6 门以上。
5(定义视图用户视图主要是学生视图和教师视图。
6(定义用户访问控制规则用户在进入系统之前必须提交相应的用户名和口令,系统将根据不同的用户而授予不同的权限。
以下是建表语句:1)学生表create table student(StudentID Int(15) not null identity(1,1), StudentName Varchar(20) not null,StudentPassword Varchar(10) not null,StudentStatus Char(1) not null,StudentSex Char(1) not null,EnrollingDate Datetime not null,E-mail Varchar(30),Constraint pk_student primary key clustered(StudentID) )索引:create index student_StudentName on student(StudentName)2)教师表create table teacher (TeacherID Int(15) not null identity(1,1), TeacherName Varchar(20) not null,TeacherPassword Varchar(10) not null,TeacherState Char(1) not null,TeacherSex Char(1) not null,TelNO Int(12),E-mail Varchar(30),Constraint pk_teacher primary key clustered(TeacherID) )索引:create index teacher_TeacherName on teacher(T eacherName)3)课程表create table course (CourseID Int not null identidy(1,1), CourseName Varchar(100) not null,MajorID Int,CourseType Int,CourseCreated Datetime not null,CourseStart Datetime not null,CourseEnd Datetime not null,CourseTime Int not null,CourseScore Int not null,CourseState Char(1) not null,CourseIntro Text,Constraint pk_course primary key clustered(Course_ID) )索引:create index course_CourseName on course(CourseName)4)课堂表create table Classroom (SerialNo Int not null identity(1,1), ClassBegin Datetime,ClassEnd Datetime,onlineBegin Datetime not null, onlineEnd Datetime,Constraint pk_course primary key clustered(SerialNo) )5)申请课程表create table application (ApplyID Int not null identity(1,1), StudentID Int not null, ApplyDate Int not null, CourseID Datetime not null, ApplyType Char(1) not null, ApplyState Char(1) not null, ApplyContent Varchar(200), Constraint pk_course primary key clustered(ApplyID), Constraint ApplicationCourseT ooMuch CHECK(NOT EXISTS(SELECT StudentIDFROM applicationGROUP BY StudentIDHAVING COUNT(*)>6))FOREIGN KEY (StudentID) REFERENCES Student (StudentID) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (CourseID) REFERENCES Course (CourseID)ON UPDATE CASCADE ON DELETE NO ACTION )6)课程学生表create table courseStudent (CourseID Int not null, StudentID Int not null, SerialNo Int not null, StudentType Char(1) not null, StudentScore Number(3), StudentGrade Number(3),StudentResult Number(3)Constraint pk_courseStudent primary key clustered(CourseID, StudentID,SerialNo),FOREIGN KEY (CourseID) REFERENCES Course (CourseID)ON UPDATE CASCADE ON DELETE NO ACTION,FOREIGN KEY (StudentID) REFERENCES Student (StudentID) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (SerialNo) REFERENCES Classroom (SerialNo)ON UPDATE CASCADE ON DELETE NO ACTION )7)课程教师表create table courseTeacher (CourseID Int not null,TeacherID Int not null,SerialNo Int not null,StartDate Datetime,EndDate Datetime,TeacherState Datetime not null,Constraint pk_courseT eacher primary key clustered(CourseID, TeacherID,SerialNo),FOREIGN KEY (CourseID) REFERENCES Course (CourseID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (TeacherID) REFERENCES Teacher (TeacherID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (SerialNo) REFERENCES Classroom(SerialNo)ON UPDATE CASCADE ON DELETE NO ACTION )8)测试表create table test (TestID Int not null,TestName Varchar(100) not null,CourseID Int not null,TestDate Datetime not null,TestTime Int not null default 0, TestType Int not null,TeacherID Int,TestState Char(1) not null,PaperID Int not null,Constraint pk_test primary key clustered(TestID), FOREIGN KEY (CourseID) REFERENCES Course (CourseID)ON UPDATE CASCADE ON DELETE SET NULL )9)试卷表create table testPaper (PaperID Int not null default0 identity(1,1),TestID Int not null,SubjectID Int not null,ObjectAnwser Varchar(255) not null,SubjectAnswer Text,SubjectScore number(3) not null default 0 Constraint pk_testPaper primary key clustered (PaperID), FOREIGN KEY (TestID) REFERENCES Test (TestID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (SubjectID) REFERENCES Subject (SubjectID)ON UPDATE CASCADE ON DELETE NO ACTION )索引:create index testPaper_SubjectID on testPaper (SubjectID)10)测试学生表create table testStudent (Student_ID Int not null,Paper_ID Int not null,Constraint pk_testStudent primary key clustered (StudentID, PaperID) FOREIGN KEY (StudentID) REFERENCES Student (StudentID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (PaperID) REFERENCES TestPaper (PaperID)ON UPDATE CASCADE ON DELETE NO ACTION, )11)测试结果表create table testResult (TestID Int not null,StudentID Int not null,CourseID Int not null,TestDone Char(1) not null,ObjectScore Number(4) not null,SubjectScore Number(4) not null default 0, TestScore Number(4) not null default 0, TestMemo Char(1) not null, Constraint pk_testResult primary key clustered (TestID, StudentID, CourseID),FOREIGN KEY (TestID) REFERENCES Test (TestID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (StudentID) REFERENCES Student (StudentID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGNKEY (CourseID) REFERENCES Course (CourseID)ON UPDATE CASCADE ON DELETE NO ACTION, )索引:create index testResult_TestScore on testResult(T estScore)12)题库表create table subject (SubjectID Int not null identity(1,1), SubjectType Char(1) not null, SubjectLever Int not null,SubjectContents Varchar(255) not null,SubjectAnswer Text,ObjectAnwser Varchar(255) not null,Constraint pk_subject primary key clustered (SubjectID) )13)练习表create table exercise (ExerciseID Int not null identity(1,1), StudentID Int not null,SubjectID Int not null,TeacherID Int,HandinTime Datetime not null,JudgeState Char(1) not null,JudgeTime Datetime,Grade Int,StudentAnswer Text not null,Constraint pk_exercise primary key clustered (ExerciseID), FOREIGN KEY (StudentID) REFERENCES Student (StudentID) ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (SubjectID) REFERENCES Subject (SubjectID)ON UPDATE CASCADE ON DELETE NO ACTION, FOREIGN KEY (TeacherID) REFERENCES Teacher (TeacherID)ON UPDATE CASCADE ON DELETE NO ACTION, )。
XX高校英语四六级成绩查询系统软件开发一般分为需求分析、概要设计、详细设计、编码、测试、产品提交、维护七个步骤。
下面以XX高校英语四六级成绩查询系统为例,进行软件面向对象的开发,着重介绍需求分析、概要设计、详细设计三部分。
一、需求分析通过对用户的需求调查,我们了解用户对软件的功能要求为提供成绩查询,其性能要求如表1所示。
表1 性能需求编号功能需求1 系统可以支持100人同时登陆查询成绩2 系统要保证7*24小时不宕机3 系统的响应时间不超过3秒钟通过分析讨论,编写如下的需求规格说明书。
XX高校英语四六级成绩查询系统1.导言1.1.目的该文档是关于客户对XX高校英语四六级成绩查询系统的功能和性能的要求,重点描述了XX高校英语四六级成绩查询系统的功能需求,是概要设计阶段的重要输入。
本文档的预期读者是:●设计人员●开发人员●项目管理人员●测试人员●用户1.2.范围该文档借助当前系统的逻辑模型,导出目标系统的逻辑模型。
解决整个项目的做什么的问题。
在这里,没有涉及开发技术,主要通过建立模型的方式来描述用户需求,为客户、用户、开发人员提供一个交流平台。
1.3.缩写说明UML,Unified Modeling Language (统一建模语言)的缩写,是一个标准的建模语言1.4.术语定义无1.5.引用标准[1] 《企业文档格式标准》,浙江大学现代制造所[2] 《需求规格报告格式标准》,浙江大学现代制造所1.6.参考资料[1] 《UML说明》,浙江大学现代制造所[2] 《软件工程案例教程》,机械工业出版社[3] 《需求规格报告格式标准》,浙江大学现代制造所1.7.版本更新信息无2.系统定义我们分别阐述项目的来源、背景、项目用户的特点和项目的目标。
2.1.项目的来源及背景本项目是为杭州某高校开发的一个英语四六级成绩在线查询系统。
随着网络化的日益普及,成绩在线查询成为高校日常教务管理的一部分。
为此,该高校希望开发一款简洁的英语四六级成绩在线查询系统,为该校学生提供便捷的成绩查询服务。
基于学生化学学科核心素养培养的教学设计当前教育特别重视的学科核心素养是指本学科给予学生未来发展必备的品格和关键能力;是在解决复杂的、不确定性的现实问题过程中表现出来的综合性品质或能力;是学科的知识和技能、过程与方法、情感态度和价值观的整合。
化学学科要培养学生运用探究的手段,在探究中寻找证据进行推理,学会透过宏观现象审视变化的微观本质,同时还要关注学习化学的社会意义,这些都是在发展学生与化学学科相关的核心认识、关键能力和必备品格,即发展学生的化学学科素养。
本文将就“分子和原子”第二课时的教学来介绍本人在培养学生化学学科核心素养方面的一些做法。
一、教学背景分析1. 教学内容分析从本章节开始,学生认识物质的视角将从宏观转向微观,并将对微观世界进行一系列探究活动,这是一个循序渐进的过程。
本部分内容重在揭示化学变化中分子、原子是如何变化的。
通过实例分析由分子构成的物质在发生物理变化和化学变化时的不同情况,从而揭示出分子是保持物质化学性质的最小粒子。
通过两个典型的化学反应,分析得出在化学变化中分子可以分成原子,原子可以结合成新的分子。
2. 学情分析学生已经学习了物理变化、化学变化、物质的性质、化学实验基本操作。
在小学自然和初中物理也学习了物质的三态变化、物质热胀冷缩等和分子、原子部分相关的知识,这为学习新知识做了知识铺垫。
分子是初中学生接触到的微观粒子之一,在此之前学生只有一些微观现象的感性认识,比较缺乏理性认识。
二、教学目标1. 通过实验探究和微观动画展示,理解分子是保持物质化学性质的最小粒子;通过分子模型的组建理解原子是化学变化中的最小粒子,从而加深对化学反应实质的理解。
2. 能够运用分子和原子的观点解释一些日常现象,能够区分物理变化与化学变化。
3. 通过对物质及其变化的宏观现象与微观本质之间相互联系的分析推理,逐步培养学生的想象力和思维能力。
4. 知道在化学变化中,分子是可分的,而原子却是不可分的。
培养学生学会运用辩证统一的观点来思考问题的思想方法。
通用查询设计文档
1,需求:
1、通过修改数据库相关配置,即可实现页面查询条件的增删改,减少软件代码的
设计工作。
2、有效利用屏幕资源,使软件界面简洁清晰。
3、满足客户对相应查询重点的关注。
4、便于以后程序员对系统的维护和代码的修改。
2,思路:
1、建立数据库表结构,用于存储各报表的查询条件及相关数据。
2、建立一个高级查询条件的配置页面,和一个高级查询用户控件。
配置页面,主要针对有一定编程经验的实施人员配置相关的查询条件,在树形权限菜单中选择需要配置高级查询的页面,配置各种高级查询条件。
高级查询用户控件,做一个高级查询的用户控件,要求传入指定参数,比如当前页面ID,接收高级查询页面配置后的语句。
当前页面获取配置好的语句后传入后台查询方法里面直接加载到拼接好的查询语句后面进行查询。
3,数据表结构:
表 Sys_Search查询条件
注:灰色字体为之前设计有,当前设计考虑去掉的字段。
表SYS_Code_OperatStr操作符
表SYS_Code_ShowType显示控件类型
4,页面设计
高级查询页面WhereSearch.aspx
通过用户控件传入当前页面的模块ID,模块Name,查询页面根据传入ID加载对应的查询调教等信息,如果没有则给予提示。
默认情况下不显示并且,“--”这两个关键字下拉框和显示SQL语句文本框,将其隐藏,但是在添加条件的时候还是取值,默认取并且(and),“--”两项值。
页面增加显示高级按钮,点击显示高级按钮时将并且,“--”这两个关键字下拉框和显示SQL语句文本框给予显示,并且可以选择使用。
大于,小于之类的操作符根据配置时的选择加载不同操作符。
输入框,将根据配置添加加载指定输入框。
并且会对输入内容进行js验证。
暂时js验证过滤单引号字符,验证了int等数值类型,后台对各种类型都进行了验证。
查询配置列表页面SearchSetList.aspx
该页面显示所有配置查询条件的信息,页面支持分页和按照条件查询,可以进行增删改操作。
可以按照页面模块ID进行查询。
查询配置页面SearchSetDetail.aspx
模块ID(ModuleID),模块名(ModuleKeyName):通过模块树选择需要增加高
级查询的模块,获取对应的模块ID和模块名。
模块树:根据当前登录人的权限获取对应的模块树形列表
查询标题(ShowName):查询所显示的名称。
查询字段(ColumnName):对应要查询的字段编码,如有别名请使用别名。
输入类型(InputType):规定数据的输入类型,暂时支持:Int,String,DateTime,decimal类型。
控件类型(ShowTypeID):规定控件类型,在控件类型表中获取SYS_Code_ShowType。
控件关键字(ShowTypeStr):下拉列表,绑定sql语句,或者指定绑定的值;日期类型文本框,限制日期类型显示格式,比如YYYY-MM;自定义控件,控件路径。
绑定类型(DrpBindType):下拉列表绑定类型,0为sql语句,1为结果集绑定。
在控件类型为下拉列表时显示。
操作字符(OperatID):操作字符编号集合。
排序(ShowOrder):列的显示排序。
接口规范:
输入方式为下拉列表时:
关键字为绑定sql语句,或者集合,根据绑定方式判断为sql语句或者集合。
关键字为sql语句时,sql语句要有name,id两个字段,系统默认指定DataTextField为name,默认指定DataV alueField为id。
例如:select Sid as id ,Sname as name from Table1。
关键字为集合时,集合的书写方式为“name id,name2 id2”,例如:是1,否0。
输入方式为时间空间时:
可支持的格式YYYY,YYYY-MM,YYYY-MM-dd。
关键字填入对应的格式字符串,如果不填,默认为显示全部是时间。
输入方式为自定义控件时:
需要对系统进行第二次开发,增加对相关自定义控件的支持。