2007/12/18(Tue) 15:47:20 編集(投稿者)
■No11596 (特攻隊長まるるう さん) に返信
> ■No11589 (かざん さん) に返信
> かなり昔の話ですが、
> http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi?print+200404/04040077.txt
ご返答ありがとうございます。
結果だけ先にお知らせすると、うまく出来ました。
------------------------------------------------------------------------------------------
Option Explicit On
Private Data As System.Data.DataTable
Private Sub Test()
Dim util As SQLUtility = New SQLUtility()
Dim sql As String
Dim ts As New DataGridTableStyle()
'SQL作成
sql = "select CODE as コード from MST_TABLE"
'SQL実行
Data = util.ExecuteQuery(sql)
'グリッドに入力
ts.MappingName = Data.TableName
DataGrid1.TableStyles.Add(ts)
DataGrid1.DataSource = Data
DataGrid1.TableStyles(Data.TableName).GridColumnStyles("コード").Width = 100
If (DataGrid1.CurrentRowIndex > -1) Then
DataGrid1.UnSelect(DataGrid1.CurrentRowIndex)
End If
End Sub
------------------------------------------------------------------------------------------
上記は特攻隊長まるるうさんに教えていただいた参照先に書かれていたものですが、
『型'SQLUtility'は宣言されていません。』というエラーが出ます。
SQLUtilityがどういうものなのか調べてみたのですが、よく分かりませんでした。
後学の為教えていただければと嬉しいです。
そしてDataがDataTableなので、私のプログラムで作ったDataTableを使えばいいかと思い、
以下の様にしてみました。
------------------------------------------------------------------------------------------
'データセットオブジェクト
Dim DataSet1 As DataSet = New DataSet("メニュー")
'データセットにテーブルを追加
Dim DataTable1 As DataTable = DataSet1.Tables.Add("MENU_T")
'データセットテーブルにフィールド追加
DataTable1.Columns.Add("メニュー名")
DataTable1.Columns.Add("価格")
'SQLコマンドセット(0:メニューコード/1:メニュー名/2:価格)
strSql = "select * from MENU_T order by ME_CODE"
'データ取得
tblMenu = GetData(strSql)
'レコードがなくなるまで繰り返す
intCnt1 = 0
While intCnt1 < tblMenu.GetLength(0)
'テーブルオブジェクトに挿入する
DataTable1.Rows.Add(New Object() {tblMenu(intCnt1, 1), tblMenu(intCnt1, 2)}
intCnt1 += 1
End While
Dim ts As New DataGridTableStyle()
'グリッドに入力
ts.MappingName = DataTable1.TableName
DataGrid1.TableStyles.Add(ts)
DataGrid1.DataSource = DataTable1
DataGrid1.TableStyles(DataTable1.TableName).GridColumnStyles(0).Width = 150
DataGrid1.TableStyles(DataTable1.TableName).GridColumnStyles(1).Width = 60
If (DataGrid1.CurrentRowIndex > -1) Then
DataGrid1.UnSelect(DataGrid1.CurrentRowIndex)
End If
------------------------------------------------------------------------------------------
これでうまい具合にいきました。
本当にありがとうございました!