OSはWindows 11 Home,WebサーバはIISを使いました。IISはWindows 11
Homeに附属しています。Windows 10 Homeでも可能です。
また,DBMSにはMicrosoft Accessデータベースを利用し,IISから容易にアクセスすることができます。
ASPは,Webデータベースを実現するものです。動的にWebページを生成するWebサーバの拡張機能の一つです。
2 ASPとは
ASP(Active Server Pages)とは,Webアプリケーションを実現する技術で,Webサーバ上で動作します。通常はWebブラウザに渡されてから処理されるJava
ScriptやVB Scriptなどで記述されたスクリプトをサーバ側で処理し,処理結果のみをブラウザに送信します。Microsoft社のWebサーバであるIISで利用できます。ブラウザからデータを受け取ってファイルに記録したり,データベースと連携した動的なWebページを作成したりすることができます。ASPはプログラム言語ではありません。
ASP(Active Server Pages)の働き
Java Scriptに代表されるスクリプト言語は,クライアントサイドのスクリプトとして動的なWebページを作成するのによく使われていますが,ASPはそのスクリプティング環境をサーバ側でも利用できるようにする仕組みです。ASPファイルは拡張子.aspとしてサーバに置きますが,その記述言語はJava
Script(J Script),VB Scriptなどを使用することができます。
データベースへの問い合わせは図2-1のように処理されます。
(1)Webクライアントからデータベースへの処理要求が出されます。
(2)Webサーバは要求に対応するASPファイルを呼び出します。
(3)スクリプトエンジンがASPファイルに記述されているスクリプトを解釈し,実行します。
(4)データベースの処理をADO,ODBCで操作します。
(5)データベースより処理結果が返されます。
(6)処理結果のみをHTML文に変換します。
(7)WebクライアントにHTMLで記述されたページが送信されます。
図2-1
今回,ASPに使用した言語(サーバサイドスクリプト)はVB Scriptです。その理由は,データベースとして使用したMicrosoft
Accessは,その操作にVB(Visual Basic),VBA(Visual Basic for Applications)を使用しており,VB
Scriptはそのサブセットに相当するもので,Microsoft Accessを操作している者には理解しやすいからです。
ただし,Webクライアントでの処理(クライアントサイドスクリプト)には,Java
Scriptを使用しました。クライアント側で使用されるブラウザはVB
Scriptに対応していないものも多く存在するからです。今回は,ブラウザとしてMicrosoft Edge, Google Chrome, Firefox, Avast Secure Browserで動作確認をしました。
ASPはHTML言語とスクリプト言語を一体化して記述できるため,HTML,VB
Script,Java Scriptが混在したファイルになってしまいます。今回記述したASPファイルを見るときは,VB
Scriptはサーバで,HTMLとJava Scriptはクライアントで実行されると理解してください。(図2-2)
図2-2
3 データベースの作成
検索元になる図書データベースがない場合には作成しなければなりません。市販されているような図書管理システムを作ることはできないので,Webアプリケーションに必要な最小限のデータベースを作成することにします。サンプルファイルsample.accdbをダウンロードし,そのままデータベースファイルtosyo.accdbとして使用することもできます。ファイル名を変更するだけです。
サンプルファイルsample.accdbは,tosyo.zip (109KB) に同梱されています。
※図書管理システムNoahを使用する場合には,改めてデータベースを作成する必要はありません。テーブル・クエリなど必要なものは同梱されています。
Microsoft Accessで「tosyo.accdb」を作成します。「図書」フォルダに入れます。
テーブルを作成する
次の4つのテーブルを作成します。
(1)蔵書データテーブル(図3-1)
蔵書のデータ(書誌データ)を保存するテーブルです。フィールド名(データ型)は,登録番号(数値型)・受入年月日(日付/時刻型)・著者名・チョシャメイ・書名・ショメイ・副書名・出版社(以上テキスト型)・出版年(数値型)・本体価格・定価・価格(以上通貨型)・費目・受入先等(以上テキスト型)・ページ・高さ(以上数値型)・分類記号・図書記号・巻冊記号・場所・件名・ISBN番号(以上テキスト型)・除籍年月日(日付/時刻型)・除籍記号(テキスト型)・閉架書庫(Yes/No型)とします。登録番号に主キーを設定します。
図3-1
(2)名簿テーブル(図3-2)
名簿のデータを保存するテーブルです。フィールド名(データ型)は,番号(数値型)・氏名・code(以上テキスト型)とします。番号に主キーを設定します。
図3-2
(3)図書貸出テーブル(図3-3)
図書の貸出データを保存するテーブルです。フィールド名(データ型)は,ID(オートナンバー型)・登録番号・名列番号(以上数値型)・名列コード(テキスト型)・貸出日(日付/時刻型)・返却印(Yes/No型)とします。IDに主キーを設定します。
図3-3
(4)ユーザテーブル(図3-4)
ユーザのアクセス制限をするためのデータを保存するテーブルです。フィールド名(データ型)は,ユーザ名・パスワード(以上テキスト型)・返却・貸出・登録・訂正・管理(以上Yes/No型)とします。ユーザ名に主キーを設定します。
図3-4
クエリを作成する
次の4つのクエリを作成します。
(5)名簿クエリ(図3-5)
名簿テーブルから選択クエリを作成します。特別には選択条件をつけていません。
図3-5
(6)未返却図書クエリ(図3-6)
蔵書データテーブルと図書貸出テーブルと名簿クエリから選択クエリを作成します。蔵書データテーブルの登録番号と図書貸出テーブルの登録番号を結合します。また,図書貸出テーブルの名列番号と名簿クエリの番号を結合します。フィールドには図書貸出テーブルから,登録番号・名列番号・名列コード・貸出日・返却印,蔵書データテーブルから書名・著者名・出版社・分類記号・図書記号・巻冊記号を選びます。抽出条件として,返却印にFalseとします。
図3-6
(7)蔵書データ貸出クエリ(図3-7)
蔵書データテーブルと未返却図書クエリから選択クエリを作成します。フィールドには蔵書データテーブルからすべて,未返却図書クエリから返却印を選びます。また,分類記号(テキスト型)を数値型に変換するフィールドを関数を使って追加します。分類数値: IIf(IsNull([蔵書データ.分類記号])=True,1,CSng([蔵書データ.分類記号]))。さらに,除籍図書を除くため,除籍年月日と除籍記号の抽出条件に Is Null を設定します。蔵書データテーブルの登録番号と未返却図書クエリの登録番号を結合しますが,結合のプロパティとして蔵書データの全レコードと未返却図書クエリの同じ結合フィールドのレコードだけを含めることにします。
図3-7
(8)貸出多数図書クエリ(図3-8)
蔵書データテーブルと図書貸出テーブルから選択クエリを作成します。フィールドには図書貸出テーブルから登録番号,蔵書データテーブルから書名・著者名・出版社を選びます。蔵書データテーブルの登録番号と図書貸出テーブルの登録番号を結合します。集計をクリックしてグループ化します。さらに,CNT:
登録番号(カウント,降順),返却印の合計: Sum([返却印]*(-1))フィールド(演算)を追加します。
図3-8
4 HTML & ASPファイルのダウンロード
データをクライアントとサーバでやり取りするためのファイルをダウンロードします。ダウンロードし解凍した「tosyo」フォルダをCドライブのルート(c:\)に置きます。
tosyo.zip (109KB)
※図書管理システムNoahを使用する場合には,ダウンロードする必要はありません。図書管理システムNoahのCD-ROMに同梱されています。ただし,図書管理システムNoah2020 Ver.3以前のCD-ROMに同梱されているものは,(3)DBopen.incを参考に,修正する必要があります。
(1)toSearch.htm
toSearch.htmはWebクライアントからWebサーバーへ問い合わせをするためのファイルです。次の画面(図4-1)は,その表示画面です。
図4-1
以下はファイルのソースの主要部分を示しています。
<input type="text">で検索キーワードを入力し,
検索ボタンをクリックすることによりtoSearch.aspに送信されます。
<html>
<body>
<h1>図書検索</h1>
<hr>
<h3>記入例に従って検索キーワードを入力してください。</h3><br>
検索キーワードは一部(例:夏目漱石→漱石)でも構いません。<br>
全ての項目を記入する必要はありません。<br>
<form method="post" action="toSearch.asp">
<table>
<tr>
<th bgcolor="#87cefa">検索項目</th><th></th>
<th bgcolor="#87cefa">検索キーワード</th><th></th>
<th bgcolor="#87cefa">記 入 例</th>
</tr>
<tr>
<td>著者名</td><td>:</td>
<td><input type="text"
name="tyosyamei" size="30"></td>
<td>:</td><td>夏目漱石</td>
</tr>
<tr>
<td>チョシャメイ</td><td>:</td>
<td><input type="text"
name="tyo" size="30" ID=Text4></td>
<td>:</td><td>ナツメソウセキ</td>
</tr>
<tr>
<td>書名</td><td>:</td>
<td><input type="text"
name="syomei" size="30"></td>
<td>:</td><td>こころ</td>
</tr>
<tr>
<td>ショメイ</td><td>:</td>
<td><input type="text"
name="syo" size="30" ID=Text5></td>
<td>:</td><td>ココロ</td>
</tr>
<tr>
<td>出版社</td><td>:</td>
<td><input type="text"
name="syuppan" size="30"></td>
<td>:</td><td>講談社</td>
</tr>
<tr>
<td>件名</td><td>:</td>
<td><input type="text"
name="kenmei" size="30"></td>
<td>:</td><td>古典</td>
</tr>
<tr>
<td>副書名</td><td>:</td>
<td><input type="text"
name="fukusyomei" size="30"></td>
<td>:</td><td>文庫</td>
</tr>
<tr>
<td>購入価格</td><td>:</td>
<td><input type="text"
name="kakaku1" size="10"> 〜
<input type="text" name="kakaku2"
size="10"></td>
<td>:</td><td>500</td>
</tr>
<tr>
<td>分類記号</td><td>:</td>
<td><input type="text"
name="bunrui" size="10"></td>
<td>:</td><td>914</td>
</tr>
</table>
<input type="submit" value=" 検 索 "
name="kensaku"><input type="reset" value="リセット">
<hr><br>
<input type="button" value="前に戻る"
onClick="history.back()">
</form>
</body>
</html>
(2)toSearch.asp
toSearch.aspはtoSearch.htmから送られた検索キーワードを受け取り処理します。
Webサーバが行う一連の処理を記述したファイルです。次の画面(図4-2)は,その一連の処理によって作成された静的なWeb画面です。
図4-2
以下はファイルのソースの主要部分を示しています。<% %>で囲まれた部分がサーバが処理するスクリプト部です。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=shift_jis">
<title>検索結果</title>
</head>
<body>
<%
'response.write request.form &"<br>"
Dim intCount
strTy=Request.Form("tyosyamei")
if strTy<>"" then
strTy=" AND (著者名 LIKE '%" & strTy &
"%')"
end if
strTo=Request.Form("tyo")
if strTo<>"" then
strTo=" AND (チョシャメイ LIKE '%" &
strTo & "%')"
end if
strSy=Request.Form("syomei")
if strSy<>"" then
strSy=" AND (書名 LIKE '%" & strSy &
"%')"
end if
strSo=Request.Form("syo")
if strSo<>"" then
strSo=" AND (ショメイ LIKE '%" & strSo
& "%')"
end if
strSp=Request.Form("syuppan")
if strSp<>"" then
strSp=" AND (出版社 LIKE '%" & strSp &
"%')"
end if
strKe=Request.Form("kenmei")
if strKe<>"" then
strKe=" AND (件名 LIKE '%" & strKe &
"%')"
end if
strFu=Request.Form("fukusyomei")
if strFu<>"" then
strFu=" AND (副書名 LIKE '%" & strFu &
"%')"
end if
strKa1=Request.Form("kakaku1")
if strKa1<>"" then
strKa1=" AND (価格>=" & strKa1 &
")"
end if
strKa2=Request.Form("kakaku2")
if strKa2<>"" then
strKa2=" AND (価格<=" & strKa2 &
")"
end if
strBu=Request.Form("bunrui")
if strBu<>"" then
strBu=" AND (分類記号=" & strBu &
")"
end if
strWhere=strTy & strTo & strSy & strSo & strSp & strKe &
strFu & strKa1 & strKa2 & strBu &";"
if strWhere=";" then
%>
<font size=4><b>検索できません。</b></font>
<p><font color="#ff0000"><b>検索キーワードを入力して,再度検索してください。</b></font>
<%
else strWhere=mid(strWhere,5)
%>
<!-- #include virtual = "/tosyo/include/DBopen.inc"
-->
<%
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM 蔵書データ貸出クエリ WHERE " &
strWhere,db,,1
%>
</table>
<h2>検索結果は以下のとおりです。</h2>
<form method="POST" action="toDetail.asp">
<p>詳しい内容を表示したい場合は,<br>
チェックをつけて,右の<b>詳細を表示</b>ボタンを押してください。
<input type="submit" value="詳細を表示">
<input type="button" value="前に戻る"
onClick="history.back()">
<p><table border=0>
<tr bgcolor="#87cefa">
<th></th><th width="50">登録番号</th><th>著者名</th><th>書名</th><th>出版社</th>
<th width="50">分類記号</th><th>件名</th>
</tr>
<%
intCount=0
Do while not rs.EOF
Response.Write "<tr
bgcolor='#ddffff'>"
Response.Write "<td><input
type='checkbox' name='id' value='"&rs.Fields("登録番号")&"'></td>"
Response.Write
"<td>"&rs.Fields("登録番号")&"</td>"
Response.Write
"<td>"&rs.Fields("著者名")&"</td>"
Response.Write
"<td>"&rs.Fields("書名")&"</td>"
Response.Write
"<td>"&rs.Fields("出版社")&"</td>"
Response.Write
"<td>"&rs.Fields("分類記号")&"</td>"
Response.Write
"<td>"&rs.Fields("件名")&"</td>"
if rs.Fields("返却印") = false then
Response.Write
"<td><font color='#ff0000'><b>貸出中</b></font></td>"
end if
intCount=intCount+1
Response.Write "</tr>"
rs.MoveNext
Loop
rs.Close
db.Close
Response.Write "</table>"
Response.Write "<b>検索ヒット数:" &
intCount & "</b>"
Response.Write "</form>"
end if
%>
<form><hr><input type="button" value="前に戻る"
onClick="history.back()"></form>
</body>
</html>
(3)DBopen.inc
includeフォルダ内のDBopen.incファイルは,図書データベースのtosyo.accdbファイルのパスを指定します。
DBopen.incファイルをメモ帳などのエディタで開き,パスを指定してください。
DBopen.incファイル
<%
filePath = "c:\図書\tosyo.accdb"
set db=Server.CreateObject("ADODB.Connection")
db.Open "Provider=Microsoft.ACE.OLEDB.16.0;Data Source=" & filePath
%>
※図書管理システムNoahの場合は,二行目が
filePath = "c:\図書\Noahdata.accdb"
となります。
※データベースファイルが以前の.mdbのときは,四行目が
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filePath
でしたが,.accdbでは Microsoft.ACE.OLEDB.XX.0 とします。
また,Access2013では Microsoft.ACE.OLEDB.15.0
Access2016,2019,2021では Microsoft.ACE.OLEDB.16.0 とします。
(4)フォルダの階層構造とファイル名
「tosyo」フォルダ内の階層構造とファイル名を示します。
tosyo ・・・・・ Index.htm,
dictionary.gif, nabkgnd.jpg, tosyo.gif
include ・・・・・ DBopen.inc
tomanage
・・・・・ tmLgIn.htm, tmEditA.asp, tmEditB.asp, tmInA.asp, tmInAll.asp, tmInB.asp,
tmInH.asp,
tmLgIn.asp, tmLgOut.asp, tmMenu.asp, tmNewA.asp, tmNewB.asp,
tmOutA.asp,
tmOutB.asp, tmOutK.asp, tmSrchA.asp, tmSrchB.asp, tmUsers.asp
tosearch
・・・・・ toCtgry.htm, toSearch.htm, toBest.asp, toCtgry.asp, toDetail.asp,
toNew.asp, toSearch.asp
Index.htmファイルは,最初に表示されるページ(ホームページ)です。(図4-3)
図4-3
タイトル「〇○○高校図書館のページ」を変更するときは,Index.htmをメモ帳などエディタで開き,3行目
<title>○○○高校図書館のページ</title>
を変更します。
5 Webサーバの設定
IIS(Internet Information Services)の設定をします。IISとはMicrosoft社のインターネットサーバソフトウェアです。WebサーバやFTPサーバ,SMTPサーバ,限定的なNNTPサービスなど,様々なサーバの機能を統合しています。Windows11, Windows10におけるIISのバージョンは10.0です。
(1)IISのインストール
ア 管理者権限でログインします。
イ [ファイル名を指定して実行] を開きます。(図5-1-1)
図5-1-1
ウ [appwiz.cpl] を起動します。(図5-1-2)
図5-1-2
※[appwiz.cpl]が起動できなかったときは,[スタート]→[設定]→[アプリ]→[オプション機能]→[Windowsのその他の機能]でオに移行します。
エ [Windowsの機能の有効化または無効化] をクリックします。(図5-1-3)
図5-1-3
オ 「インターネットインフォメーションサービス」にチェックをつけて[OK]ボタンをクリックします。(図5-1-4)
図5-1-4
カ 必要なファイルを検索しています。(図5-1-5)
図5-1-5
キ 変更を適用しています。(図5-1-6)
図5-1-6
ク 必要な変更が完了しました。[閉じる] をクリックします。(図5-1-7)
図5-1-7
(2)IISの動作確認
IISが動作しているか確認します。
Webブラウザを起動し,アドレス欄に「http://localhost/
」と入力し,「Enter」キーを押します。IISのオンラインマニュアルである画面が表示されれば,IISは動作しています。(図5-2)
(注1) http://127.0.0.1/ または http://”このコンピュータ名”/ と入力してもよいです。
(注2)ユーザ名とパスワードを入力するダイアログボックスが表示されることがあります。
図5-2
(3)ASPとCGI
IISの標準インストールでは,ASP(Active Server Pages)とCGI(Common Gateway Interface)が有効になっていません。(1)IISのインストールで行ったように[Windowsの機能の有効化または無効化]を開き,「インターネットインフォメーションサービス」-「World Wide Webサービス」-「アプリケーション開発機能」と展開して,[ASP]と[CGI]にチェックをつけて[OK]ボタンをクリックします。(図5-3)
図5-3
(4)IISの設定
ア 管理者権限でログインします。
イ [スタート]−[すべてのアプリ]−[Windowsツール]−[インターネットインフォメーションサービス(IIS)マネージャー]を開きます。なお,スタートを右クリックし,[コンピュータの管理]を開き,サービスとアプリケーションの中からインターネットインフォメーションサービス(IIS)マネージャーを選んでもよいです。
ウ もし「URLの処理中にサーバーでエラーが発生しました。」が表示されたときは,[接続]ペインで[コンピュータ名(コンピュータ名¥ユーザ名)]−[サイト]−[Defalt Web Site]を選択し,[管理]領域の[構成エディター]を開き,[system.webServer/asp]セクションの[scriptErrorSentToBrowser]という項目をTrueに変更すると,エラーの詳しい内容がわかります。通常はFalseのままにします。(図5-4)
図5-4
(5)仮想ディレクトリの設定
仮想ディレクトリとは,リアルなディレクトリとは違い,コンテンツが格納されている物理パスをドキュメントルートディレクトリ以外に設定したディレクトリのことを言います。ダウンロードしたファイルの「tosyo」フォルダに仮想ディレクトリの設定をします。
ア (3)IISの設定で使用した[インターネットインフォメーションサービス(IIS)マネージャー]を開きます。
イ [Defalt Web Site]を右クリックし,[仮想ディレクトリの追加]をクリックします。(図5-5-1)
図5-5-1
ウ エイリアスを「tosyo」と入力し,物理パスを[...]ボタンをクリックして[C:¥図書¥tosyo]とします。(図5-5-2)
エイリアスはブラウザのアドレスで使われます。Webブラウザからは「http://”このコンピュータ名”/tosyo/」でアクセスできるようになります。
図5-5-2
(注)図5-5-1では”このコンピュータ名”は「IIYAMA」となっています。
エ [Defalt Web Site]に仮想ディレクトリtosyoが追加されました。Webブラウザで「http://”このコンピュータ名”/tosyo/」と入力してアクセスできるか確認します。
(注)「tosyo」フォルダを右クリックして[プロパティ]を開き,[セキュリティ]タブを選んで設定することもできます。
(6)セキュリティの設定
仮想ディレクトリ内のファイルに対するアクセス許可を設定します。「図書」フォルダ,「tosyo」フォルダともにAuthenticated Usersでアクセスできるようにします。Authenticated Usersとは,基本的にEveryoneの代わりに使われ,コンピュータ上または Active Directoryサービス内に有効なユーザアカウントを持つ全てのユーザがこのグループに含まれます。Guestアカウントは除かれます。
「図書」フォルダ(図書データベース,図書管理システムが入っているフォルダ)
ア 「図書」フォルダを右クリックして[プロパティ]を開き,[セキュリティ]タブを選びます。
イ [編集]ボタンをクリックし,[追加]ボタンをクリックし,選択するオブジェクト名を入力してくださいにauと入力して[名前の確認]ボタンをクリックするとAuthenticated Usersと表示されるので,[OK]ボタンをクリックします。さらに[OK]ボタンをクリックします。
ウ アクセス許可を「変更」許可にチェックを付けて,[OK]をクリックします。
(注)「変更」許可にチェックを付けると,自動的に「書き込み」許可にもチェックが入ります。
「読み取りと実行」「フォルダの内容の一覧表示」「読み取り」のチェックをはずすことはできません。
「tosyo」フォルダ(仮想ディレクトリを設定したフォルダ)
エ 「tosyo」フォルダを右クリックして[プロパティ]を開き,[セキュリティ]タブを選びます。
オ [編集]ボタンをクリックし,[追加]ボタンをクリックし,選択するオブジェクト名を入力してくださいにauと入力して[名前の確認]ボタンをクリックするとAuthenticated Usersと表示されるので,[OK]ボタンをクリックします。さらに[OK]ボタンをクリックします。
カ アクセス許可に「読み取りと実行」許可にチェックが付いていることを確認して,[OK]をクリックします。(図5-5)
(注)「読み取りと実行」許可にチェックを付けると,自動的に「フォルダの内容の一覧表示」「読み取り」許可にもチェックが入ります。
図5-6
(7)アプリケーションプール
アプリケーションプールとは,Webサーバソフトウェア,IISの機能の一つで,アプリケーションをグループ分けしてそれぞれ独立に実行する仕組みのことです。「tosyo」サイトにアプリケーションプールを設定します。
ア (3)IISの設定で使用した[インターネットインフォメーションサービス(IIS)マネージャー]を開きます。
イ [接続]ペインの[サイト]-[Defalt Web Site]を展開し,[tosyo]を右クリックします。
ウ [アプリケーションへの変換]をクリックします。
エ アプリケーションプールが[DefaultAppPool]であることを確認し,[OK]ボタンをクリックします。(図5-7)
図5-7
オ [OK]ボタンをクリックします。
6 エラーの回避
tosyoのホームページが表示されたにも関わらず,新着情報をクリックすると,次のエラーメッセージが表示されることがあります。(図6-1)
図6-1
図6-1のメッセージの後,次のエラーメッセージが表示されることがあります。(図6-2)
図6-2
Webブラウザの翻訳機能によって,次のエラーメッセージが表示されることがあります。(図6-3)
図6-3
[インターネットインフォメーションサービス(IIS)マネージャー]を開きます。
[接続]ペインの[アプリケーションプール]をクリックし,[DefaultAppPool]をクリックし,[操作]ペインの[開始]をクリックします。
[操作]ペインの[アプリケーションプールの規定値の設定]をクリックし,[32ビットアプリケーションの有効化]をtrueに変更し,[OK]ボタンをクリックします。(図6-4)
図6-4
新着図書情報のタイトルは表示されますが,次のエラーメッセージが表示されることがあります。(図6-5)
図6-5
[インターネットインフォメーションサービス(IIS)マネージャー]を開きます。
[接続]ペインの[tosyo]をクリックし,[操作]ペインの[基本設定]をクリックします。
アプリケーションの設定で[接続]ボタンをクリックし,[特定のユーザー]を選択し,[設定]ボタンをクリックし,[ユーザー名],[パスワード]を入力して,[OK]ボタンをクリックします。ここでのユーザー名は,インターネットインフォメーションサービス(IIS)マネージャーの[接続]ペインの一行目「このコンピュータ名(このコンピュータ名\ユーザー名)」にあるものです。(図6-6)
[OK]ボタンをクリックします。続けて,[OK]ボタンをクリックします。
図6-6
新着情報が正しく表示されるようになったら,1年間の貸出ベスト10なども確認します。
[アプリケーションプールの規定値]の[32ビットアプリケーションの有効化]をFalseに戻し,[tosyo]の[基本設定]の[接続]を[アプリケーションユーザー(パススルー認証)に戻します。
LANで接続された他のPCで,tosyoのページが表示されることを確認します。
※ここまでのエラー回避策をしても回避できない場合には,[インターネットインフォメーションサービス(IIS)マネージャー]を開き,[接続]ペインの[Default Web Site]をクリックし,[操作]ペインの[再起動]をクリックします。
7 図書管理システムNoahの利用
既存の図書管理システムが図書管理システムNoahのときは,比較的簡単にWebアプリケーションを追加することができます。図書管理システムNoahは県内で約120校に利用されています。図書管理システムNoahではシステムプログラムの入ったNoah.accdbと,データの入ったNoahdata.accdbの2つの主要なファイルがあり,2つのファイルはリンク(連結)で繋がっています。2台以上のパソコンで図書管理システムNoahを使用する場合,通常,主のパソコンにこの2つのファイルを入れリンクを設定し,クライアントパソコンにはNoah.accdbのみを入れて主のパソコンにあるNoahdata.accdbとリンクを設定します。この場合,図書検索をするためには校内イントラネットのクライアントパソコン全てにNoah.accdbを置き,リンクを設定することになります。複数のパソコンに図書管理システムNoahをインストールするためのライセンスを取得しなければなりません。台数が多くなれば価格が上がり,インストールする作業が増えます。そこで,ぜひこのWebアプリケーションを追加してみましょう。
(1)図書管理システムNoahの整理
図書管理システムNoahには,データベースをWeb化するために必要なテーブルとクエリが同梱されていますので,新たに作成する必要はありません。
(2)DBopen.inc
includeフォルダ内のDBopen.incファイルは,図書管理システムNoahのNoahdata.accdbファイルのパスを指定します。
DBopen.incファイルをメモ帳などのエディタで開き,パスを指定してください。
DBopen.incファイル
<%
filePath = "c:\図書\Noahdata.accdb"
set db=Server.CreateObject("ADODB.Connection")
db.Open "Provider=Microsoft.ACE.OLEDB.16.0;Data Source=" & filePath
%>
7 おわりに
図書管理システムをWebアプリケーションで使用するときのそのほとんどの利用方法は図書検索と思われます。主になるパソコンは司書室内に置かれ,図書管理システム本体およびデータが入っています。次に,図書室内のカウンタに置かれるパソコンは貸出・返却業務を行い,図書検索も行いますが,蔵書データの入力や訂正は行いません。さらに,図書室内または校内に置かれる3台目以降のパソコンで図書管理システムを利用する目的のほとんどは図書検索でしょう。よって,Webアプリケーションで蔵書データの入力や訂正,貸出・返却業務の機能は必要ないと思われましたが,ここではそれらの機能も備えています。当然,管理者権限や個人情報に関わるのでセキュリティ対策が施されています。
図書管理システムを導入していない場合には,Microsoft Accessにて図書データベースを作成しなければなりません。これには多くの労力が必要と思われます。既存の図書管理システムがあればぜひそこにWebアプリケーションを追加してみてください。
このWebアプリケーションを作成するにあたり,愛知エースネット内部ページの一般技術情報から「Webデータベースを作ってみよう」を参考にさせていただきました。
2023年5月吉日,Windows11 & IIS10.0 に対応するため,このWebページを更新しました。
注記
Microsoft Windows,Microsoft Access,マイクロソフト製品名は,米国およびその他の国におけるMicrosoft
Corporationの商標または登録商標です。その他の製品名,社名,ロゴマーク等は該当する各社の登録商標または商標です。