none
他のServer上(SQL Server)に有るTableのRecordをSharerPointのリストライブラリにVB or VBAを使用して追加する方法 RRS feed

  • 質問

  • 今回SharePointServer2007の導入の検討をしておりますが、既に運用しているSQL Server上のTableから
    Userが指定したRecordをSharePoint上のリストライブラリにUP LOADし、その後SQL Server上のDataが更新された場合
    SharePoint上のDataも更新したのですが、どの様にすれば良いのでしょうか?
    また、SharePoint上で付加された情報についてSQL Server上に連携したく考えています。

    フロントエンドは、VB5 または、EXCEL2003のVBAを使用しています。
    SQL Serverへの接続は、ADO.NETを使用しています。

    よろしくお願いします。
    2009年11月23日 10:57

すべての返信

  • SharePointのリストのデータと、SQL Serverのテーブルのデータを
    同期させたい、という事でよろしいでしょうか。
     
    残念な事に、WSS3.0においてもMOSS2007においても、
    標準でリストとテーブルを同期させる仕組みは存在しません。
     
    また、データ移行という点においても、直接移行させる
    仕組みは存在せず、例えば一度ACCESSのテーブルに
    変換する等の手順が必要になります。
     
    一応、SSISを利用して、データ連携を行うソフトウェアを
    紹介しておきます。
     
    ただ、このソフトを用いても動的な同期はできず、
    例えば夜間に1回、バッチ処理的に片方向に同期を
    取るぐらいしかできません。
     
    従いまして、リストとデータの動的な同期を実現する為には、
    現状、プログラムを作成する必要があります。
     
    # SharePoint 2010で、ノンコーディングで可能になると
    # うれしいですが。。。
     
    プログラムの中身としては、リストとテーブルでそれぞれ、
    更新のイベントを拾って、更新内容をお互いに反映させあう
    仕組みになると思います。
     
    リスト側はイベントレシーバ、テーブル側はトリガが
    あるので、ゴリゴリ書けば実現はできると思いますが、
    トランザクション処理等を考えると、あまりやりたくは
    ないですね。。。
    2009年11月25日 9:44
  • 必ずしもリストライブラリで表示しなければならないという制約が無く、
    表形式でデータを表示できれば良いという要件であれば、
    Excel Service を使って表示することは可能だと思います。
    表示するだけなら SharePoint と Excel のUI設定で完結できます。

    但し、表示のみでデータベース側の更新などの変更を伴う操作は行うことはできません。
    また、Excel Service を利用するには Enterprise Edition で無ければならないため、
    この要件のためだけに導入するのはどうかと思いますが・・・・

    Excel Service であれば、Excel のデータ接続で SQL Server 以外の接続を利用することもできますので、
    比較的自由度も高いと思います。
    データの更新も、Excel 側で設定してあげれば SharePoint のページを読込むたびに更新できます。

    2009年11月26日 0:38
  • こんにちは、

    実は、SharePoint Desginerを使うことで、SQL Server上のデータを表示、更新が可能です。

    詳細は書きリンクを参照いただければと思います。
    http://office.microsoft.com/ja-jp/sharepointdesigner/HA101009081041.aspx

    2009年12月7日 7:43