Access:SharePointリストのリンク -1-

Access には リンクテーブル という便利な機能があります。
Access同士や RDBMSのテーブルだけでなく、SharePointのリストもリンクできます。

「その1」ではリンク方法を書いていきます。

image

リンクして嬉しいこと

リンクしてしまえば(ほとんど)Accessの世界になるので、Accessのルールで利用することが出来ます。

例えばSQL文を手書きしなくても、クエリデザイン ツールでお手軽にデータ抽出、一括処理が可能になります。
この機能を使うことで、簡単にパターン違いのデモデータを用意したり、繰り返し利用する抽出条件を作成することも出来ます。

image

もちろん他にも フォームやレポートを作成し管理者向けの画面を用意したり、VBAで動作や処理を拡張していくことも可能です。
これほどデータをこねくり回すのが簡単なツールは他にありません。

最近のエンジニアには Accessを知らない人もいますが、まだまだ企業ユーザーの中には Access使いの方々が多くいらっしゃいます。
便利なツールですし、お客様が知っていてエンジニアが知らないなんて恥ずかしいことにならないためにも(これは余計か)触りだけでも使えるようになってもらえると嬉しい限りです。

また、上記のように SharePointのリストも Accessはリンクできますので、SharePoint有効活用のためのイチツールとして もっともっと利用出来ると思っています。

と、このあたり語り始めると長いので後は利用方法を書いていきます。


リンク方法

1. 既に SharePoint上にリストがある場合

[外部データ] – [インポートとリンク] – [その他] – [SharePoint リスト] を選択します。
image

外部データの取り込み」ウィザードが表示されるのでリストを含むサイトを入力します。
オプション、今回はリンクを選択します。
image

リンクしたいリストを選択して、[OK]をクリックします。
image

これでサクッとリンクテーブルが出来ました。
「テーブル1」はローカルテーブルです。アイコンも色も違うので間違えようが無いですね。
image

2. Access のテーブル情報を元に SharePointのリストを作成する場合

先にAccessでテーブルを作成している場合はこちらの方法で。

まずは移行元の情報から。「テーブル1」の設定情報です。
image

同じくデータ。
image

早速移動したいと思います。
[データベース ツール] – [データの移動] – [SharePoint] をクリックします。
image

注意!
データの移動」は、実行するAccess上の全てのテーブルが対象になります。
個別に選択出来ないので、データがたんまり入っているテーブルで
うっかり進めてしまうと非常に時間がかかったりしますのでご注意を。

個別に処理を行う場合は、[外部データ] – [エクスポート] からSharePointリストへエクスポートし手動でリンク設定を行うことで実現できます。
image
この場合面白いのは、クエリも対象にすることが出来るので個別の抽出結果をリストに書き出すことが出来ます。

ただ、あくまでエクスポートなので 自動でリンク設定が行われません。


「SharePointへのテーブルのエクスポート ウィザード」にてサイトを入力/指定します。
image

ここで「次へ」をクリックすると、なんの確認も注意も無く処理が開始されます。
SharePointのリストを構成し、データを移動し、Access上では自動でリンクテーブルの設定が行われています。
image

処理が完了すると結果が表示されます。
下記は正常終了時。
image

データの移動を実行した場合の注意点

テーブルを見てみると、なぜか2つのリンクテーブルが・・・
image
UserInfo リンクテーブルは、SharePointリストの権限設定情報です。
自動的にリンクされますが特に必要ないので切ってしまってもいいです。

また「テーブル1」の設定情報を見ると、移動前には無かったフィールドが増えています。
(タイトルと_OldID 以下のフィールド)

image
移動先の SharePointリストで必須のフィールが作成されるので増えています。

Access内で利用するかどうかはアプリの仕様次第ですが、あまりお勧めできません。

SharePoint側の仕様が変わった場合、最悪フィールドが無くなったりすることもあります。
あくまでSharePointリストとして必要なフィールドなので、Accessアプリ側としては無視した方が無難です。

上記の理由からこれらの名称フィールドでAccessの設計するすることもお勧めしません。
(日本語で作らなければいいのですが、危ないのは 更新日時や更新者、タイトルあたり?)

まずはリンク方法でした。
次回は「リンクの更新」と「ローカル テーブルに変換」の予定です。

Akira Fukami

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

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA