(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
以下、図面に従って本発明の実施形態を説明する。
図1は、本実施形態の自動取引装置(ATM)1の主要な構成を示すブロック図である。
自動取引装置1は、CPU10、RAM12、記憶部14、ディスプレイ/タッチパネル16、紙幣処理ユニット18、カード・通帳処理ユニット20、硬貨処理ユニット22、通信I/F24を有する。
【0011】
CPU10は、各種プログラムに従って自動取引装置1の全体を制御する制御部である。特に本実施形態においては、CPU10は、自動取引装置1の運用内容を、運用スケジュールデータに従って制御する。
【0012】
運用内容とは、自動取引装置1の稼働/停止や、自動取引装置1で可能とする取引内容(支払、入金、記帳、振込等々)をいう。また、運用スケジュールデータとは、曜日ごと、又は特定日(例えば祝日)に、一日の運用内容のスケジュール、すなわち、何時何分にどのようなアクション(例えば取引開始の実行)を行うかを定義したデータである。
【0013】
RAM12は、一時記憶メモリである。例えば、外部から送信されたデータの一時保存あるいはCPU10のワーキングメモリとして利用される。記憶部14は、データの保存記憶用のメモリ、例えばハードディスクである。記憶部14には、自動取引装置1の各種制御プログラムや、運用スケジュールデータ等が記憶される。
【0014】
ディスプレイ/タッチパネル16は、自動取引装置1のメニューや操作ガイドを表示し、対応して顧客からのメニューの選択や金額/暗証番号等を入力させる。LCD等の薄型表示部とそれに積層されるタッチパネルから構成される。
【0015】
また、ディスプレイ/タッチパネル16は、運用スケジュールデータを変更する際に、変更スケジュールデータを自動取引装置1から直接入力するための入力部及び表示部にもなる。
【0016】
紙幣処理ユニット18は、顧客から支払の指示あるいは入金操作があった場合には、指示内容に応じた金額の紙幣を内部の紙幣ユニットから計数して紙幣支払口まで搬送したり、入金された紙幣を紙幣ユニットまで搬送して格納するものである。
【0017】
カード・通帳処理ユニット20は、カードや通帳等の媒体を取り込み・返却する。媒体の取り込み時、媒体に付された情報が読み取られ、個人情報や口座番号が特定され、また、取り引き履歴等の書き込み・印字するものである。
【0018】
硬貨処理ユニット22は、紙幣処理ユニット18と同様に、硬貨の支払い、及び硬貨の格納をするものである。
通信I/F24は、遠隔地に設置されて、各自動取引装置1をまとめて管理するサーバ、あるいは、顧客の情報が記憶されている顧客データベースと、自動取引装置1間で、データの送受信の実行を制御するものである。
【0019】
CPU10は、記憶部14から所定のプログラムを読込んで、ディスプレイ/タッチパネル16、紙幣処理ユニット18、カード・通帳処理ユニット20、硬貨処理ユニット22、通信I/F24等を制御する。
【0020】
図2は、運用スケジュールデータ30の構成例を示す図である。前述のように、運用スケジュールデータとは、曜日ごと、又は、特定日(例えば、祝日)に、一日の運用スケジュール、すなわち、何時何分に行うアクション(例えば取引開始の実行)を定義したデータである。運用スケジュールデータ30は、通常1年分を定義している。ただし、なかには10年分定義のものもある。
【0021】
運用スケジュールデータ30は、特定日スケジュールと曜日スケジュールに大きく分かれる。特定日スケジュールは、日ごとに定義されるスケジュールである。特定日スケジュールとは、例えば、正月(1月1日,1月2日,1月3日)といった祝日の特別な日ごとに定義されるスケジュールである。なお、この特定日スケジュールは、以下で述べるハッピーマンデースケジュールおよび曜日スケジュールより優先される。
【0022】
曜日スケジュールとは、曜日ごとに定義されるスケジュールである。自動取引装置1の運用は曜日で大きく異なるために、日毎に定義する場合に比べて、曜日ごとに定義する方が、一般的に定義作業の負荷を軽減することができる。
【0023】
ハッピーマンデースケジュールとは、月曜日がハッピーマンデーの場合の運用スケジュールである。自動取引装置1では、月曜日の場合、ハッピーマンデーか否かを判定し、通常の月曜日とは区別した曜日として扱う。
【0024】
また、曜日スケジュールは、ハッピーマンデースケジュール以外に、月曜日スケジュール、火曜日スケジュール、・・・日曜日スケジュールに分けられる。
【0025】
図3は、運用スケジュールデータ30の定義情報の一部を示すもので、一例として、月曜日スケジュールデータの定義情報を示す。定義情報の形式は、曜日スケジュールと特定日スケジュールで、同一であるので、曜日スケジュールを代表して示す。
【0026】
運用スケジュールデータ30は、各運用データから構成される。月曜日の運用スケジュールデータ30は、データp1〜p4の4つの運用データ(以下、データとも略す)から構成されるものとする。各運用データは、適用される曜日や特定日、運用データのアクションの開始時間である「スケジュール時間」、及びアクションの種類の内容である「スケジュール時間に行うアクション」の情報から構成される。
【0027】
例えば、データp1は、「月曜日」の「8:00」に「全取引開始」を、自動取引装置1に指示する内容である。全取引開始とは、入金・出金・振込・記帳等自動取引装置1で可能な全ての取引を、開始することをいう。
【0028】
データp2は、「月曜日」の「15:00」に「振込取引停止」を、自動取引装置1に指示する内容である。15:00以降は、振込取引のみを停止し、それ以外の取引は、可能とする。
【0029】
データp3は、「月曜日」の「20:00」に「全取引停止」を、自動取引装置1に指示する内容である。データp4は、「月曜日」の「20:30」に「自動取引装置シャットダウン」を、自動取引装置1に指示する内容である。20:30に自動取引装置1の主電源が落とされる。
【0030】
運用スケジュールデータ30は、年間を通して定められているような基本的なスケジュールであるので、今年のゴールデンウィークだけとか、地域によって異なる行事日程に合わせて運用を行うには、運用スケジュールデータ30の変更が必要になる。
【0031】
従来は、一時期だけの変更であっても、運用スケジュールデータ30全体を変更内容に合わせて更新していた。これに対しては、本実施形態では、運用スケジュールデータ30自体は変更しないで、原則変更内容だけのデータである変更スケジュールデータを作成し、この変更スケジュールデータと運用スケジュールデータ30を対照しながら、アクションを決めて運用するようにした。以下では、基準となる運用スケジュールのデータを運用スケジュールデータと、特定期間の運用スケジュールのデータを変更スケジュールデータと呼ぶ。
【0032】
図4は、変更スケジュールデータの構成例を示す図である。
図5は、運用スケジュールデータ30と、
図4の2つの変更スケジュールデータの適用期間を比較したタイムチャートである。
【0033】
図5に示すように、運用スケジュールデータ30は全期間に適用されるスケジュールとし、変更スケジュールデータAは、ゴールデンウィーク期間と夏季期間に適用されるスケジュールであり、変更スケジュールデータBは、夏季期間の中のお盆の期間に適用されるスケジュールとする。なお、重なり情報Kについては、後述する。
【0034】
図4(A)は、変更スケジュールデータAの、曜日・時刻・アクションを説明する図である。変更内容は、月曜日の8:00に全取引を開始するというスケジュールを、7:30に全取引を開始する内容に変更するものである。これに対応する運用データは、データq1及びデータq2の2つである。
【0035】
データq1は、「月曜日」の「7:30」に「全取引開始」のアクションを自動取引装置1に指示する内容である。データq2は、「月曜日」の「8:00」にアクションとして「なし」を自動取引装置1に指示する内容である。データq2は、運用スケジュールデータ30に存在するデータp1(
図3)の指示を無効にするためである。データq2の指示がないと、8:00に再度全取引開始のアクションが自動取引装置1に指示されてしまうからである。
【0036】
図4(B)は、
図4(A)で説明した変更スケジュールデータAのデータq1、q2に、有効期間データが追加されたデータを示す図である。変更内容は、
図4(A)で示した変更を、夏季(7/1から8/31)の期間中、有効にするというものである。
【0037】
図4(C)は、変更スケジュールデータAに変更スケジュールデータBが加わった場合の、データを示す図である。変更スケジュールデータBは、自動取引装置1を、お盆の期間の月曜日のみ、7:30から出金のみの取引にするというものである。
【0038】
変更スケジュールデータが複数で、かつ重複する期間が発生する場合には、変更スケジュールデータ間で優先順位を明確にするために、各データに重なり情報Kが追加される。重なり情報Kは、0,1,2・・として、優先度の高いデータほどより大きな値が付けられる。
【0039】
運用スケジュールデータ30の重なり情報Kは0とする。ここで、変更スケジュールデータBが変更スケジュールデータAに優先するものとし、変更スケジュールデータAのデータq1、データq2については、重なり情報K=1とし、変更スケジュールデータBのデータr1については、重なり情報K=2とする。
【0040】
図6及び
図7は、運用スケジュールを変更する場合の、従来の方式と本実施形態の方式を比較して説明するための図である。
図6は、自動取引装置1から直接変更内容を入力して、運用スケジュールを変更させる例を説明する図である。
図6(A)は、従来の方式による例である。変更時には、ディスプレイ/タッチパネル16に運用スケジュールデータ30を表示させて、ディスプレイ/タッチパネル16から必要な変更スケジュールデータ32を入力させる。
【0041】
変更処理部34が、入力された変更スケジュールデータ32に基づき、記憶部14の運用スケジュールデータ30を書き換えて、変更された運用スケジュールデータ30aを記憶部14に記憶させる。なお、変更処理部34は、所定の運用スケジュールデータ変更プログラムを読込んだCPU10により実現される機能である。
【0042】
図6(B)は、本実施形態の方式によるものである。変更時には、ディスプレイ/タッチパネル16に運用スケジュールデータ30を表示させて、ディスプレイ/タッチパネル16から必要な変更スケジュールデータ32を入力させる。変更スケジュールデータ32として、有効期間あるいは重なり情報Kも入力される。
【0043】
変更処理部34が、入力された変更スケジュールデータ32を、記憶部14に記憶させる。記憶部14には、運用スケジュールデータ30と別に変更スケジュールデータ32が記憶される。変更処理部34は、所定の運用スケジュールデータ変更プログラムを読込んだCPU10により実現される機能である。なお、変更スケジュールデータ32は、記憶部14内に有効期間の終了日まで保存され、終了日後に、変更処理部34により削除される。
【0044】
図7は、遠隔地から運用スケジュールデータを変更する例を説明する図である。
図7(A)は、従来の方式によるものである。変更時には、センタのサーバからインターネット等のネットワークを経由して、自動取引装置1の通信I/F24を介して、変更された運用スケジュールデータ30aが自動取引装置1にダウンロードされる。ダウンロードされた運用スケジュールデータ30aは、古い運用スケジュールデータ30に代わって記憶部14に記憶される。
【0045】
図7(B)は、本実施形態の方式によるものである。変更時には、変更スケジュールデータ32が自動取引装置1にダウンロードされて、運用スケジュールデータ30とともに、記憶部14に記憶される。
【0046】
図8は、運用スケジュールデータ30及び変更スケジュールデータ32による自動運転処理の概略を示す図である。自動運転処理は、自動運転処理のプログラムを読込んだCPU10により実現される機能である、タイマ登録部40(登録部とも称す)、タイマ処理部42(処理部とも称す)及びアクション実行部44によって、主に実行される。
【0047】
タイマ登録部40は、記憶部14から運用スケジュールデータ30及び変更スケジュールデータ32を読み込んで、運用の曜日または日が現在の曜日または日と一致し、かつ運用の時刻が現在の時刻と同じか又は未来時刻で最も直近するデータを抽出し、運用スケジュールデータ30及び変更スケジュールデータ32から、運用の時刻が同一時刻であるデータを抽出した場合には、変更スケジュールデータ32の方のデータを、タイマ処理部に登録する。
【0048】
また、タイマ登録部40は、変更スケジュールデータ32の種類が複数あって、複数の変更スケジュールデータ32から、運用の時刻が同一時刻であるデータを抽出した場合には、変更スケジュールデータ32の優先順位に従って、1つのデータを登録する。優先順位は、重なり情報の大小に従う。また、タイマ登録部40は、タイマ処理部42により起動される。
【0049】
タイマ処理部42は、タイマ登録部40から登録されたデータの時刻(タイムアウト時)になったら、依頼されたアクションの起動をアクション実行部44に指示する。また、タイマ処理部42は、タイマ登録部40を起動する。
【0050】
そして、アクション実行部44は、タイマ処理部42から起動されたアクションを実行する。
以上のように、自動運転処理では、自動取引装置1の電源ONの立上げを含めて、運用スケジュールデータ30及び変更スケジュールデータ32から、現在時刻から一番近い時刻アクションを読み取り、その時刻になったら、該当のアクションを実行し、実行後また一番近い時刻アクションを読み取るといったことを繰り返し行う。
【0051】
これにより、変更期間が終了すると変更前のスケジュールである運用スケジュールデータ30に自動的に復帰することができる。変更スケジュールデータ32を直ちに削除する必要もない。
【0052】
以下に、タイマ登録部40によるタイマ登録処理を説明する。
図9は、タイマ登録部40によるタイマ登録処理の手順を説明するフローチャートである。
以下では、現在は、8月11日月曜日(お盆の期間)の7:00とする。現在の日時と曜日を取得する(ステップS10)。ここでは、最初に特定日スケジュールの処理を行い(ステップS12)、次に、曜日スケジュールの処理(ステップS20)を行うようにする。上述したように、特定日を曜日よりも優先するためである。
【0053】
現在日と同じ日付の特定日のスケジュールデータ検索を行う(ステップS12)。スケジュールデータ検索の手順についてを、
図10A、Bのサブルーチンで説明する。
以下の手順を簡略に述べれば、スケジュールデータ検索では、重なり情報Kの小さいデータから、つまり、運用スケジュールデータ30→変更スケジュールデータA→変更スケジュールデータBの順番に、現在日時と同じか直近する検索結果データを求める。そして、求められた検索結果データを、重なりデータの順番で入れ替えていって、最終的に1つの検索結果データを求めるものである。
【0054】
まず、処理の初期化を行う(ステップS30)。初期化のために、検索対象の重なり情報Kを、K=−1に設定し、また、検索結果データを“なし”に設定する。
【0055】
K+1→Kとする(ステップS32)。最初は、K=−1であるから、このステップで、K=0になる。
【0056】
KがMaxを超えたかを判断する(ステップS34)。重なり情報のMaxとは、変更スケジュールデータ32内の重なり情報の最大値をいう。
図4の例では、Max=2である。
【0057】
KがMaxを超えていないと判断すると(ステップS34No)、検索対象の重なり情報を持つデータから、その有効期間に現在日が含まれるデータを抽出する(ステップS36)。最初は、検索対象の重なり情報K=0であるから、K=0である運用スケジュールデータ30から、その有効期間に現在日が含まれるデータを抽出する。
【0058】
抽出データがあるかを判断する(ステップS38)。運用スケジュールデータ30では、有効期間が全ての期間なので、現在日(8月11日)が含まれるデータは必ず抽出される。
抽出データがないと判断すると(ステップS38No)、ステップS32に戻る。
【0059】
抽出データがあると判断すると(ステップS38Yes)、更に抽出したデータから曜日または特定日の一致するデータを抽出する(ステップS40)。ここでは、ステップS12で、特定日スケジュールに関する処理なので、特定日が一致するデータを抽出する(ステップS40)。
【0060】
特定日が一致する抽出データがあるかを判断する(ステップS42)。特定日が一致する抽出データがないと判断すると(ステップS42No)、ステップS32に戻る。
図3の運用スケジュールデータ30の例では、8月11日に一致する特定日は存在しないので、ステップS42はNoと判断される。
【0061】
特定日が一致する抽出データがあると判断すると(ステップS42Yes)、抽出したデータの中から、更に、現在時刻と同じか、又は、未来時刻で最も近いデータを求める(ステップS44)。
【0062】
求めるデータが有るかを判断する(ステップS46)。求めるデータがないと判断すると(ステップS46No)、ステップS32に戻る。
求めるデータが有ると判断すると(ステップS46Yes)、検索結果データ=なし かを判断する(ステップS48)。検索結果データの入替え処理をするためである。
【0063】
ステップS30で、検索結果データを“なし”に設定したので、このサブルーチンのループの1回目であれば、検索結果データ=なし と判断される(ステップS48Yes)。ステップS50をジャンプして、求めたデータを検索結果データに設定する(ステップS52)。その後、ステップS32に戻る。
【0064】
検索結果データが有る場合には(ステップS48No)、求めたデータのスケジュール時間>検索結果データのスケジュール時間 であるかを判断する(ステップS50)。求めたデータのスケジュール時間が、既に登録されている検索結果データのスケジュール時間よりも、現在時に近いか否かを判断し、現在時により近い場合には、求めたデータを新たに検索結果データとして登録するためである。
【0065】
例えば、求めたデータのスケジュール時間が7:15で、登録されている検索結果データのスケジュール時間が7:30の場合には、より現在時(7:00)に近い求めたデータの方を、有効にするためである。
【0066】
求めたデータのスケジュール時間>検索結果データのスケジュール時間 でないと判断すると(ステップS50No)、求めたデータを検索結果データに設定する(ステップS52)。検索結果データの入替えが行われる。その後、ステップS32に戻る。
【0067】
求めたデータのスケジュール時間>検索結果データのスケジュール時間 であると判断すると(ステップS52Yes)、検索結果データの入替えは行わずに、ステップS32に戻る。
【0068】
ステップS32に戻り、K=0の運用スケジュールデータ30の次に、K=1の変更スケジュールデータAを上述と同様な手順で検索する。変更スケジュールデータAの検索後は、ステップS32に戻り、K=2の変更スケジュールデータBを検索する。
【0069】
変更スケジュールデータBの検索後は、ステップS32にもどり、K=3になり、KがMaxを超えたと判断するので(ステップS34Yes)、サブルーチンを終了して、
図9のステップS14に進む。
【0070】
なお、
図2〜
図4で示したデータ例では、現在日(8月11日)に対応する特定日は存在しないので、検索結果データはなしで、ステップS14に進むことになる。
ステップS14では、検索結果データありかを判断する。検索結果ありと判断すると(ステップS14Yes)、該当データの時刻及びアクションをタイマ処理部42に登録する(ステップS16)。
【0071】
検索結果データがないと判断すると(ステップS14No)、ステップS16をジャンプして、ステップS18に進む。ステップS18では、タイマ登録済かを判断する(ステップS18)。タイマ登録済と判断すると(ステップS18Yes)、このフローチャートを終了する。従って、特定日で検索結果データが見つかった場合には、以下曜日スケジュールの処理(ステップS20〜S24)は行わないで、タイマ登録処理を終了する。
【0072】
なお、
図2〜4のようなデータ例では、特定日としてタイマ処理に登録されるデータはないので、タイマ登録済でないと判断して(ステップS14No、ステップS18No)、ステップS20に進む。
【0073】
ステップS20では、曜日スケジュールの処理を行う。該当する曜日データからスケジュールデータを検索する。ステップS12と同様に、
図10A、Bのサブルーチンに進む。
【0074】
図10A、Bのサブルーチンについては、上述の特定日スケジュール検索で説明済の箇所は省略して、
図2〜4で示した運用スケジュールデータ30と変更スケジュールデータA,変更スケジュールデータBに沿って説明する。また、上述と同様に、現在は、8月11日月曜日(お盆の期間)の7:00とする。
【0075】
ステップS30での初期化後、運用スケジュールデータ30について検索する。K=1であるから、ステップS36に進む。運用スケジュールデータ30では、有効期間が全ての期間なので、現在日が含まれるデータが抽出され(ステップS36)、抽出データ有かの判断では(ステップS38)、抽出データ有と判断する(ステップS38Yes)。
【0076】
更に抽出したデータから曜日の一致するデータを抽出する(ステップS40)。データp1〜p4が抽出される。抽出データ有かの判断では(ステップS42)、抽出データがあると判断する(ステップS42Yes)。
【0077】
抽出したデータの中から、更に、現在時刻と同じか、又は、未来時刻で最も近いデータを求める(ステップS44)。ここでは、運用スケジュールデータ30のデータp1が求められる。求めるデータ有かの判断では(ステップS46)、求めるデータ有と判断する(ステップS46Yes)。
【0078】
検索結果データ=なし?の判断では(ステップS48)。ループの最初で、検索結果データ=なし であるので、なしと判断して(ステップS48Yes)、ステップS52に進む。そして、データp1を、検索結果データに設定して(ステップS52)、ステップS32に戻る。
【0079】
ステップS32に戻り、K=1の変更スケジュールデータAを検索する。現在が8月11日なので、ステップS36では、変更スケジュールデータAが抽出される。ステップS40では、データq1及びq2が抽出される。ステップS44では、現在が7時なので、データq1が抽出される。求めたデータのスケジュール時間>検索結果データのスケジュール時間 であるかを判断する(ステップS50)。
【0080】
データq1の時間が7:30で、データp1の時間が8:00であるから、ステップS50で、q1>p1ではないので、ステップS50Noとなり、ステップS52に進む。データp1に代えてデータq1を検索結果データに設定して(ステップS52)、ステップS32に戻る。
【0081】
また、現在時が7:31とすると、運用スケジュールデータ30のデータp1が検索結果データとしていったん登録され、その後変更スケジュールデータAのデータq2が替わって登録されることになる。
【0082】
ステップS32に戻り、K=2の変更スケジュールデータBを検索する。現在が8月11日なので、ステップS36では、変更スケジュールデータBが抽出される。ステップS40では、データr1が抽出される。ステップS44でも、データr1が抽出される。データr1の時間が7:30で、データq1の時間が7:30であるから、ステップS50では、r1>q1ではないので、ステップS50Noとなり、ステップS52に進む。データq1に代えてデータr1を検索結果データに設定して(ステップ52)、ステップS32に戻る。
【0083】
ステップS32にもどり、K=3になり、ステップS34により、サブルーチンを終了して、
図9のステップS22に進む。
ステップS22では、検索結果データありかを判断する。データr1により検索結果ありと判断すると(ステップS22Yes)、該当データの時刻及びアクションをタイマ処理に登録する(ステップS24)。ここでは、検索結果データとして設定した変更スケジュールデータBのデータr1を登録する。また、検索結果なしと判断すると(ステップS22No)、このフローチャートを終了する。
【0084】
以上の本実施形態により、少なくとも奏せられる効果を以下に示す。
1)運用スケジュールデータを変更する場合、直接変更せずに、変更スケジュールデータとして持つようし、かつ変更スケジュールデータには有効期間を設けたので、期間終了後に戻す操作が不要となる。
2)また、変更スケジュールデータには、重なり情報(優先度)を設けたので、複数変更に対応することも容易になる。
3)一定期間の変更を、曜日の指定で行うことができ、且つ、期間終了後に戻す操作が不要となる。
4)変更時に、基本となる運用スケジュールデータには手を加えないので、変更ミス等により大きなトラブルが発生するおそれがない。
5)また、遠隔地からの運用スケジュール変更を行う場合でも、データ量の少ない変更スケジュールデータだけを転送すればよいので、転送量の縮小がはかれる。
【0085】
また、上記実施形態では、タイマ登録処理をCPUによるソフトウェア処理で実行されることで説明したが、タイマ登録処理の一部または全部をハードウェアで実行するようにしてもよい。タイマ処理部及びアクション実行部についても、同様である。
【0086】
なお、本発明は上述した実施形態そのままに限定されるものではく、実施段階でのその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素を適宜組合わせても良い。さらに、異なる実施形態にわたる構成要素を適宜組合わせてもよい。このような、発明の趣旨を逸脱しない範囲内において種々の変形や応用が可能であることはもちろんである。