透明 发表于 2015-1-16 23:39:13

ASP网页编程之关于交织报表的静态完成

当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题静态良多时分我们必要失掉交织列表,比来做课程计划就必要如许的功效,好比要失掉一个班某学期的成就,由于每学期所学科目和数目都是变更的,这就请求静态的查询以失掉成就。并且失掉如许的显现情势:
studentIDstudentNamecourseName1courseName2courseName3……
1lupenda667788……



上面的例子就是为了完成下面的功效,该存取历程触及3张表:

Course表:
CourseID,CourseName,Duration,,MajorID,Semester

StudentData表:
StudentID,StudentName,ClassID……

Student_Course表:
StudentID,CourseID,Score


--依据分歧参数获得成就
--能够失掉某学期,某专业,某班级,某先生的成就

CREATEprocedureGetScore
@Yearint,@Semesterbit,@MajorIDint=null,@ClassIDint=null,@StudentIDint=null
as

declare@varvarchar(200)
declare@sqlvarchar(8000)

set@sql=

--放进一时表
selectdistinctCourseNameinto#tbfromCoursewhereCourse.Year=@YearandCourse.Semester=@Semester

--声明游标
declarecurcursor
forselectCourseNamefrom#tb
opencur
fetchnextfromcurinto@var
while@@fetch_status=0
begin
set@sql=@sql+sum(casewhenCourse.CourseName=+@var+thenStudent_Course.Scoreelse0end)as+@var+,
fetchnextfromcurinto@var
end

set@sql=left(@sql,len(@sql)-1)


set@sql=selectClass.ClassNameas班级,Student_Course.StudentIDas全学号,StudentData.StudentNameas姓名,+@sql+
fromStudentData,Student_Course,Course,Class
whereStudent_Course.CourseID=Course.CourseID
andStudentData.StudentID=Student_Course.StudentID
andStudentData.ClassID=Class.ClassID


--依据输出参数的分歧创立查询语句
if@Yearisnotnull
set@sql=@sql+andCourse.Year=+Cast(@Yearasvarchar(4))--强迫转换为字符串

if@Semesterisnotnull
set@sql=@sql+andCourse.Semester=+Cast(@Semesterasvarchar(1))

if@MajorIDisnotnull
set@sql=@sql+andCourse.MajorID=+Cast(@MajorIDasvarchar(4))

if@ClassIDisnotnull
set@sql=@sql+andStudentData.ClassID=+Cast(@ClassIDasvarchar(4))

if@StudentIDisnotnull
set@sql=@sql+andStudentData.StudentID=+Cast(@StudentIDasvarchar(8))

set@sql=@sql+groupbyClass.ClassName,Student_Course.StudentID,StudentData.StudentNameorderbyStudent_Course.StudentID


exec(@sql)

deallocatecur
droptable#tb
GO

至此,该存取历程完成了我们想要的功效.第一次发文章,请人人多多撑持!

</p>楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。

精灵巫婆 发表于 2015-1-17 19:51:48

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

小女巫 发表于 2015-1-21 07:14:02

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

小妖女 发表于 2015-1-26 22:30:58

尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。

老尸 发表于 2015-2-2 13:05:31

不能只是将它停留在纸上谈兵的程度上。

若相依 发表于 2015-2-7 20:40:55

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。

柔情似水 发表于 2015-2-23 10:24:03

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。

admin 发表于 2015-3-7 08:01:18

学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。

小魔女 发表于 2015-3-14 15:00:12

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
页: [1]
查看完整版本: ASP网页编程之关于交织报表的静态完成