• 締切済み

SPREAD でのデータ連動、更新について

いつもお世話になっています。 SPREAD 3.0Jを使用して、プログラムをしています。 開発環境 VisualStudio6.0 Windows2000 office2000(本番時はDB2) です。 仕様は複数のテーブルをJOINさせたSQLと リンクして表示させています。 で、スプレット直接入力で変更のあったデータだけ更新したいのですが、データ更新されません。 ロジックは以下のとおりです。 ’検索表示するロジック fpSprMeisai.DAutoCellTypes = False With Me.adoMeisai ' データベース名 .ConnectionString = gstConnect .CommandType = adCmdText .RecordSource = stSQL .Refresh End With Set fpSprMeisai.DataSource = adoMeisai ’データ更新するロジック   fpSprMeisai.Action = SS_ACTION_DSAVE スプレットのヘルプやサンプルを見た感じだと これでOKだと思うのですが・・・。 考えら得る事としては、テーブルを直接リンクさせないで、SQLとリンクしてるのはダメなのかな~~とか考えてます。 何か情報お持ちの方がいましたら、アドバイスお願いします。

みんなの回答

回答No.1

adoMeisai って、ADODC ですよね? テーブルと直接リンク ( .CommandType = adCmdTable ) か SQL ( .CommandType = adCmdText ) かは関係ないようです。 SQL でもちゃんと更新されました。 が、こちらの環境( WindowsXP + VB6.0 + Spread6.0 ) では、 フォームのデザイン時に、DataSource プロパティを設定してやると正常に動作するのですが、実行時に( Form_Load で) >Set fpSprMeisai.DataSource = adoMeisai とすると、何故か、更新できる・できない以前に、スプレッドに表示できませんでした・・・。

saeyui
質問者

お礼

すみません、間違って補足の方にお礼してしまいました。大変失礼しました。

saeyui
質問者

補足

ありがとうございます。あれから試行錯誤して、どうやらSQLが単一テーブルの時は更新されるのですが、OUTER JOINなど、複数テーブルを参照したSQLだとうまく更新出来ない・・・と言う所まで来ました。 またなにか情報がありましたらよろしくお願いします。