DataEnvironmentにコマンドを動的に追加するには?


IMA  2010-03-14 17:33:04  No: 102293

現在、市販ソフトが出力したMDBに接続し、そのデータを表示するツールを作成しています。
市販ソフトのテーブル仕様:
Main001.tbl:ID, fieldM001_A, fieldM001_B, ・・・
Main002.tbl:ID, fieldM002_A, fieldM002_B, ・・・
Main003.tbl:ID, fieldM003_A, fieldM003_B, ・・・
など観点別で複数存在する

Sub001.tbl:ID, fieldS001_A, fieldS001_B, ・・・
Sub002.tbl:ID, fieldS002_A, fieldS002_B, ・・・
Sub010迄は必ず存在する。
任意項目として、ユーザーが任意に追加できるテーブルが0個以上
Sub101から作成される。
任意のMain?.tblを選択し、そのIDと各tblのIDでリンクする仕様です

作成目的:
市販ソフトのデータ表示編集フォームが見づらく、データ送りがやけに遅い。

今のVB6での作成指針:
DataEnvironment で  shape command? を利用できないかと
下記のように試行しました

1.Main001.tbl と Sub010.tbl まで、GUIの画面で コマンド(cmdViewerData)作成し
  フォームの各コントロールに連結  
  ⇒ 成功

2.任意のMain?.tbl と Sub010.tbl を連結し表示させるため
DataEnvironment1.Commands("cmdViewerData").CommandText
のMain001.tblを書換・戻すことでフォームの各コントロールに連結

sCommand = DataEnvironment1.Commands("cmdViewerData").CommandText
DataEnvironment1.Commands("cmdViewerData").CommandText = _
  Replace(sCommand, "Main001.tbl", "Main002.tbl")

  ⇒ 成功

3.cmdViewerDataの配下にSubCommand を追加するために
sSubCommand = (SQL文字列)
sCommand = DataEnvironment1.Commands("cmdViewerData").CommandText
DataEnvironment1.Commands("cmdViewerData").CommandText = _
  sCommand & sSubCommand

  ⇒ 追加コマンドが機能しない!

DataEnvironmentにコマンドを動的に追加するにはどうすればよいのでしょうか?

よろしくお願いします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加