[Windowsシステム運用] InfoPath−SQL Server連携で構築するC/Sシステム 第2回 InfoPathのデータ接続を編集する5.ユーザー名や日付、時刻を取得する兵庫県立西宮香風高等学校システム管理課長Microsoft MVP for InfoPath 松本 吉生 2007/02/22 |
|
|
クライアント/サーバ(C/S)システムでは、入力データの管理のために、データを入力したユーザー名や、データを登録した時刻などを同時に記録したいことがある。InfoPath 2003には「now」関数があり、この関数をフィールドのデフォルト値に設定しておけば、データを入力した日時を記録することができる。しかしnow関数で取得できるのは、あくまでもクライアント・コンピュータの日付と時刻である。もしクライアント・コンピュータの日付や時刻がずれていれば、正しい値を記録することはできない。またInfoPath 2003にはないが、InfoPath 2007にはユーザー名を取得する「userName」関数がある。
now関数とuserName関数 |
「now」関数はInfoPath 2003とInfoPath 2007で、「userName」関数はInfoPath 2007で使うことができる。上はInfoPath 2003の画面、下はInfoPath 2007の画面。 |
一方SQL Serverにはデータベースに接続したActive Directoryのユーザー名を取得する関数がある。これを使えばデータ接続からInfoPath 2003でもユーザー名を取得することができる。
ユーザー名を取得するデータ接続の作成
まず既存のフォームから、メニュー・バーの[ツール]−[データ接続]で[追加]ボタンをクリックし、新しいセカンダリ・データソースを作成するデータ接続ウィザードを開始する。データ接続は[データの受信]で利用し、データは[SQL Server]から受信することとする。[データベースの接続]では、接続するデータベースを選択と適当なテーブルを選択する。ユーザー名を取得するためにはテーブルは必要ないので、ここではウィザードを進めるために仮に指定しておく。[データ接続ファイルを保存して終了]では、既存のデータ接続ファイルを上書きしてしまわないように、ファイル名を別の分かりやすい名前に変更して保存する。
データ接続ファイルの保存 | |||
既存のデータ接続ファイルを上書きしてしまわないように、SQLを書き換えるデータ接続はファイル名を変更して保存する。 | |||
|
ユーザー名を取得するデータ接続のSQLの編集
データソース構造が表示されたら[SQLの編集]ボタンをクリックしてSQL文を編集する。SQL Serverからユーザー名を取得するには次のSQL文に書き換える。
select suser_sname() as "ユーザー名" |
SQL Serverからユーザー名を取得するSQL | |||
ウィザードでできたSQL文をすべて書き換える。 | |||
|
[SQLステートメントのテスト]を実行し、エラーがないことを確認して、データ接続ウィザードを終了する過程はこれまで説明したものと同じである。フォームの編集画面に戻ったら、データ接続作業ウィンドウから作成したデータ接続を確認する。
データ接続を確認する | |||
SQLの編集で取得したユーザー名を「as」句で「ユーザー名」という別名に変更したことが反映されている。 | |||
|
これで自分のActive Directoryユーザー名がSQL Serverから取得できるデータ接続ができた。この接続では、フォームが開かれたときにデータを取得するようにしておく。するとフォームを開いたときに、自動的にフィールドに自分のユーザー名がセットされる。
日付と時刻を取得するデータ接続の作成
日付と時刻をSQL Serverから取得することもできる。これを利用すれば、たとえクライアント・コンピュータの日付と時刻がずれていても、SQL Serverから日付と時刻を取得することができるので、データ入力のタイミングを正しく掌握することができる。方法は先のユーザー名の取得の場合と同様で、新しくセカンダリ・データ接続を作成し、適切なファイル名で保存した後、SQLの編集でSQL文を次のように書き換える。
select getdate() as "日付と時刻" |
SQL Serverから日付と時刻を取得するSQL | |||
ウィザードで生成されたSQL文をすべて書き換える。 | |||
|
INDEX | ||
[Windowsシステム運用]InfoPath−SQL Server連携で構築するC/Sシステム | ||
第2回 InfoPathのデータ接続を編集する | ||
1.InfoPathのデータ接続の編集 | ||
2.データソースのデータの並べ替え順序を変更する | ||
3.メイン・データソースのデータをリストボックス項目として利用する | ||
4.セカンダリ・データ接続を編集し、distinct句を利用する | ||
5.ユーザー名や日付、時刻を取得する | ||
6.SQL Serverから取得したデータの利用 | ||
運用 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|