图1为输入会议的基本信息,图2是显示预定结果的gridview,选择calender控件中的日期,自动填充到Textbox1,选择开始时间T1和结束时间T2,结束时间必须大于开始时间,预定日期,预定部门(DropDownList3)和开始时间T1(DropDownList1),结束时间T2(DropDownList2)为必填项,点击"提交预定"后,如图2所示先将日期写入第一列”预定日期中“,所有同一日期的预定信息都写在同一行中,将预定部门和会议时间写入这个时间段所对应的的datagridview的单元格中,可以每个单元格中都写入相同的数据而不是像图中那样合成一个大格子,并将这些单元格显示为红色,如果这段时间内已经有单元格有数据,则该预定不能成功提交.
现在的问题在于,如何将开始时间T1的值以及结束时间T2的值,与数据库中的列名经行匹配,类似于:
首先查询表Table1中第一列”预定日期date1“的值与输入的”预定日期Textbox1“值相同的行
然后获取该行中所有列的列名
if(date1==Textbox1,T1>=某列名<=T2)
{
这一行某列名所对应的列的值(该行某单元格的值)=+“(预定部门)DropDownList3.Text","(开始时间T1)DropDownList1.Text","(结束时间)T2DropDownList2.Text"//
我不知道该如何获取数据库表中的列名,而且列名和起止时间的字段都是时间型的,不知如何比大小,同时对于单元格中已有数据的情况也不知道该如何排除,希望能给出实现这一功能的详细代码,分全部给你
17 个解决方案
#1
补充一下的是,如果表中第一列”预定日期“的值没有与输入的”预定日期“相同的行,等同于该日期还没有创建过预定信息,则将整个预定信息,连带预定日期,一起写入表中的任意一个空行中,作为该日期的第一个预定信息被创建,随后别的预定信息才开始写入该行的空白单元格中
#3
这个系统跟我的有点相似,但是关键部分没有说明,我的系统的前端显示是类似于“本周预定”和“本月预定”这样的显示方式,对于这部分的存储过程我不是很了解,还希望给予指点,谢谢
#4
你应该算出当周开始日期与结束日期,或是当月的开始日期与结束日期:
... AND ([BookingDate] IS NULL OR [BookingDate] BETWEEN '开始日期' and '结束日期')
... AND ([BookingDate] IS NULL OR [BookingDate] BETWEEN '开始日期' and '结束日期')
#5
gridview里默认是显示系统当前时间所在周,周一到周五的预定信息,或者是输入日期查询该日期的预定信息。
当周开始日期和结束日期是一直变化的,能根据当前的系统时间计算当周的开始日期和结束日期吗
#6
#7
提个建议:你这种是比较传统的会议室预定模块,对开发来说也是最基础的增删改查操作,这种形式似乎已经有些陈旧了,建议一下你们领导将会议室预定做成这样:页面类似一个白板,大家可以将自己的会议申请添加到上面(类似于标签),有人发布会议时他首先要自己先看看是否已经有人预定过了,这样他们可以线下沟通谁的会议级别高,是否可以让给谁开会,你的模块只要增加 删除就可以了,不用做复杂的会议变更...等等功能。这样似乎用户体验也比较高一些。
#8
#9
那这个就简单多了,我们公司的人都很忙,不会花时间在线下协调上面的
#10
周函数执行的时候有问题,你还是直接告诉我怎么实现周预定的存储和显示的代码吧,我比较菜
#11
周函数在sql中执行成功了,怎么把这个函数应用在周预定报表的制作上呢
#12
嗯,好样的
下面是计算出当前周的开始日期与结束日期:
下面是计算出当前周的开始日期与结束日期:
DECLARE @Y INT = YEAR(CURRENT_TIMESTAMP)
DECLARE @sD DATE, @eD DATE
SELECT @sD = [StartDate],@eD = [EndDate] FROM [dbo].[udf_Week](@Y,@Y) WHERE CAST(CURRENT_TIMESTAMP AS DATE) BETWEEN [StartDate] and [EndDate]
#13
再结合用#4楼的语句,就可以得到当前周的预定记录了。
#14
还有这个周函数是把周日00:00作为开始日期,这个不会有问题吗
#15
Refer this:
http://www.cnblogs.com/insus/archive/2011/01/14/1935867.html
有一个函数,可以把一周之中任意一天,作为一周开始之日。
http://www.cnblogs.com/insus/archive/2011/01/14/1935867.html
有一个函数,可以把一周之中任意一天,作为一周开始之日。
#16
谢谢希望对我有帮助
#17
有源代码嘛!!!!!!!
#1
补充一下的是,如果表中第一列”预定日期“的值没有与输入的”预定日期“相同的行,等同于该日期还没有创建过预定信息,则将整个预定信息,连带预定日期,一起写入表中的任意一个空行中,作为该日期的第一个预定信息被创建,随后别的预定信息才开始写入该行的空白单元格中
#2
#3
这个系统跟我的有点相似,但是关键部分没有说明,我的系统的前端显示是类似于“本周预定”和“本月预定”这样的显示方式,对于这部分的存储过程我不是很了解,还希望给予指点,谢谢
#4
你应该算出当周开始日期与结束日期,或是当月的开始日期与结束日期:
... AND ([BookingDate] IS NULL OR [BookingDate] BETWEEN '开始日期' and '结束日期')
... AND ([BookingDate] IS NULL OR [BookingDate] BETWEEN '开始日期' and '结束日期')
#5
gridview里默认是显示系统当前时间所在周,周一到周五的预定信息,或者是输入日期查询该日期的预定信息。
当周开始日期和结束日期是一直变化的,能根据当前的系统时间计算当周的开始日期和结束日期吗
#6
这里有个周函数:
http://www.cnblogs.com/insus/articles/1622988.html
http://www.cnblogs.com/insus/archive/2009/07/30/1535448.html
http://www.cnblogs.com/insus/articles/1622988.html
http://www.cnblogs.com/insus/archive/2009/07/30/1535448.html
#7
提个建议:你这种是比较传统的会议室预定模块,对开发来说也是最基础的增删改查操作,这种形式似乎已经有些陈旧了,建议一下你们领导将会议室预定做成这样:页面类似一个白板,大家可以将自己的会议申请添加到上面(类似于标签),有人发布会议时他首先要自己先看看是否已经有人预定过了,这样他们可以线下沟通谁的会议级别高,是否可以让给谁开会,你的模块只要增加 删除就可以了,不用做复杂的会议变更...等等功能。这样似乎用户体验也比较高一些。
#8
#9
那这个就简单多了,我们公司的人都很忙,不会花时间在线下协调上面的
#10
周函数执行的时候有问题,你还是直接告诉我怎么实现周预定的存储和显示的代码吧,我比较菜
#11
周函数在sql中执行成功了,怎么把这个函数应用在周预定报表的制作上呢
#12
嗯,好样的
下面是计算出当前周的开始日期与结束日期:
下面是计算出当前周的开始日期与结束日期:
DECLARE @Y INT = YEAR(CURRENT_TIMESTAMP)
DECLARE @sD DATE, @eD DATE
SELECT @sD = [StartDate],@eD = [EndDate] FROM [dbo].[udf_Week](@Y,@Y) WHERE CAST(CURRENT_TIMESTAMP AS DATE) BETWEEN [StartDate] and [EndDate]
#13
再结合用#4楼的语句,就可以得到当前周的预定记录了。
#14
还有这个周函数是把周日00:00作为开始日期,这个不会有问题吗
#15
Refer this:
http://www.cnblogs.com/insus/archive/2011/01/14/1935867.html
有一个函数,可以把一周之中任意一天,作为一周开始之日。
http://www.cnblogs.com/insus/archive/2011/01/14/1935867.html
有一个函数,可以把一周之中任意一天,作为一周开始之日。
#16
谢谢希望对我有帮助
#17
有源代码嘛!!!!!!!