【发布时间】:2011-10-02 05:56:32
【问题描述】:
我不知所措,到处搜索以找出如何以我理解的方式执行此操作,但仍然没有运气。我试图显示客户有空闲的时间以及每天安排的时间。他们的日程安排保存在服务器上并显示他们的忙碌时间。我使用 sql 查询提取该数据并将其放入名为 dtSched 的数据表中。然后,我创建了另一个名为 dtTime 的数据表,以 15 分钟的增量列出从上午 6:00 到晚上 10:00 的时间。我现在要做的是结合两个数据表以显示 dtTime 中列出的所有时间并显示客户安排时间的位置,以便我可以显示空行以允许添加约会并显示预定时间,以便不添加约会时间段。
这是我创建 dtTime 表的代码(所有时间):
Dim strStartDate As DateTime
Dim strEndDate As DateTime
strStartDate = DateValue(Now()) & " 6:00 AM"
strEndDate = DateValue(Now()) & " 10:00 PM"
While strStartDate <= strEndDate
strStartDate = strStartDate.AddMinutes(15)
Dim dr As System.Data.DataRow = dt.NewRow()
dr("Time") = strStartDate
dt.Rows.Add(dr)
End While
这是我的 sql 派生数据表 dtSched(预定时间):
Dim conn = New SqlConnection("Connection")
Dim strSQL As String
strSQL = "SELECT * FROM MYTABLE WHERE SCHED DATE = 'Date'"
Me.dataAdapter = New SqlDataAdapter(strSQL, conn)
Dim commandBuilder As New SqlCommandBuilder(Me.dataAdapter)
Dim dtSched As New DataTable()
dtSched.Locale = System.Globalization.CultureInfo.InvariantCulture
Me.dataAdapter.Fill(dtSched)
我试图使用 GetData 执行来绑定两个数据表,但它不起作用:
Me.dataGrid.DataSource = Me.BindingSource1
GetData("SELECT dt.Time, dtSched.Date, dtSched.ID, dtSched.Client, dtSched.StartTime, dtSched.Reason FROM dt LEFT JOIN dtSched ON dt.Time = dtSched.StartTime")
我正在尝试通过 dt.Time 和 dtSched.StartTime 连接两个数据表。然后填充数据网格。任何人都可以提供的任何帮助都非常棒!
谢谢!
【问题讨论】:
标签: datagrid time hyperlink datatable range