サーバーに何度もアクセスすると負荷がかかるので、
自分のほしいデータをまとめてDatasetに取ってきた後、
そのDatasetを利用して帳票を作成するという機会があると思います。
例えば社員全員のある特定の期間(例えば一週間)毎日の予定を取ってきたのち
改めて社員をキーに特定の期間の一覧を作る場合
以下のようにします。
Dim i1 As Integer
Dim dr() As DataRow
Dim ds As DataSet
'dsの中身を更に絞込みをする
dr = ds.Tables(0).Select("STAFFID = " & iSTAFFID)
For i1 = 0 To dr.Length - 1
絞り込まれた中身が取れる→ = dr(i1).Item("HOGE")
Next
なお、dr(i1).Item("STAFFID") 型はObjectです。
また、And項目や<=なども使えますので
dr = DS2.Tables(0).Select("STARTTIME >= '" & dSttime.ToString("HH:mm") & "' AND STARTTIME < '" & dEdtime.ToString("HH:mm") & "' ")
などといった書き方も可能となっております。
※注意
Datasetに自分が望んだ通りのデータを作成した場合でも
Selectをすると順番が変わってしまう事もありますので
Sortが必要になります。
Sortの仕方は絞込み条件の後に,で並び替えたい条件を追加する事で
実現されます。
'STAFFID を比較して絞込み/STARTTIME,ENDTIMEで並び替え
dr = ds.Tables(0).Select("STAFFID = " & iSTAFFID, "STTIME,ENDTIME ")
デフォルトではASCになっています。
降順にしたい場合はDESCと書けばできます。