PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
19292 | 03/04/15 18:16:26 | RE(1):PB6.5: DWでの更新方法について By paku |
19290 | 03/04/15 16:54:32 | PB6.5: DWでの更新方法について By i |
カテゴリ:データウィンドウ
日付:2003年04月15日 18:16 発信者:paku
題名:RE(1):PB6.5: DWでの更新方法について
iさん、こんばんは。
>こんにちは、iです。
>早速ですが、SetItemStatusについて教えてください。
>
>あるテーブルに3件のデータがあったとき、
>-------------------
>コード、名称
>-------------------
>01、田中
>02、佐藤
>13、佐々木
>-------------------
>
>このテーブルを画面に貼り付けたDWでコードが00?09までの条件で表示させました。
>-------------------
>コード、名称
>-------------------
>01、田中
>02、佐々木
>-------------------
>
>そのあと、最終行に1行追加(InsertRow(0))し、13とコードを手で入力し、名称を修正しました。
>-------------------
>コード、名称
>-------------------
>01、田中
>02、佐藤
>13、木村
>-------------------
>
>この状態でDWをUpdateすると勿論、コード=13のデータが既に登録されているので一意制約違反で怒られます。
>
>これを回避する方法として、SetItemStatus関数を使用し、追加行のPrimary!のStatusを
>DataModified!にして、もう一度、Updateかけてみたのですが、やはり、怒られてしまいました。
>
>このような操作をしたい場合、どのようにDWを制御すればよいのでしょうか?
>因みに、DWの更新特性は、キーカラムと更新可能カラムと、DELETE文発行後にINSERTです。
>
>どうか、宜しくお願いします。
>
>
dwの抽出条件では条件にコード00?09と指定せず、表示時にFilterをかけるなんてどうでしょう?
ItemChangeイベントでdwにチェックをかけるなど
または、ItemChangeイベントで入力されたコードとその他のキー項目でSQL文を発行してDBの件数をとって
チェックするとかなんてどうでしょうか?
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows 2000
DBMS Oracle SQL*Net 8
Browser InternetExplorer5.X
Server SoftWare
OS Windows NT 4.0
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.