- PR -

インフラジスティックス社のUltraWebGridについて

1
投稿者投稿内容
Masa
ベテラン
会議室デビュー日: 2007/03/19
投稿数: 65
投稿日時: 2007-03-26 10:29
現在、UltraWebGridでグリッドに表示したデータを一度グリッドの機能でソートし、その後グリッド上のデータに変更を加え更新をかけると変更を加えていない行が変更されているという現象が起きています。

ツールの開発元に問い合わせていますがだんだん論点がずれてきてしまい、なかなか解決できないため投稿させていただきました。

以下詳細情報になります。

<詳細>
使用DB:ORACLE 9i
コネクションracleConnection
アダプタracleDataAdapter
データセットataSet
グリッド:UltraWebGrid
グリッドには、
DB項目1,DB項目2,DB項目3,追加項目(変更識別子として使用)
の項目を指定
NetADVANTAGE:2005 Vol.3

<処理の流れ>
1.オラクルDBよりデータを検索
2.データバインドによりグリッド上に表示
3.グリッド上でのソートを実行
4.セルの編集を実施(変更識別子にフラグを立てます)
5.ボタン押下にて変更レコードに対し更新実施(変更識別子で判断)

処理5にて画面上に表示されている情報とプログラムで取得するデータ位置が
バラバラになり正しく変更されていません。

また、サポートからViewState(EnableViewState)をTrueにするように指示がありましたがそれでも現象は変わりません。

何かいい情報がありましたら教えていただけますようよろしくお願いいたします。
Masa
ベテラン
会議室デビュー日: 2007/03/19
投稿数: 65
投稿日時: 2007-03-26 10:45
申し訳ありません。

顔文字になってしまっているところがあったため再度詳細情報以下を書き込みます。

<詳細>
使用DB:ORACLE 9i
コネクション:OracleConnection
アダプタ:OracleDataAdapter
データセット:DataSet
グリッド:UltraWebGrid
グリッドには、
DB項目1,DB項目2,DB項目3,追加項目(変更識別子として使用)
の項目を指定
NetADVANTAGE:2005 Vol.3

<処理の流れ>
1.オラクルDBよりデータを検索
2.データバインドによりグリッド上に表示
3.グリッド上でのソートを実行
4.セルの編集を実施(変更識別子にフラグを立てます)
5.ボタン押下にて変更レコードに対し更新実施(変更識別子で判断)

処理5にて画面上に表示されている情報とプログラムで取得するデータ位置が
バラバラになり正しく変更されていません。

また、サポートからViewState(EnableViewState)をTrueにするように指示がありましたがそれでも現象は変わりません。

何かいい情報がありましたら教えていただけますようよろしくお願いいたします。
未記入
大ベテラン
会議室デビュー日: 2006/12/15
投稿数: 157
投稿日時: 2007-03-26 15:52
>処理5にて画面上に表示されている情報とプログラムで取得するデータ位置が
>バラバラになり正しく変更されていません。
バラバラになるのは処理2ではないですかね?
ソートによりUltraWebGridのデータ位置とバインド元のデータ位置がずれてたり・・・。
ソートしない場合は、正しく動作しますか?
Masa
ベテラン
会議室デビュー日: 2007/03/19
投稿数: 65
投稿日時: 2007-03-26 16:01
>ソートによりUltraWebGridのデータ位置とバインド元のデータ位置がずれてたり・・・。

表示されているデータ(Gridのデータ)とVB内で以下のようなコマンドで取得してきた値がずれています。
UltraWebGrid1.Rows(i).Cells(j).Value



>ソートしない場合は、正しく動作しますか?
ソートを行わない時は正しく動作しているようです。
未記入
大ベテラン
会議室デビュー日: 2006/12/15
投稿数: 157
投稿日時: 2007-03-26 16:52
そもそもUltraWebGridのViewで表示しているデータの位置とバインドしているデータの位置はソートによる一致保障ってしてないのでは?

Viewで変更識別子がセットされたデータがバインドデータのどこにあるか探す処理が必要だと思います。
Masa
ベテラン
会議室デビュー日: 2007/03/19
投稿数: 65
投稿日時: 2007-03-27 08:15
知識が乏しく初歩的なことをお聞きしますが、

UltraWebGrid1.Rows(i).Cells(j).Value
↑これはバインドデータを取得してきているということですか??
1

スキルアップ/キャリアアップ(JOB@IT)