- - PR -
DataTableについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-03-25 18:24
Dim result2 As DataTable
Dim result = New DataTable() 'バッファ 下記の様にresult2をバッファresultに退避する処理を考えています。 result.Rows(i - 1) = result2.Rows(i - 1) これは実行エラーとなるのですが、このようにDataTableの中身を そのままコピーする方法はありますか? | ||||
|
投稿日時: 2003-03-25 19:26
こんにちは。
>>result.Rows(i - 1) = result2.Rows(i - 1) >>これは実行エラーとなるのですが、このようにDataTableの中身を >>そのままコピーする方法はありますか? result.rows.add(result2.rows(i-1).itemarray) かな? DataRowクラスは、どのテーブルに属しているという情報も持っているので、そのままコピーはできません。特定の行にコピーしたい場合は、全ての列をグルグル回すしかない…ように思います。 | ||||
|
投稿日時: 2003-03-26 09:52
素直に
Dim result = result2.copy() じゃ駄目なんですか? | ||||
|
投稿日時: 2003-03-26 10:17
下記の様にDataTable型(result2)を返す関数があり、それを DataTbl = SecRepCls.GetEastWestDataList(Con, EastWest, sysYear, sysMonth) DataGrid1.DataSource = DataTbl DataGrid1.DataBind() 名前 'status_nm' のフィールドまたはプロパティが選択されたデータソースに見つかりませんでした。 のメッセージが出てしまいます。 コピー方法が悪いのではないかと思いますが、どう対処したらよいかわかりません。 ご教授お願いします。 -------------------------------------------------------------------------------- Public Function GetEastWestDataList(ByVal Con As SqlConnection, ByVal EastWest As String, ByVal SR_Year As String, ByVal SR_Month As String) As DataTable 'SQLの編集 strSQL = "" strSQL = strSQL & "SELECT week, status, status_nm, status_btnnm FROM" strSQL = strSQL & " (SELECT week, status, CASE status WHEN 0 THEN '未承認' WHEN 1 THEN '未承認' WHEN 2 THEN '承認済' END AS status_nm" strSQL = strSQL & ", CASE status WHEN 0 THEN '承認' WHEN 1 THEN '承認' WHEN 2 THEN '解除' END AS status_btnnm" strSQL = strSQL & " FROM T_SecurityReport_Info" strSQL = strSQL & " ) as temp" Cmd.CommandText() = strSQL 'データテーブルの取得し、返す。 result2 = GetDataTable(Cmd) result2 = result.Copy GetEastWestDataList = result2 End Function | ||||
|
投稿日時: 2003-03-26 10:31
下記の様にしたところデータをバッファに退避できました。
ありがとうございました。 ResultBuffer = ResultWeekData.Copy また、このバッファに追加書き込みするには、どう対処したらよいのでしょうか? ご教授お願いします。
|
1