【文献】
Windowsで共有ファイルを現在使用しているユーザーを特定する方法,[online],2002年 8月17日,[令和2年11月13日検索], インターネット<URL:https://www.atmarkit.co.jp/ait/articles/0009/30/news002.html>
【文献】
橋本 哲朗,駅務機器システム技術,[online],2000年,Vol.55 No.9,pp.48−53,[令和2年11月13日検索], インターネット<URL:https://www.toshiba.co.jp/tech/review/2000/09/a13.pdf>
【文献】
忍田 祐子,MCDBA合格、ツボのツボ 第2回 開発編:ロックのしくみ,SQL SERVER magazine,日本,株式会社翔泳社,2003年10月15日,第11号,pp.66−72
(58)【調査した分野】(Int.Cl.,DB名)
前記確認部は、前記処理要求に付加される参照すべきデータを示す情報に基づいて前記データベースにおいて参照するデータを特定し、特定したデータがアクセス中であるかを確認する、
請求項4に記載のサーバ。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら実施形態について詳細に説明する。
実施形態に係る出改札システム(駅務システム)は、利用者が所持する乗車券に基づいて利用者の通行を制御するシステムである。本実施形態に係る出改札システムは、発行機、改札機および精算機などの複数の駅務端末(端末装置)と、各駅務端末との通信が可能なサーバ(上位装置)とを含むシステムである。
【0009】
サーバは、乗車券として利用される情報を管理し、各駅務端末からの処理要求に応じて処理を実行し、その処理結果を駅務端末へ返す機能を有する。各駅務端末は、サーバに処理を依頼し、サーバでの処理結果を受けて必要な処理を実行する。このように、サーバが、乗車券として利用される情報を管理して駅務端末からの要求に応じた駅務処理の少なくとも一部を実行するシステムは、アカウント型の出改札システム(アカウント型AFCシステム)とも称される。
【0010】
発行機は、乗車券の新規の発券処理、または、既存の乗車券に対する更新処理などの出札処理を行う機能を有する駅務端末である。例えば、発行機は、サーバからの発券情報に従って普通乗車券の発券処理を行う機能を有する。サーバは、発行機で利用者が指示した条件に応じて乗車券の発券情報を生成し、発券情報に基づく乗車券の発券を発行機へ指示し、発券した乗車券に関する情報をデータベースに登録する。また、発行機は、利用者からの更新指示に応じてサーバに乗車券の情報の更新を要求し、サーバでの処理によって乗車券の更新を行う機能を有する。例えば、発行機は、更新処理として、予めチャージした金額を乗車料金等に利用できるSF(ストアードフェア)乗車券に金額をチャージする金額チャージ処理を行う機能を有する。サーバは、発行機で利用者が指示したチャージ金額などの条件に従って当該SF乗車券に対する金額チャージ処理を行い、チャージする金額を加算したSF残額の更新などのデータベースの更新を行う。
【0011】
また、改札機は、利用者が提示する乗車券媒体に応じて改札口における利用者の通行を制御する改札処理を行う機能を有する。サーバは、改札機からの要求に応じて通行の可否判定などを含む処理を実行し、その処理結果に応じた通行制御を改札機へ指示し、処理結果に基づくデータベースの更新を行う。また、精算機は、利用者が提示する乗車券に対する料金の精算処理を行う機能を有する。サーバは、精算機からの要求に応じて精算額の算出などを含む処理を実行し、その処理結果に応じた処理を精算機へ指示し、処理結果に基づくデータベースの更新を行う。
【0012】
図1は、実施形態に係る出改札システム(アカウント型AFCシステム)1の構成例を示す図である。
図1に示すように、出改札システム1は、サーバ2、発行機3、改札機4、及び、精算機5を有し、鉄道などの駅務を行うための駅務システムである。発行機3、改札機4および精算機5は、駅務端末(端末装置)であり、システム1内においてそれぞれが複数設けられる。例えば、発行機3、改札機4および精算機5は、複数の駅に複数台設置される。これらの発行機3、改札機4および精算機5などの駅務端末(端末装置)に対して、サーバ2は、上位装置である。サーバ2は、発行機3、改札機4および精算機5と通信可能に構成される。
図1に示す構成例では、サーバ2は、ネットワークを介して、発行機3、改札機4および精算機5に通信接続される。
【0013】
また、本出改札システム1において乗車券として利用される媒体(以下、乗車券媒体とも称する)は、磁気情報を記憶する磁気記憶媒体(磁気券)、二次元コードが券面に印刷される印刷媒体((印刷券)、ICカード、或は、ICカードと同様な機能を有する携帯端末などが想定される。例えば、普通乗車券は、利用者が指定する金額又は区間で利用可能な券であり、利用の都度、発券される磁気券又は印刷券などが想定される。SF乗車券は、利用可能な金額(SF(ストアードフェア)残額)が設定され、利用の都度、利用状況に応じてSF残額が更新されるICカード又は携帯端末などが想定される。
【0014】
図2は、実施形態に係るサーバ2の構成例を示すブロック図である。
サーバ2は、乗車券として利用される情報を管理し、各駅務端末から受信する情報に応じて、アカウントの登録、通行判定、料金(運賃、精算額)の算出、及び料金の精算などの駅務処理の少なくとも一部を実行する。例えば、乗車券は、利用の度に発行される普通乗車券、および、金額チャージ処理によって利用可能な金額(SF:ストアードフェア)情報が設定されるICカードなどの媒体がある。サーバ2は、乗車券として利用される情報として、乗車券利用情報、SF情報、SF利用履歴情報などを管理し、各駅務端末からの要求に応じて処理を実行する。
【0015】
図2に示す構成例において、サーバ2は、プロセッサ21、ROM22、RAM23、記憶部24、及び通信部25を備える。
プロセッサ21は、演算処理を実行する演算素子(例えば、CPU)である。プロセッサ21は、ROM22又は記憶部24などの記憶部に記憶されているプログラムに基づいて種々の処理を行う。プロセッサ21は、ROM22又は記憶部24に格納されているプログラムを実行することにより、種々の処理機能を実現する処理部として機能する。
【0016】
ROM22は、読み出し専用の不揮発性メモリである。ROM22は、プログラム及びプログラムで用いられるデータなどを記憶する。
RAM23は、ワーキングメモリとして機能する揮発性のメモリである。RAM23は、プロセッサ21の処理中のデータなどを一時的に格納する。また、RAM23は、プロセッサ21が実行するプログラムを一時的に格納する。
【0017】
記憶部24は、書換え可能な不揮発性メモリとしての記憶装置である。例えば、記憶部24は、ソリッドステイトドライブ(SSD)、ハードディスクドライブ(HDD)などの記憶装置である。記憶部24は、メモリI/Fに記憶媒体をセットしたもの(例えば、カードスロットにメモリカードをセットしたものなど)であっても良い。
【0018】
記憶部24は、プログラム、制御データ、および、管理データなどの種々のデータを記憶する。
図1に示す例では、記憶部24は、第1の記憶領域24a、第2の記憶領域24b、および、第3の記憶領域24cを有する。第1の記憶領域24aは、プロセッサ21が出札モジュールとして機能するための出札処理用のプログラムを記憶する。第2の記憶領域24bは、プロセッサ21が改札モジュールとして機能するための改札処理用のプログラムを記憶する。第3の記憶領域24cは、乗車券媒体ごとに各種の情報を記憶する領域である。第3の記憶領域24cは、各乗車券媒体の識別情報(ID)ごとにステータスを示す情報を記憶するデータベース(DB)であるものとする。なお、IDごとのステータスを示す情報を記憶するデータベースは、別の装置に設けても良いが、その場合、プロセッサ21が外部の装置に設けたデータベースにアクセス可能な構成とする。
【0019】
通信部25は、他の装置とのデータ通信を行うためのインターフェースである。通信部25は、例えば、各駅務端末が接続されるネットワーク(LAN)に通信接続するためのネットワークインターフェースである。通信部25は、ネットワークを介して、発行機3、改札機4及び精算機5などの各駅務端末と通信する。
【0020】
図3は、実施形態に係る発行機(端末装置)3の構成例を示すブロック図である。
発行機3は、乗車券として利用される媒体(乗車券媒体)の発行又は更新(SFの金額チャージなど)を行う。発行機3は、例えば、利用者が入力した発券条件での乗車券の発券処理(駅務処理)を要求する処理要求(コマンド電文)をサーバ2へ送信し、サーバ2からの応答(応答電文)に応じた乗車券の発券処理を行う。また、発行機3は、利用者が提示する乗車券の識別情報(ID)と利用者が入力する更新条件とを指定した乗車券の更新処理(駅務処理)を要求する処理要求(コマンド電文)をサーバ2へ送信し、サーバ2からの応答(応答電文)に応じた処理を行う。
【0021】
図3に示す構成例において、発行機3は、プロセッサ31、ROM32、RAM33、不揮発性メモリ34、通信部35、操作部36、表示部37、媒体処理部38、および決済処理部39を有する。
プロセッサ31は、演算処理を実行する演算素子(例えば、CPU)である。プロセッサ31は、ROM32又は記憶部34に記憶されているプログラムなどのデータに基づいて種々の処理を行う。プロセッサ31は、ROM32又は記憶部34に格納されているプログラムを実行することにより、種々の処理機能を実現する処理部として機能する。
【0022】
ROM32は、読み出し専用の不揮発性メモリである。ROM32は、プログラム及びプログラムで用いられるデータなどを記憶する。
RAM33は、ワーキングメモリとして機能する揮発性のメモリである。RAM33は、プロセッサ31の処理中のデータなどを一時的に格納する。また、RAM33は、プロセッサ31が実行するプログラムを一時的に格納する。
【0023】
記憶部34は、書換え可能な不揮発性メモリとしての記憶装置である。例えば、記憶部34は、ソリッドステイトドライブ(SSD)、ハードディスクドライブ(HDD)、または他の記憶装置である。記憶部34は、例えば、プログラム及びプログラムで用いられるデータなどを記憶する。
【0024】
通信部35は、サーバ2とデータ通信するためのインターフェースである。通信部35は、例えば、ネットワークに接続するためのネットワークインターフェースである。通信部35は、ネットワークを介してサーバ2と通信を行う。
【0025】
操作部36は、操作部材の操作に基づいて、操作信号を生成する。操作部材は、例えば、タッチセンサ、テンキー、またはキーボードなどである。タッチセンサは、例えば、抵抗膜式タッチセンサ、または静電容量式タッチセンサ等である。即ち、タッチセンサは、ある領域内において指定(タッチ)された位置を示す情報を取得する。タッチセンサは、上記の表示部37と一体にタッチスクリーンとして構成されることにより、表示部37上のタッチされた位置を示す信号をプロセッサ31に入力する。表示部37は、プロセッサ31、または図示しないグラフィックコントローラなどの表示制御部から入力される映像信号に応じて画面を表示する。
【0026】
媒体処理部38は、乗車券媒体を発券する発券部を有する。媒体処理部38の発券部は、乗車券媒体として発券される媒体の収容部、及び、媒体に情報を記憶する記憶部を備える。例えば、媒体処理部38は、記憶部として、ICカードとしての媒体に情報を書き込むICカードリーダライタ、磁気券としての媒体に磁気を記録する磁気ヘッド、及び印刷可能な媒体に二次元コードを印刷する印刷部のうちのいずれか、または複数を備える。また、媒体処理部38は、ICカードなどの利用者が所持する乗車券媒体に対して情報の読取り、及び、書込みが可能な処理ユニットを有する。例えば、媒体処理部38の処理ユニットは、ICカードと無線通信を行うICカードリーダライタである。
【0027】
決済処理部39は、料金の決済を行うユニットである。例えば、決済処理部39は、現金を処理する現金処理部を有する。また、決済処理部39は、クレジットカードによる決済を行うための処理ユニットであっても良い。
【0028】
図4は、実施形態に係る改札機4の構成例を示すブロック図である。
改札機4は、利用者が提示する乗車券媒体に応じて当該利用者の通行を制御する装置である。改札機4は、例えば、並行に配置される一対の筐体によって通路を形成し、通路側に通行制御用のドアが設けられる。改札機4は、通路を通行する利用者が提示する乗車券媒体から識別情報(ID)を含む情報を読み取り、読み取ったID等の情報をサーバ2に送信する。改札機4は、読み取った乗車券のIDを指定した改札処理(駅務処理)を要求する処理要求(コマンド電文)をサーバ2へ送信し、サーバ2から返信される通行判定処理などの処理結果を含む応答(応答電文)に応じて利用者の通行を制御する。
【0029】
図4に示す構成例において、改札機4は、プロセッサ41、ROM42、RAM43、不揮発性メモリ44、通信部45、媒体処理部46、表示部47、及び通行制御部46を有する。プロセッサ41は、ROM42、RAM43、不揮発性メモリ44、通信部45、媒体処理部46、表示部47、及び通行制御部に通信可能な状態で接続される。
【0030】
プロセッサ41は、演算処理を実行する演算素子(例えば、CPU)である。プロセッサ41は、ROM42又は不揮発性メモリ44に記憶されているプログラムなどのデータに基づいて種々の処理を行う。プロセッサ41は、ROM42または不揮発性メモリ44に格納されているプログラムを実行することにより、種々の処理機能を実現する処理部として機能する。
【0031】
ROM42は、読み出し専用の不揮発性メモリである。ROM42は、プログラム及びプログラムで用いられるデータなどを記憶する。
RAM43は、ワーキングメモリとして機能する揮発性のメモリである。RAM43は、プロセッサ41の処理中のデータなどを一時的に格納する。また、RAM43は、プロセッサ41が実行するプログラムを一時的に格納する。
【0032】
記憶部44は、書換え可能な不揮発性のメモリである。例えば、記憶部44は、ソリッドステイトドライブ(SSD)、ハードディスクドライブ(HDD)などの記憶装置である。記憶部44は、プログラム及びプログラムで用いられるデータなどを記憶する。
通信部45は、他の電子機器と通信を行う為の回路である。通信部45は、例えば、ネットワークに接続可能に構成される。通信部45は、ネットワークを介して他の電子機器と通信を行う。例えば、通信部45は、サーバ2と通信を行う。
【0033】
媒体処理部46は、利用者が提示する乗車券媒体を処理する。媒体処理部46は、乗車券媒体に対して情報の読取り、及び、書込みが可能なユニットにより構成される。例えば、乗車券媒体は、ICカード、磁気券、或は、二次元コードが券面に印刷された媒体などが想定される。これらの乗車券媒体に対応して、媒体処理部46は、ICカードと無線通信を行うICカードリーダライタ、磁気券に対する情報の読取り及び書込みが可能な磁気券処理機構、及び、二次元コードが印刷された媒体の券面を読み取る撮像装置のうちのいずれか、または複数を備える。
【0034】
表示部47は、改札処理に関する情報を表示する。表示部47は、プロセッサ41により表示内容が制御される。例えば、通行が許可される場合、表示部47は、通行許可を示す情報を表示する。また、表示部47は、利用者が提示する乗車券媒体で利用可能な残額情報を表示するようにしても良い。
通行制御部48は、通路側に設けたドアを開閉する開閉機能により構成される。通行制御部48は、プロセッサ41からの動作指示に応じてドアを開閉させる。
【0035】
図5は、実施形態に係る精算機5の構成例を示すブロック図である。
精算機5は、乗車券として利用される媒体(以下、乗車券媒体とも称する)に対する料金精算又はSFの金額チャージなどの処理を行う。精算機5は、利用者が提示する乗車券媒体の識別情報(ID)および精算駅情報などの情報を指定した精算処理を要求する処理要求(コマンド電文)をサーバ2へ送信し、サーバ2からの精算判定処理の処理結果などを含む応答(応答電文)に応じた処理を行う。
【0036】
図5に示す構成例において、精算機5は、プロセッサ51、ROM52、RAM53、記憶部54、通信部55、操作部56、表示部57、発券部58、および決済処理部59を有する。
プロセッサ51は、演算処理を実行する演算素子(例えば、CPU)である。プロセッサ51は、ROM52、又は記憶部54に記憶されているプログラムに基づいて種々の処理を行う。プロセッサ51は、ROM52又は記憶部54に格納されているプログラムを実行することにより、種々の処理機能を実現する処理部として機能する。
【0037】
ROM52は、読み出し専用の不揮発性メモリである。ROM52は、プログラム及びプログラムで用いられるデータなどを記憶する。
RAM53は、ワーキングメモリとして機能する揮発性のメモリである。RAM53は、プロセッサ51の処理中のデータなどを一時的に格納する。また、RAM53は、プロセッサ51が実行するプログラムを一時的に格納する。
【0038】
記憶部54は、書換え可能な不揮発性メモリとしての記憶装置である。例えば、記憶部54は、ソリッドステイトドライブ(SSD)、ハードディスクドライブ(HDD)、または他の記憶装置である。記憶部54は、例えば、プログラム及びプログラムで用いられるデータなどを記憶する。
【0039】
通信部55は、サーバ2とデータ通信するためのインターフェースである。通信部55は、例えば、ネットワークに接続するためのネットワークインターフェースである。通信部55は、ネットワークを介してサーバ2と通信を行う。
【0040】
操作部56は、操作部材の操作に基づいて、操作信号を生成する。操作部材は、例えば、タッチセンサ、テンキー、またはキーボードなどである。タッチセンサは、例えば、抵抗膜式タッチセンサ、または静電容量式タッチセンサ等である。即ち、タッチセンサは、ある領域内において指定(タッチ)された位置を示す情報を取得する。タッチセンサは、表示部57と一体にタッチスクリーンとして構成されることにより、表示部57上のタッチされた位置を示す信号をプロセッサ51に入力する。表示部57は、プロセッサ51、または図示しないグラフィックコントローラなどの表示制御部から入力される映像信号に応じて画面を表示する。
【0041】
媒体処理部58は、利用者が提示する乗車券媒体を処理する。媒体処理部58は、乗車券媒体に対して情報の読取り、及び、書込みが可能なユニットにより構成される。媒体処理部58は、乗車券媒体の形態に対応して、ICカードと無線通信を行うICカードリーダライタ、磁気券に対する情報の読取り及び書込みが可能な磁気券処理機構、及び、二次元コードが印刷された媒体の券面を読み取る撮像装置のうちのいずれか、または複数を備える。また、媒体処理部58は、利用者が提示する乗車券を回収し、精算券を発券する機能を有するものであっても良い。
【0042】
決済処理部59は、料金の決済を行うユニットである。例えば、決済処理部59は、現金を処理する現金処理部を有する。また、決済処理部59は、クレジットカードによる決済を行うための処理ユニットであっても良い。
【0043】
次に、サーバ2が有する機能について説明する。
図6は、サーバ2が有する機能を説明するための図である。
図6に示すように、サーバ2は、出札処理モジュール61、改札処理モジュール62、および、データベース24cの機能を有する。出札処理モジュール61は、プロセッサ21が記憶領域24aに記憶した出札処理用のプログラムを実行することにより実現される処理機能である。例えば、出札処理モジュール61は、乗車券の発券情報の生成及び登録などの処理を含むサーバ2での発券処理(乗車券発行情報登録)、および、SF乗車券にSF残額(金額)をチャージするサーバでのチャージ処理(チャージ額登録)などの処理を行う。
【0044】
また、改札処理モジュール62は、プロセッサ21が記憶領域24bに記憶した改札処理用のプログラムを実行することにより実現される処理機能である。例えば、改札処理モジュール62は、乗車券に対する改札判定などの処理を含むサーバでの改札処理、および、乗車券に対する精算判定などの処理を含むサーバでの精算処理などの処理を行う。改札処理モジュール62では、改札処理におけるSF残額による改札判定を行うための運賃の算出と精算処理における精算額の算出とが同様なアルゴリズムで実現される。このため、本実施形態に係るサーバ2では、改札処理と精算処理とを共通の改札処理モジュールで実行する構成としている。このように、本実施形態によれば、改札処理を行うモジュールと精算処理を行うモジュールとを共通化することにより、サーバにおける効率の良い構成を実現している。
【0045】
なお、出札処理モジュール61と改札処理モジュール62とは、当該出改札システムにおいて、随時、各駅務端末からの要求に対して処理を実施してその処理結果を駅務端末に返せるサーバにあれば良い。例えば、出札処理モジュール61と改札処理モジュール62とは、それぞれが物理的に独立した装置(例えば、別々のサーバ)に設けられても良い。また、出札処理モジュール61と改札処理モジュール62とは、データベース24cを有するサーバに設けなくても良い。
【0046】
また、データベース24cは、各乗車券媒体のステータスを管理するための情報を記憶する。
図2に示す構成例において、データベース24cは、サーバ2の記憶部24に設けられる。データベース24cは、全ての有効な乗車券に関する情報を一元的に管理するため、当該出改札システム内において1つ設けられるものであれば良い。例えば、データベース24cは、出札処理モジュール或は改札処理モジュールを具備するサーバとは別のサーバに設けても良い。また、データベース24cは、記憶装置の障害などに対応するために2重化しても良い。
【0047】
図6に示す構成例において、データベース24cは、有効な乗車券(乗車券媒体)ごとにステータスを示す各種の情報を記憶する。本システムにおいて、個々の乗車券媒体は、ユニークな識別情報(ID)により識別される。データベース24cは、各乗車券媒体のIDごとにステータスを示す情報を記憶する。データベース24cは、各乗車券媒体の乗車券としての効力(有効性、権利)に関する情報(権利情報、発行情報)と各乗車券媒体の利用状況を示す利用履歴情報とを記憶する。
【0048】
図6に示す例において、データベース24cは、普通乗車券に関する情報として、券情報をID別に記憶する。券情報は、乗車券のIDごとにデータベース24cに記憶される乗車券の有効性および利用状況などを示す情報である。
図6では、ID別の券情報として、権利(効力)情報、入場情報、出場情報、精算情報などの情報を例示する。
権利情報は、乗車券による権利(効力、有効性)を示す情報であり、例えば、有効区間、有効期間などの情報である。なお、権利情報は、サーバ2の出札処理モジュールの処理によってIDに対応づけてデータベース24cに記録される。
【0049】
入場情報、出場情報、および精算情報などの情報は、各乗車券の利用履歴を示す利用履歴情報であり、入場、出場或いは精算などが行われるごとに更新される。入場情報は、当該乗車券による入場時の状況を示す情報であり、例えば、入場駅、入場日時などの情報である。出場情報は、当該乗車券による出場時の状況を示す情報であり、例えば、出場駅、出場日時などの情報である。精算情報は、当該乗車券に対する精算状況を示す情報であり、例えば、精算駅、精算日時などの情報である。なお、入場情報、出場情報、精算情報は、サーバ2の改札処理モジュールの処理によってデータベース24cに記録(更新)される情報である。
【0050】
また、
図6に示す例において、データベース24cは、SF乗車券に関する情報として、SF口座情報とSF利用情報とをID別に記憶する。SF口座情報は、SF乗車券としての効力(有効性、権利)に関する情報(権利情報)である。
図6に示す例において、SF口座情報は、残額(SF残額)及びデータアクセス情報である。SF口座情報は、SF乗車券の発券時にID別に新規登録される。SF残額は、後述の金額チャージ処理によって当該SF乗車券に対して金額がチャージされるごとに更新される。データアクセス情報は、当該SF口座情報に対するアクセス状況を示す情報である。データアクセス情報は、例えば、当該SF口座情報にアクセス中(処理中、参照中)である場合にはアクセス中(参照中)であることを示す情報とされ、アクセス終了時には解放状態であることを示す情報とされる。
【0051】
SF利用情報は、SF乗車券としての利用状況を示す情報である。
図6に示す例において、SF利用情報は、トリップ情報、入場情報(入場駅、入場情報)、出場情報(出場駅、出場日時)、精算情報(精算駅、精算日時)、利用運賃情報、データアクセス情報などである。SF利用情報は、SF乗車券として利用されるごとに更新される。データアクセス情報は、当該SF利用情報へのアクセス状況を示す情報である。データアクセス情報は、例えば、当該SF利用情報にアクセス中(処理中、参照中)である場合にアクセス中(参照中)であることを示す情報とされ、アクセス終了時には解放状態であることを示す情報とされる。
【0052】
次に、実施形態に係る出改札システムにおける出札処理について説明する。
本実施形態における出札処理とは、乗車券としての効力(権利)を生成し、生成した乗車券としての効力を示す情報をデータベース24cに登録又は更新する処理である。本実施形態では、出改札システムによる出札処理として、発行機3で利用者が指定する条件に応じた乗車券(普通乗車券、SF乗車券など)を発券する処理(発券処理)と発行機3で利用者が提示する乗車券媒体(SF乗車券、定期券など)に対して利用者が指示する条件に応じて更新処理を行う場合について説明する。なお、出札処理としての更新処理には、利用者が提示するSF乗車券に金額(SF残額)をチャージする処理(金額チャージ処理)、或は、既存の定期券を更新する処理(継続定期券の発行処理など)などの処理を想定される。ただし、以下の説明では、主に、更新処理が金額チャージ処理である場合を想定して説明するものとする。
【0053】
新規に乗車券を発券する処理を行う場合、利用者は、発行機3で発券する乗車券の条件を指定する。サーバ2は、発行機3から利用者が指定する条件を受信し、受信した条件に基づく乗車券の発券の可否を判断する。サーバ2は、乗車券の発券を可と判断した場合、発券する乗車券の識別情報(ID)を含む権利情報を生成し、生成した権利情報に基づく乗車券の発券情報(発券指示)を発行機3へ送信する。また、サーバ2は、発行機3で乗車券が正常に発券されると、生成した乗車券の権利情報をIDに対応づけてデータベース24cに登録する。これにより、サーバ2は、発行機3が発券する乗車券に関する情報としての乗車券の権利情報を管理できる。
【0054】
また、既存の乗車券媒体(例えば、ICカード又は携帯端末)としてのSF乗車券に金額をチャージする場合、利用者は、発行機3でSF乗車券を提示してチャージ金額などの更新条件を指定する。発行機3は、利用者が提示するSF乗車券のIDを読取り、読み取ったIDと利用者が指定した条件とをサーバ2へ送信する。サーバ2は、発行機3からSF乗車券のIDと利用者が指定するチャージ金額などの条件とを受信する。サーバ2は、指定されたIDの乗車券に指定された金額がチャージ可能かを判断する。サーバ2は、指定された金額のチャージが可能であると判断した場合、発行機3に対して金額チャージを許可する。サーバ2は、許可したチャージ金額の徴収が正常終了すると、データベース24cにおける当該IDに対応する乗車券(SF乗車券)の権利情報(SF口座情報)の残額(SF残額)などの情報をチャージ金額などに応じて更新する。
【0055】
図7は、発行機3における出札処理(発券処理及び更新処理)の流れを説明するためのフローチャートである。
発行機3のプロセッサ31は、待機状態において、表示部37に操作案内を表示し、操作部36による利用者からの指示入力を受付ける(ST11)。例えば、新規に乗車券を購入する利用者は、操作部36により乗車券の発券を指示する。また、SF乗車券への金額のチャージ又は定期券の更新などの既存の乗車券媒体に対する処理(更新処理)を行う場合、利用者は、既存の乗車券媒体を媒体処理部38に挿入(又は提示)するとともに、処理内容(チャージ金額又は定期券の更新)を操作部36により指示する。
【0056】
新規の乗車券の発券指示を受付けた場合(ST12、YES)、プロセッサ31は、利用者が指示した条件と共に発券処理を要求するコマンドを含む電文(以下、コマンド電文と称する)を生成する(ST13)。すなわち、新規の乗車券の発券が指示された場合、プロセッサ31は、サーバ2の出札処理モジュール61によって新規の乗車券の発券処理を行うことを要求するコマンド電文を生成する。例えば、プロセッサ31は、操作部36により利用者が指示した発行条件(例えば、有効区間、期間など)をコマンド電文に付加する。なお、新規に発券する乗車券の識別情報(ID)は、サーバ2で発行しても良いし、発行機3で発行しても良い。発行機3で乗車券のIDを発行する形態とする場合、プロセッサ31は、新規に発券する乗車券の識別情報(ID)を発行し、発行したIDをコマンド電文に付与する。
【0057】
また、既存の乗車券媒体に対する更新処理を受付けた場合(ST12、NO)、プロセッサ31は、更新処理の対象となる乗車券媒体の識別情報(ID)を読取る(ST14)。乗車券媒体のIDを読取ると、プロセッサ31は、送信処理部として、読み取ったIDを指定した更新処理を要求するコマンドを含む電文(コマンド電文)を生成し、生成したコマンド電文をサーバ2へ送信する(ST15)。例えば、SF乗車券としてのICカード又は携帯端末などの乗車券媒体に対する金額のチャージが指示された場合、プロセッサ31は、サーバ2の出札処理モジュールによって指定された金額のチャージ処理を行うことを要求するコマンド電文を生成する。この場合、プロセッサ31は、媒体処理部38により金額チャージの対象となる乗車券媒体からIDと操作部36により利用者が指示した処理条件(例えば、チャージ金額など)を示す情報をコマンド電文に付加する。
【0058】
コマンド電文をサーバ2へ送信した後、プロセッサ31は、サーバ2からの応答を待つ。コマンド電文を受信したサーバ2は、受信したコマンド電文に応じた処理を実行し、その処理結果を含む応答電文(レスポンス)をコマンド電文の送信元である発行機3へ送信する。
サーバ2からコマンド電文に対する応答電文を受信すると(ST16)、発行機3のプロセッサ31は、受信した応答電文が処理対象のデータがアクセス中であったことを示す応答電文であるかをチェックする(ST17)。
【0059】
処理対象のデータがアクセス中であることを示す応答電文を受信したと判断した場合(ST17、NO)、プロセッサ31は、報知部として処理対象のデータがアクセス中であることを報知し(ST18)、利用者から指示された処理を終了する。例えば、コマンド電文で指定した乗車券媒体(ID)のデータがアクセス中である旨の応答電文を受信した場合、プロセッサ31は、処理対象の乗車券の情報が他の処理でアクセス中であるためコマンド電文で要求した処理が実行不可であると判断する。この場合、アクセス中であることを報知する手段として、プロセッサ31は、データアクセス中のため処理が実行である旨を表示部37に表示して処理が不可な状態である旨を利用者に報知する。
【0060】
なお、アクセス中であることを報知する手段としては、プロセッサ31は、データアクセス中のため、少し時間を空けて再度処理を実行して下さいといった案内を表示部37に表示するようにしても良い。また、発行機3では利用者を待機させることが可能であるため、プロセッサ31は、少しお待ちくださいという旨の案内を表示して所定時間待機した後に再度上記コマンド電文を送信するようにしても良い。
【0061】
受信した応答電文がデータアクセス中を示す応答電文でなければ(ST17、NO)、プロセッサ31は、駅務処理部として機能し、応答電文に含まれるサーバ2での処理結果に応じた処理を実行する(ST19)。例えば、サーバ2から発券情報(乗車券の有効区間、有効期間など)を含む応答電文を受信した場合、プロセッサ31は、当該発券情報に基づいて媒体処理部38により新規に乗車券を発券する処理を実行する。新規の乗車券が正常に発券された場合、プロセッサ31は、正常に発券が完了したことをサーバ2へ通知し、一連の処理を終了する。また、サーバ2から金額チャージ処理の許可を示す情報を含む応答電文を受信した場合、プロセッサ31は、決済処理部39により指定の金額を利用者から収受する処理を行い、当該金額が正常に収受できた場合には金額の収受完了をサーバ2へ通知し、一連の処理を終了する。
【0062】
次に、上記のような発行機からのコマンド電文に対するサーバ2の動作について説明する。
図8は、本実施形態に係るサーバ2による駅務端末からのコマンド電文に応じた処理の一例を説明するためのフローチャートである。なお、
図8では、駅務端末としての発行機3からのコマンド電文に応じたサーバ2による処理の例を示している。
出改札システム1において、サーバ2は、常時、各駅務端末(発行機3、改札機4、精算機5)からのコマンド電文の受信待ちの状態となっている。駅務端末からのコマンド電文を受信すると(ST21)、サーバ2のプロセッサ21は、受信したコマンド電文で指示された処理を実行する。駅務端末からコマンド電文を受信すると、サーバ2のプロセッサ21は、受信したコマンド電文で要求された処理が出札処理モジュール61で処理する出札処理であるか改札処理モジュール62で処理する改札処理であるかを判断する(ST22)。例えば、発行機3からの発券処理又は更新処理を要求するコマンド電文は、出札処理モジュール61での処理を要求するコマンドが含まれる。
【0063】
出札処理モジュール61での処理(出札処理)を要求するコマンド電文を受信した場合(ST22、YES)、プロセッサ21は、記憶部24の第1の記憶領域24aに記憶する出札処理用のプログラムを起動することにより出札処理モジュール61を起動する(ST23)。出札処理モジュール61を起動すると、プロセッサ21は、コマンド電文で要求される処理が発券処理か更新処理かを判断する(ST24)。
【0064】
受信したコマンド電文により発券処理が要求されたと判断した場合(ST24、発券)、プロセッサ21は、コマンド電文に含まれる発行条件を示す情報などを確認し、発券可能な乗車券の発券情報を生成する(ST25)。例えば、発行機3からのコマンド電文で発券する乗車券のIDが指定されている場合、プロセッサ21は、当該コマンド電文で指定される発行条件に応じて、指定されたIDの乗車券の発券情報を生成する。発行機3からのコマンド電文でIDが指定されていない場合、プロセッサ21は、発券する乗車券のIDを発行し、発行したIDの乗車券の発券情報をコマンド電文で指定される発行条件に応じて生成する。
【0065】
乗車券の発券情報を生成すると、プロセッサ21は、生成した乗車券の発券情報(処理結果)を含む応答電文を作成し、作成した応答電文をコマンド電文の送信元である発行機(駅務端末)3へ送信する(ST26)。なお、指定された発行条件での乗車券の発券が不可であると判定した場合、プロセッサ21は、発券不可を示すメッセージ(処理結果)を含む応答電文を作成し、コマンド電文の送信元である発行機(駅務端末)3へ作成した応答電文を送信する。
【0066】
また、コマンド電文により更新処理が要求されたと判断した場合(ST24、更新)、プロセッサ21は、当該コマンド電文で指定されるIDの乗車券に対応するアクセス対象のデータベース24c上の情報を特定する(ST28)。例えば、受信したコマンド電文が金額(SF残額)のチャージを要求するものであれば、プロセッサ21は、コマンド電文で指定されたIDを特定し、データベース24cに記憶されている特定したIDに対応するSF口座情報を特定する。
【0067】
コマンド電文により指定されたIDに対応する情報(アクセス対象の情報)を特定すると、プロセッサ21は、確認部として機能し、コマンド電文で指定されたアクセス対象の情報がアクセス可能な状態であるかをチェックする(ST29)。例えば、
図6に示すように各IDのSF口座情報にデータアクセス情報がある場合、プロセッサ21は、指定されたIDのSF口座情報のデータアクセス情報が「アクセス中(アクセスが不可な状態)」であるか「解放(アクセスが可能な状態)」であるかを確認する。ここで、データアクセス情報がフラグ(アクセス中フラグ)で指定されるものとすると、当該アクセス中フラグは、「アクセス中」である場合は「1(オン)」となり、「解放」である場合は「0(オフ)」となるようにして良い。この場合、プロセッサ21は、アクセス対象の情報に対するデータアクセス情報としてのアクセス中フラグが「1」であるか「0」であるかをチェックするようにすれば良い。
【0068】
指定されたIDの情報(アクセス対象の情報)がアクセス可能な状態であると判断した場合、つまり、アクセス対象の情報がアクセス中でない場合(ST29、YES)、プロセッサ21は、当該アクセス対象の情報に対応するデータアクセス情報をアクセス中であることを示す情報に更新する(ST30)。例えば、コマンド電文を受けた時点で当該コマンド電文において指定されたIDの情報に対するアクセス中フラグが「0」であれば、プロセッサ21は、当該アクセス中フラグを「1」に書き換える(アクセス中フラグをオンにする)。
【0069】
アクセス対象の情報に対するデータアクセス情報をアクセス中に更新すると、プロセッサ21は、コマンド電文に含まれる利用者が指定した条件(要求された処理内容)に応じた更新処理を実行した場合の情報(更新情報)を生成する(ST31)。更新情報を生成すると、プロセッサ21は、第2の応答処理部として、生成した更新情報(処理結果)を含む応答電文を作成し、作成した応答電文をコマンド電文の送信元である発行機(駅務端末)3へ送信する(ST32)。
【0070】
例えば、指定されたIDのSF乗車券に対して金額(SF残額)をチャージするコマンド電文を受信した場合、プロセッサ21は、当該コマンド電文で指定されたアクセス対象の情報として指定されたIDに対応するSF口座情報を特定する。データベース24cにおける当該IDに対応するSF口座情報を特定すると、プロセッサ21は、当該SF口座情報がアクセス中ではないか(アクセス可能か)をチェックする。アクセス可能であれば、プロセッサ21は、当該SF口座情報のデータアクセス情報をアクセス中に更新し、コマンド電文で指定された金額のチャージが可能かを確認し、指定の金額をチャージした後の当該SF口座情報におけるSF残額を含む更新情報を生成する。
【0071】
コマンド電文に対する処理結果を含む応答電文を送信した後、プロセッサ21は、発行機(駅務端末)3での処理が正常に終了したかを確認する(ST34)。例えば、応答電文を送信した後、プロセッサ21は、応答電文に対応する処理の正常終了を示す通知を受付ける。発行機3から処理の正常終了を示す通知を受信した場合(ST34、YES)、プロセッサ21は、処理結果に応じてデータベース24cが記憶する情報を更新する(ST35)。
例えば、発券を要求するコマンド電文に対して発券情報を含む応答電文を送信した場合、プロセッサ21は、発券処理が正常終了したことを示す通知の受信待ちとなる。発券処理が正常終了したことを示す通知を受信した場合、プロセッサ21は、発券情報に基づく乗車券の効力情報をIDに対応づけてデータベース24cに登録する。
【0072】
また、金額チャージなどの更新処理を要求するコマンド電文に対して更新情報を含む応答電文を送信した場合、プロセッサ21は、当該IDの乗車券に対する発行機3での更新処理が正常終了したことを示す通知の受信待ちとなる。更新処理が正常終了したことを示す通知を受信した場合、プロセッサ21は、正常終了した更新処理による更新情報に基づいてデータベース24cにおける当該IDに対応する情報の更新を行う。
これらの一連の処理が終了すると、プロセッサ21は、当該アクセス対象の情報に対するデータアクセス情報を解放(アクセス可能状態)であることを示す情報に更新する(ST36)。例えば、プロセッサ21は、アクセス対象とした情報に対応するデータアクセス情報を解放(例えば、アクセス中フラグをオフ(0))に更新する。
【0073】
また、コマンド電文で指定されたIDの情報がアクセス不可な状態であると判断した場合、つまり、指定されたIDの情報がアクセス中であると判断した場合(ST29、NO)、プロセッサ21は、第1の応答処理部として、処理対象の乗車券の情報がアクセス中である旨を示す応答電文を作成し、作成した応答電文をコマンド電文の送信元である発行機(駅務端末)3へ送信する(ST33)。例えば、コマンド電文を受けた時点で当該コマンド電文において指定されたIDの情報がアクセス(参照)中であれば、プロセッサ21は、指定されたIDの情報がアクセス中であるため要求された処理が不可である旨を示す応答電文を作成する。このような応答電文を送信した場合、プロセッサ21は、一連の処理を終了する。なお、アクセス中であることを示す応答電文を送信した場合、プロセッサ21は、アクセス対象とした情報に対応するデータアクセス情報に対する更新を行わず、一連の処理を終了する。
【0074】
以上の処理によれば、本実施形態に係る出改札システムでは、サーバが駅務端末としての発行機から要求される処理においてアクセス対象とする情報がアクセス可能な状態であるか否かをチェックし、アクセス可能な状態である場合に要求された処理を実行する。また、サーバは、特定の情報をアクセス対象として処理を行う場合、当該アクセス対象の情報に対応づけてアクセス中であることを示す情報をデータベースに付加する。これにより、サーバは、同時または連続的に要求された複数の処理によって1つの情報に同時にアクセスすることを防止でき、誤った情報による処理を防止できる。
【0075】
次に、出改札システム1における改札処理および精算処理について説明する。
まず、出改札システム1の改札処理における改札機4の動作について説明する。
図9は、改札機4における改札処理の流れを説明するためのフローチャートである。
改札機4のプロセッサ41は、待機状態において、表示部47に通行案内を表示し、媒体処理部46による利用者が提示する乗車券媒体を受付ける。プロセッサ41は、待機状態において、利用者が提示する乗車券媒体を検知すると(ST41)、媒体処理部46により利用者が提示する乗車券媒体からIDを読取る処理を実行する(ST42)。媒体処理部46がIDを読取れなかった場合、或は、有効な乗車券を提示せずに通行する利用者を検知した場合(ST43、NO)、プロセッサ41は、通行不可対応の処理として、通行制御部48によりドアを閉鎖して当該利用者の通行を阻止する(ST49)。
【0076】
媒体処理部46により利用者が提示する乗車券媒体からIDが読取れた場合(ST43、YES)、プロセッサ41は、当該IDに対応する情報に基づく改札処理(駅務処理)をサーバ2へ要求するコマンド電文(処理要求)を生成する(ST44)。例えば、プロセッサ41は、コマンド電文において、処理モジュールとして改札処理モジュールを指定するとともに、乗車券媒体のID、利用モード(入場/出場/精算)、改札場所(利用駅)、利用日時などを付与する。
【0077】
例えば、入場口側で乗車券媒体が提示(検知)された場合、プロセッサ41は、利用モードを入場モードとする。利用モードが入場モードである場合、プロセッサ41は、改札処理モジュールを指定するとともに、乗車券媒体のID、入場モード、入場場所(入場駅)、および、入場日時を示す情報を付加したコマンド電文を作成する。また、出口側で乗車券媒体が提示(検知)された場合、プロセッサ41は、利用モードを出場モードとする。利用モードが出場モードである場合、プロセッサ41は、改札処理モジュールを指定するとともに、乗車券媒体のID、出場モード、出場場所(出場駅)、および、出場日時を示す情報を付加したコマンド電文を作成する。
【0078】
上記のような改札処理を要求するコマンド電文を生成すると、プロセッサ41は、送信処理部として、生成したコマンド電文を通信部35によりサーバ2へ送信する(ST45)。改札処理を要求するコマンド電文を送信した後、プロセッサ41は、サーバ2からの応答を待つ。このようなコマンド電文を受信したサーバ2は、受信したコマンド電文に応じて改札の可否判定などの処理を実行し、その処理結果を含む応答電文(レスポンス)をコマンド電文の送信元である改札機4へ送信する。なお、ST44−45の処理が送信処理部の一例である。
【0079】
サーバ2からコマンド電文に対する応答電文を受信すると(ST46)、プロセッサ41は、応答電文に基づいて指定したIDに対応する乗車券の情報へのアクセスができたかをチェックする(ST47)。例えば、コマンド電文で指定したIDの情報がアクセス中であるためアクセス不可であることを示す情報を含む応答電文をサーバ2から受信した場合、プロセッサ41は、利用者が提示した乗車券媒体のIDに対応する情報による改札判定ができない状態であると判断する。
【0080】
コマンド電文で指定したIDに対応する情報にアクセスできなかったと判断した場合(ST47、NO)、プロセッサ41は、報知部として、指定したID(読み取った乗車券媒体のID)に対応する情報がアクセス中であることを報知し(ST48)、当該利用者の通行を阻止する処理(通行不可対応の処理)を行う(ST49)。例えば、アクセス中であることを報知する手段として、プロセッサ41は、指定した乗車券媒体(ID)の情報が他の処理でアクセス中であるために改札処理が実行不可である旨を表示部47に表示する。また、アクセス中であることを報知する手段として、プロセッサ41は、データアクセス中のため、少し時間を空けて再度処理を実行して下さいという案内、又は、再度乗車券を提示して下さいという案内を表示部47に表示するようにしても良い。
【0081】
また、コマンド電文で指定した情報へアクセスできた場合、つまり、改札(入場又は出場)判定の結果を含む応答電文を受信した場合(ST47、NO)、プロセッサ41は、応答電文に含まれる改札判定の結果を確認する(ST50)。通行を許可する旨の処理結果を含む応答電文をサーバ2から受信した場合、プロセッサ41は、当該乗車券媒体を提示した利用者の通行を許可するものと判断する。
通行を許可すると判断した場合(ST50、YES)、プロセッサ41は、表示部47に通行可の案内を表示してドアを開放するなどの制御によって利用者を通行させる処理(通行許可対応の処理)を行う(ST51)。
【0082】
また、通行を不可とする旨の処理結果を含む応答電文をサーバ2から受信した場合、プロセッサ41は、当該乗車券媒体を提示した利用者の通行を不可(阻止)するものと判断する。通行を不可とすると判断した場合(ST50、NO)、プロセッサ41は、表示部47に通行不可の案内を表示し、ドアを閉鎖することによって当該利用者の通行を阻止する処理(通行不可対応の処理)を行う(ST49)。
また、通行許可又は通行不可対応の処理をした後、プロセッサ41は、当該利用者の通行又は退出を検知する。利用者の通行又は退出を検知した場合、プロセッサ41は、当該利用者に対する一連の改札処理が終了したものと判断し、改札処理の終了をサーバ2へ通知する。なお、ST49−50の処理が駅務処理部の一例に相当する。
【0083】
次に、出改札システム1の改札処理における精算機5の動作について説明する。
図10は、精算機5における精算処理の流れを説明するためのフローチャートである。
精算機5のプロセッサ51は、待機状態において、表示部57に操作案内を表示し、操作部56による利用者からの精算の指示入力を受付ける(ST51)。例えば、既存の乗車券媒体に対する精算を行う利用者は、操作部56により精算開始を指示するとともに、精算の対象とする乗車券媒体を媒体処理部58に挿入(又は提示)する。これにより、プロセッサ51は、操作部56に入力される精算開始の指示に応じて精算処理を受付け、利用者が提示する乗車券媒体に対する精算処理を実行する。
【0084】
また、乗車券媒体に対する精算処理を受付けると、プロセッサ51は、精算処理の対象となる乗車券媒体の識別情報(ID)を媒体処理部58により読取る処理を行う(ST52)。乗車券媒体からIDが読み取れた場合(ST53、YES)、プロセッサ51は、当該IDの乗車券に対する精算処理を要求するコマンド電文を生成する(ST54)。例えば、プロセッサ51は、コマンド電文において精算処理を行うための処理モジュールとして改札処理モジュールを指定し、乗車券媒体のID、精算モード、精算場所(精算駅)、精算日時などの情報を付与する。
【0085】
上記のような精算処理を要求するコマンド電文を生成すると、プロセッサ51は、生成したコマンド電文を通信部55によりサーバ2へ送信する(ST55)。精算処理を要求するコマンド電文を送信した後、プロセッサ51は、サーバ2からの応答を待つ。このようなコマンド電文を受信したサーバ2は、受信したコマンド電文に応じて精算判定(精算金額の算出等)などの処理を実行し、その処理結果を含む応答電文(レスポンス)をコマンド電文の送信元である精算機5へ送信する。なお、ST54−55の処理が送信処理部の一例に相当する。
【0086】
サーバ2からコマンド電文に対する応答電文を受信すると(ST56)、プロセッサ51は、応答電文に基づいて指定したIDに対する乗車券の情報にアクセスができたかをチェックする(ST57)。例えば、コマンド電文で指定したIDに対応する乗車券の情報がアクセス中である旨の応答電文をサーバ2から受信した場合、プロセッサ51は、利用者が提示した乗車券媒体のIDに対応する情報へのアクセスが不可の状態であるため精算処理ができない状態であると判断する。
【0087】
コマンド電文で指定したIDに対応する情報にアクセスができなかったと判断した場合(ST57、NO)、プロセッサ51は、報知部として、指定したID(精算対象の乗車券媒体のID)に対応する情報がアクセス中であることを報知し(ST58)、利用者が指示した精算処理を中止する処理(精算不可対応の処理)を行う(ST59)。例えば、アクセス中であることを報知する手段として、プロセッサ51は、指定した乗車券媒体(ID)の情報が他の処理でアクセス中であるために精算処理が実行不可である旨を表示部47に表示する。また、アクセス中であることを報知する手段として、プロセッサ51は、データアクセス中のため、少し時間を空けて再度処理を実行して下さいという案内を表示部47に表示するようにしても良い。また、精算機5では利用者を待機させることが可能であるため、プロセッサ51は、もう少しお待ちくださいという旨の案内を表示して所定時間待機した後に再度上記コマンド電文を再送信するようにしても良い。
【0088】
また、コマンド電文で指定したIDに対応する乗車券の情報へアクセスできた場合、つまり、精算判定の結果を含む応答電文を受信した場合(ST57、NO)、プロセッサ51は、応答電文に含まれる精算判定の結果を確認する(ST60)。精算を許可する旨の処理結果を含む応答電文をサーバ2から受信した場合(ST60、YES)、プロセッサ51は、精算額の収受及び精算券の発券などの処理(精算許可対応の処理)を実行する(ST61)。例えば、プロセッサ51は、表示部57に精算額を表示し、精算額を決済処理部59により収受する。決済処理部59により精算額が収受できた場合、プロセッサ51は、精算券の発券、又は、精算対象のSF乗車券に精算額分の金額チャージを行う。精算処理が正常に行えた場合、プロセッサ51は、精算が正常に終了したことを示す通知をサーバ2へ通知し、一連の精算処理を終了する。
【0089】
また、精算が不可である旨の処理結果を含む応答電文をサーバ2から受信した場合(ST60、NO)、プロセッサ51は、表示部57に精算不可の案内を表示する等の処理(精算不可対応の処理)を行い(ST61)、一連の精算処理を終了する。例えば、提示された乗車券に対して精算が不要である旨の応答電文を受信した場合、プロセッサ51は、精算不要である旨の案内を表示しても良い。また、係員対応が必要な乗車券である場合、プロセッサ51は、係員対応を促す案内を表示しても良い。なお、ST59−61の処理が駅務処理部の一例に相当する。
【0090】
次に、改札機4からの改札処理を要求するコマンド電文、又は、精算機5からの精算処理を要求するコマンド電文に対するサーバ2の動作について説明する。
図11は、本実施形態に係るサーバ2による駅務端末からのコマンド電文に応じた処理の例を説明するためのフローチャートである。
図11では、
図8に示す処理において受信したコマンド電文が出札処理でない場合(改札機4又は精算機5からのコマンド電文である場合)におけるサーバ2の処理例を示している。
【0091】
すなわち、
図8に示す処理において受信したコマンド電文が改札処理モジュール62を指定するものである場合(ST22、NO)、サーバ2のプロセッサ21は、記憶部24の第2の記憶領域24bに記憶する改札処理用のプログラムを起動することによりサーバ2の改札処理モジュール62を起動する(ST71)。
改札処理モジュール62を起動すると、プロセッサ21は、受信したコマンド電文において指定されたIDに対応する情報(アクセス対象の情報)を特定する(ST72)。コマンド電文で指定されたアクセス対象の情報を特定すると、プロセッサ21は、確認部として、コマンド電文で指定されたアクセス対象の情報がアクセス可能な状態であるかをチェックする(ST73)。
【0092】
例えば、
図6に示すように各IDのSF利用情報にデータアクセス情報がある場合、プロセッサ21は、指定されたIDのSF利用情報のデータアクセス情報が「アクセス中(アクセス不可な状態)」であるか「解放(アクセス可能な状態)」であるかを確認する。ここで、データアクセス情報を上記アクセス中フラグとすれば、アクセス中フラグは、クセス対象の情報が「アクセス中」である場合には「1(オン)」となり、アクセス対象の情報が「解放」である場合はアクセス中フラグを「0(オフ)」となる。この場合、プロセッサ21は、アクセス対象の情報に対するデータアクセス情報としてのアクセス中フラグが「0」であるか「1」であるかをチェックする。
【0093】
コマンド電文で指定されたIDの情報がアクセス不可な状態であると判断した場合、つまり、指定されたIDの情報がアクセス中であると判断した場合(ST73、NO)、プロセッサ21は、第1の応答送信部として、指定されたIDに対応する情報がアクセス中である旨を示す応答電文を作成し、作成した応答電文をコマンド電文の送信元である改札機4又は精算機5へ送信する(ST74)。例えば、コマンド電文を受けた時点で当該コマンド電文において指定されたIDの情報がアクセス(参照)中であれば、プロセッサ21は、指定されたIDの情報がアクセス中であるため要求された処理が不可である旨を示す応答電文を作成する。このような応答電文を送信した場合、プロセッサ21は、一連の処理を終了する。なお、アクセス中であることを示す応答電文を送信した場合、プロセッサ21は、アクセス対象とした情報に対応するデータアクセス情報(アクセス中フラグ)に対する更新を行わず、一連の処理を終了する。
【0094】
また、アクセス対象の情報がアクセス可能な状態であると判断した場合、つまり、アクセス対象の情報がアクセス中でない場合(ST73、YES)、プロセッサ21は、当該アクセス対象の情報に対するデータアクセス情報をアクセス中であることを示す情報に更新する(ST75)。例えば、コマンド電文を受けた時点で当該コマンド電文において指定されたIDの情報に対するアクセス中フラグが「0」であれば、プロセッサ21は、当該アクセス中フラグを「1」に書き換えてから後述の処理を実行する。
【0095】
アクセス対象の情報に対応するデータアクセス情報をアクセス中に更新すると、プロセッサ21は、コマンド電文で指定された処理を実行する。すなわち、プロセッサ21は、コマンド電文で要求される処理(利用モード)が改札処理(入場モード又は出場モード)か精算処理(精算モード)かを判断する(ST76)。例えば、上述した
図9又は
図10に示す処理例では、改札機4からの改札処理を要求するコマンド電文は利用モードとして入場モード又は出場モードが指定され、精算機5からの精算処理を要求するコマンド電文は利用モードとして精算モードが指定される。
【0096】
受信したコマンド電文が指定する利用モードが入場モード又は出場モードである場合(ST76、改札)、プロセッサ21は、当該コマンド電文で指定されたアクセス対象の情報に基づいてコマンド電文で指定された利用駅及び利用時間での通行(入場又は出場)が可能であるかを判定する(ST77)。
例えば、コマンド電文で指定されたIDの乗車券がSF乗車券であれば、プロセッサ21は、利用場所(入場駅、出場駅)に基づいて算出される料金が当該IDのSF残額で採算可能か否かにより通行の可否を判断する。また、利用モードが入場モードであれば、プロセッサ21は、所定の料金(例えば、初乗り料金、又は入場料金)がSF残額から収受可能か否かにより通行(入場)の可否を判断する。また、利用モードが出場モードであれば、プロセッサ21は、当該IDに対応する情報から特定される入場駅からコマンド電文で指定される利用駅(出場駅)までの料金(運賃、精算額)がSF残額から収受可能か否かにより通行(出場)の可否を判断する。
【0097】
また、コマンド電文で指定されたIDの乗車券が普通乗車券又は定期券であれば、プロセッサ21は、コマンド電文で指定される利用駅及び利用時間が有効区間内かつ有効期間内であるか否かにより通行の可否を判定する。また、コマンド電文で指定されたIDの乗車券がSF乗車券と定期券(或は、普通乗車券や回数券)との機能を合せ持つ場合、プロセッサ21は、定期券としての有効性情報(有効区間、有効期間等)とSF乗車券としてのSF残額との組み合わせにより通行の可否を判定する。
受信したコマンド電文に応じて通行の可否を判定すると、プロセッサ21は、通行の可否判定の結果(処理結果)を含む応答電文を作成し、コマンド電文の送信元である改札機(駅務端末)4へ作成した応答電文を送信する(ST78)。なお、ST77−78の処理が第2の応答送信部の一例に相当する。
【0098】
受信したコマンド電文が指定する利用モードが精算モードである場合(ST76、精算)、プロセッサ21は、当該コマンド電文で指定されたアクセス対象の情報に基づいてコマンド電文で指定された利用駅(精算駅)での精算判定を行う(ST79)。例えば、プロセッサ21は、当該IDに対応する乗車券の情報から特定される入場駅からコマンド電文で指定される利用駅(精算駅)までの料金(運賃、精算額)を計算する。
【0099】
このような改札処理モジュールによる精算モードでの精算判定において、入場駅から精算駅までの精算額を算出するアルゴリズムには、上述した出場モードでの通行判定における運賃の算出と同様なアルゴリズムを適用できる。このため、本実施形態に係る出改札システムでは、改札処理と精算処理とを改札処理モジュール62で行うように構成(統合)する。これにより、サーバ2の構成を効率良くすることができる。
【0100】
コマンド電文で要求された精算処理に対する精算判定を行うと、プロセッサ21は、精算額などの精算判定の結果(処理結果)を含む応答電文を作成し、当該コマンド電文の送信元である精算機(駅務端末)5へ作成した応答電文を送信する(ST80)。なお、ST79−80の処理が第2の応答送信部の一例に相当する。
【0101】
改札処理又は精算処理を要求するコマンド電文に対する処理結果を含む応答電文を送信した後、プロセッサ21は、改札機4又は精算機5での処理が正常に終了したかを確認する(ST81)。例えば、プロセッサ21は、応答電文を送信した駅務機器からの処理の正常終了を示す通知に応じて一連の改札処理又は精算処理が正常に終了したかを確認する。通行判定の結果を含む応答電文を送信した場合、プロセッサ21は、改札処理が正常終了したことを示す改札機4から通知により改札処理が正常終了したことを確認する。また、精算判定の結果を含む応答電文を送信した場合、プロセッサ21は、精算機5から精算処理が正常終了したことを示す精算機5からの通知により、精算処理が正常終了したことを確認する。
【0102】
改札処理又は精算処理が正常終了したことが確認できた場合(ST81、YES)、プロセッサ21は、正常終了した処理内容に応じてデータベース24cにおける当該IDに対応する情報を更新する(ST82)。例えば、改札処理の正常終了が確認できた場合、プロセッサ21は、正常終了した改札処理の内容に応じて入出場状態を示す情報(入出場フラグ、入場駅及び入場日時、出場駅及び出場日時等)などの情報を当該IDに対応づけてデータベース24cに記録する。また、精算処理の正常終了が確認できた場合、プロセッサ21は、正常終了した精算処理の内容に応じた情報に基づいてデータベース24cにおける当該IDに対応する情報(例えば、当該IDに対応づけた精算内容、当該IDに対応するSF口座情報のSF残額)を更新する。
【0103】
データベース24cにおける当該IDに対応する情報を更新が完了すると、プロセッサ21は、当該情報に対するデータアクセス情報を解放(アクセス中フラグを「0(オフ)」)に更新し(ST83)、一連の処理を有する。例えば、プロセッサ21は、コマンド電文で指定したIDの情報に対応するデータアクセス情報としてのアクセス中フラグを「0(オフ)」にし、一連の改札処理又は精算処理を終了する。
【0104】
以上の処理によれば、本実施形態に係る出改札システムでは、サーバの改札処理モジュールによって、改札機4が検知した乗車券媒体に基づく通行判定及び精算機5で受付けた精算対象の乗車券媒体に応じた精算判定の処理を行い、通行判定及び精算判定の結果に応じた処理内容によってデータベースが記憶する情報を更新する。すなわち、アカウント型AFCシステムにおけるサーバは、改札処理モジュールによって改札機から要求される改札処理及び精算機から要求される精算処理の少なくとも一部を実行する。
【0105】
これにより、本実施形態に係る出改札システムは、サーバにおいて、改札処理用の処理モジュールと精算処理用の処理モジュールとをそれぞれ別々に用意する必要がなく、構成上の効率が良い。また、改札処理における料金計算と精算処理における料金算出とを実現するためのアルゴリズムが改札処理モジュールにおいて共通化でき、運賃などの料金改定やソフトウエアの更新などが発生した場合には改札処理モジュールを更新すれば良いため、効率の良いシステム運用が実現できる。
【0106】
以上の処理によれば、本実施形態に係る出改札システムでは、サーバが駅務端末としての改札機又は精算機から要求される改札処理又は精算処理においてアクセス対象となる情報がアクセス可能な状態であるか否かをチェックする。サーバは、駅務端末から要求された処理においてアクセス対象となる情報がアクセス可能な状態である場合には要求された処理を実行し、アクセス不可な状態である場合には要求された処理を行わずにデータが他の処理によってアクセス中である旨を処理の要求元へ通知する。これにより、本実施形態に係る出改札システムのサーバは、同時または連続的に要求された複数の処理によってデータベースが記憶する1つの情報に同時にアクセスすることを防止でき、誤った情報による処理が行われることを防止できる。
【0107】
(変形例)
以下、上述した実施形態に係る出改札システムの変形例について説明する。
本実施形態の変形例に係る出改札システムでは、駅務端末がサーバ2へ送信するコマンド電文において処理モジュールを指定するだけでなく、サーバ2が実行する処理において参照すべきデータも指定するものである。駅務端末からのコマンド電文で処理モジュールと共に、データベースにおける参照すべきデータを指定することにより、サーバ2での処理がさらに高速化できる。
【0108】
改札機における入場処理では、有効区間、有効期間、SF残額などの情報をデータベース24cから参照する必要がある。このため、改札機4は、入場処理を要求するコマンド電文(利用モードが入場モードのコマンド電文)において、有効区間、有効期間、SF残額を参照すべきデータとして指定する。これにより、サーバ2は、入場モードでの改札(通行)判定において、データベース24cにおける参照すべきデータがアクセス可能な状態であるかを迅速に判定でき、その結果として入場処理の高速化が期待できる。
【0109】
また、改札機における出場処理では、入場駅、有効区間、有効期間、SF残額などの情報をデータベース24cから参照する必要がある。このため、改札機4は、出場処理を要求するコマンド電文(利用モードが出場モードのコマンド電文)において、入場駅、有効区間、有効期間、SF残額を参照すべきデータとして指定する。例えば、上記のような改札処理を要求するコマンド電文は、改札機4の処理において、上記のような参照すべきデータを示す情報を付加することにより作成できる。
【0110】
また、改札処理において入出場サイクルが正常であるかをチェックする運用である場合、改札機4は、改札処理(入場又は出場処理)を要求するコマンド電文において、入出場フラグ(入場状態又は出場状態の何れであるかを示す情報)を、入出場サイクルの正当性を判定するために参照すべきデータとして指定する。これにより、入出場サイクルのチェックも高速に行える。
【0111】
また、精算機5における精算処理では、入場駅、有効区間、有効期間、SF残額などの情報を参照する必要がある。このため、本変形例に係る精算機5は、精算処理を要求するコマンド電文(利用モードが精算モード)において、入場駅、有効区間、有効期間、SF残額を参照すべきデータとして指定する。例えば、上記のような精算処理を要求するコマンド電文は、精算機5の処理において、上記のような参照すべきデータを示す情報を付加することにより作成できる。
【0112】
本変形例に係るサーバ2は、上記のような参照すべきデータを指定したコマンド電文を受信した場合、利用モードで指定される処理(改札判定又は精算判定)において、当該コマンド電文で指定された参照すべきデータをデータベース24cから特定する。これにより、サーバ2は、コマンド電文で指定された処理を当該コマンド電文で指定された参照すべきデータを用いて実行する。
【0113】
例えば、サーバ2のプロセッサ21は、利用モードが入場モード、出場モード又は精算モードのコマンド電文を受信した場合、
図11のST72の処理において、当該コマンド電文で指定されたIDの情報のうち当該コマンド電文で指定される参照すべきデータをデータベース24cから特定する。データベース24cから参照すべき情報を特定すると、プロセッサ21は、特定した情報に対するアクセス状況をチェックし、特定した情報がアクセス可能な状態であれば、コマンド電文で指定された通行判定又は精算判定を行う。
【0114】
上記のような変形例に係る出改札システムによれば、処理モジュールや利用モードだけでなく参照すべきデータが指定されたコマンド電文を駅務端末から受信することにより、サーバは、改札判定又は精算判定などの処理において、データベース24c上の参照すべきデータをコマンド電文から直接的に特定でき、その結果として改札処理又は精算処理の高速化が期待できる。
【0115】
なお、上述の各実施の形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
【0116】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下、本願の出願当初の特許請求の範囲に記載した内容を付記する。
[1]
複数の駅務端末とサーバとが接続される駅務システムであって、
前記各駅務端末は、
前記サーバと通信する第1の通信部と、
乗車券媒体から乗車券の識別情報を読取る媒体処理部と、
前記媒体処理部が乗車券媒体から読み取った識別情報を処理対象に指定して駅務処理の処理要求を前記サーバへ送信する送信処理部と、
前記処理要求に対応して前記識別情報に対応する情報がアクセス不可の状態であることを示す応答を前記サーバから受信した場合、前記媒体処理部が読み取った識別情報の乗車券の情報がアクセス不可の状態である旨を報知する報知部と、
前記処理要求に対応して前記サーバが実行した処理結果を含む応答を受信した場合、前記サーバからの応答に応じて処理を実行する駅務処理部と、を有し、
前記サーバは、
前記各駅務端末と通信する第2の通信部と、
前記第2の通信部により駅務端末から前記処理要求を受信した場合、前記処理要求で指定された識別情報に対応する情報がアクセス中であるかを確認する確認部と、
前記識別情報に対応する情報がアクセス中であると判断した場合、前記識別情報に対応する情報がアクセス不可の状態であることを示す応答を前記処理要求の送信元の駅務端末へ送信する第1の応答処理部と、
前記識別情報に対応する情報がアクセス中でないと判断した場合、前記識別情報に対応する情報にアクセスして前記処理要求に応じた処理を実行し、実行した処理の結果を含む応答を前記処理要求の送信元の駅務端末へ送信する第2の応答処理部と、を有する、
駅務システム。
[2]
前記サーバは、さらに、個々の乗車券の識別情報に対応づけて乗車券に関する情報と各情報に対するアクセス状況を示す情報とを記憶するデータベースを有し、
前記サーバの前記確認部は、前記データベースにおいて前記処理要求で指定された識別情報に対応する情報がアクセス中であるかを確認する、
「1」に記載の駅務システム。
[3]
前記駅務端末の前記送信処理部は、前記サーバに要求する処理において参照すべきデータを示す情報を前記処理要求に付加し、
前記サーバの前記確認部は、前記処理要求に付加される参照すべきデータを示す情報に基づいて前記データベースにおいて参照するデータを特定し、特定したデータがアクセス中であるかを確認する、
[2]に記載の駅務システム。
[4]
複数の駅務端末での駅務処理を行うための駅務システムに用いられるサーバにおいて、 前記複数の駅務端末と通信する通信部と、
前記通信部により駅務端末から処理要求を受信した場合、前記処理要求で指定された識別情報に対応する情報がアクセス中であるかを確認する確認部と、
前記識別情報に対応する情報がアクセス中であると判断した場合、前記識別情報に対応する情報がアクセス不可の状態であることを示す応答を前記処理要求の送信元の駅務端末へ送信する第1の応答処理部と、
前記識別情報に対応する情報がアクセス中でないと判断した場合、前記識別情報に対応する情報にアクセスして前記処理要求に応じた処理を実行し、実行した処理の結果を含む応答を前記処理要求の送信元の駅務端末へ送信する第2の応答処理部と、
を有するサーバ。
[5]
さらに、個々の乗車券の識別情報に対応づけて乗車券に関する情報と各情報に対するアクセス状況を示す情報とを記憶するデータベースを有し、
前記確認部は、前記データベースにおいて前記処理要求で指定された識別情報に対応する情報がアクセス中であるかを確認する、
[4]に記載のサーバ。
[6]
前記確認部は、前記処理要求に付加される参照すべきデータを示す情報に基づいて前記データベースにおいて参照するデータを特定し、特定したデータがアクセス中であるかを確認する、
[5]に記載のサーバ。
[7]
駅務処理の少なくとも一部をサーバが実行する駅務システムの駅務端末において、
前記サーバと通信する通信部と、
乗車券媒体から乗車券の識別情報を読取る媒体処理部と、
前記媒体処理部が乗車券媒体から読み取った識別情報を処理対象に指定した駅務処理を前記サーバに要求する処理要求を生成し、前記処理要求に参照すべきデータを示す情報を付加して前記サーバへ送信する送信処理部と、
前記処理要求に対応して前記識別情報に対応する情報がアクセス不可の状態であることを示す応答を前記サーバから受信した場合、前記媒体処理部が読み取った識別情報の乗車券の情報がアクセス不可の状態である旨を報知する報知部と、
前記処理要求に対応して前記サーバが実行した処理結果を含む応答を受信した場合、前記サーバからの応答に応じて処理を実行する駅務処理部と、
を有する駅務端末。