(57)【要約】【課題】登録抹消から所定期間が経過した顧客コードを得ることができる顧客コード管理装置を提供する。【解決手段】顧客コード登録手段１１１は、顧客の顧客コードを顧客登録データベース１２１に登録する。抹消履歴登録手段１１２は、登録抹消の対象とされた顧客コードを顧客登録データベース１２１から削除すると共に、登録抹消の対象とされた顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベース１２２に登録する。削除手段１１３は、上記削除日から所定期間が経過した顧客コードを、抹消履歴データベース１２２から削除する。空き顧客コード抽出手段１１４は、顧客登録データベース１２１又は抹消履歴データベース１２２に登録されている顧客コードを一定範囲の顧客コードから除外したものを、新規顧客に割当可能な空き顧客コードとして抽出する。【選択図】図１
2004348720.tif 000002
【特許請求の範囲】
【請求項１】
顧客の顧客コードを登録する顧客登録データベースを用いて、顧客コードの登録及び抹消を管理する顧客コード管理装置において、
登録抹消の対象とされた顧客コードを取得する取得手段と、
前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日または当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行う抹消履歴登録手段と、
前記抹消履歴データベースに登録された情報に基づき、前記抹消履歴データベースに登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段と
を有することを特徴とする顧客コード管理装置。
【請求項２】
前記抹消履歴登録手段は、前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行い、
前記空き顧客コード抽出手段は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベースに登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベースに登録された前記履歴情報のうち前記削除日からの経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記空き顧客コードとして抽出する
ことを特徴とする請求項１記載の顧客コード管理装置。
【請求項３】
前記抹消履歴登録手段は、前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行い、
前記空き顧客コード抽出手段は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベースに登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベースに登録された前記履歴情報のうち前記経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記空き顧客コードとして抽出する
ことを特徴とする請求項１記載の顧客コード管理装置。
【請求項４】
一定範囲の顧客コードの登録及び抹消を管理する顧客コード管理装置において、
顧客の顧客コードを顧客登録データベースに登録する処理を行う顧客コード登録手段と、
登録抹消の対象とされた顧客コードを取得する取得手段と、
前記顧客登録データベースに登録された前記顧客コードのうち前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日又は当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行う抹消履歴登録手段と、
前記抹消履歴データベースに登録された情報に基づき、前記抹消履歴データベースに登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、前記抹消履歴データベースから削除する処理を行う削除手段と、
前記顧客登録データベースに登録されている顧客コードと前記抹消履歴データベースに登録されている顧客コードとを前記一定範囲の顧客コードから除外したものを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段と
を有することを特徴とする顧客コード管理装置。
【請求項５】
前記抹消履歴登録手段は、前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行い、
前記削除手段は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベースに登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベースに登録された前記履歴情報のうち前記削除日からの経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記抹消履歴データベースから削除する処理を行い、
前記空き顧客コード抽出手段は、前記一定範囲の顧客コードについて前記顧客登録データベースまたは前記抹消履歴データベースに登録されているか否かを判定する処理を行い、前記顧客登録データベースおよび前記抹消履歴データベースに登録されていないと判定した顧客コードを前記空き顧客コードとして抽出する
ことを特徴とする請求項４記載の顧客コード管理装置。
【請求項６】
前記抹消履歴登録手段は、前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行い、
前記削除手段は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベースに登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベースに登録された前記履歴情報のうち前記経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記抹消履歴データベースから削除する処理を行い、
前記空き顧客コード抽出手段は、前記一定範囲の顧客コードについて前記顧客登録データベースまたは前記抹消履歴データベースに登録されているか否かを判定する処理を行い、前記顧客登録データベースおよび前記抹消履歴データベースに登録されていないと判定した顧客コードを前記空き顧客コードとして抽出する
ことを特徴とする請求項４記載の顧客コード管理装置。
【請求項７】
前記空き顧客コード抽出手段が抽出した空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段と、
前記顧客コード割当手段が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段と
をさらに有し、
前記顧客コード割当手段は、前記スタートコード記憶手段に記憶されている顧客コードを起点として、前記空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する
ことを特徴とする請求項１〜６の何れかに記載の顧客コード管理装置。
【請求項８】
前記空き顧客コード抽出手段が抽出した空き顧客コードが連続している範囲である各ブロックを、当該各ブロックの先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベースに登録する処理を行う空き顧客コード登録手段をさらに有し、
前記顧客コード割当手段は、前記空き顧客コードデータベースに登録されているブロックに含まれる空き顧客コードの中から、前記スタートコード記憶手段に記憶されている顧客コードを起点として、新規顧客に割り当てるべき一の顧客コードを取得する
ことを特徴とする請求項７に記載の顧客コード管理装置。
【請求項９】
前記空き顧客コード抽出手段が抽出した空き顧客コードが連続している範囲である各ブロックを順位付けするとともに、当該各ブロックをその先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベースに登録する処理を行う空き顧客コード登録手段と、
前記空き顧客コードデータベースに登録されているブロックに含まれる空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段と
をさらに有し、
前記空き顧客コード登録手段は、前記顧客コード割当手段が取得した最新の顧客コードを含むブロックから前記一定範囲を一巡するように前記各ブロックの順序付けを行い、
前記顧客コード割当手段は、前記順位付けされた各ブロックについて順位の高いブロックにある空き顧客コードから順に新規顧客に割り当てるべき一の顧客コードを取得する
ことを特徴とする請求項４〜６の何れかに記載の顧客コード管理装置。
【請求項１０】
前記空き顧客コード抽出手段が抽出した空き顧客コードが連続している範囲である各ブロックを順位付けするとともに、当該各ブロックをその先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベースに登録する処理を行う空き顧客コード登録手段と、
前記空き顧客コードデータベースに登録されているブロックに含まれる空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段と、
前記顧客コード割当手段が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段と
をさらに有し、
前記空き顧客コード登録手段は、前記スタートコード記憶手段に記憶されている顧客コードと前記空き顧客コードデータベースに登録されている情報から、前記最新の顧客コードの次に割り当てるべき新規の顧客コードを検出し、検出した当該顧客コードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを行い、
前記顧客コード割当手段は、前記順位付けされた各ブロックについて順位の高いブロックの先頭にある空き顧客コードから順に新規顧客に割り当てるべき一の顧客コードを取得する
ことを特徴とする請求項４〜６の何れかに記載の顧客コード管理装置。
【請求項１１】
前記空き顧客コード登録手段は、
前記スタートコード記憶手段に記憶されている顧客コードであるスタートコードと前記空き顧客コードデータベースに登録されている情報に基づき、前記空き顧客コードデータベースに前記スタートコードを含むブロックがあるか否かを判定する処理を行い、
前記スタートコードを含むブロックがあると判定した場合は、前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして前記スタートコードを検出し、検出した当該スタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを前記各ブロックに順位を示すフラグを付与することにより行い、
前記スタートコードを含むブロックが前記空き顧客コードデータベースにないと判定した場合は、当該スタートコードに次ぐ顧客コードに前記スタートコードを更新し、更新後のスタートコードを含むブロックがあるか否かを判定する処理を行い、
当該更新後のスタートコードを含むブロックがあると判定したときは前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを前記各ブロックに順位を示すフラグを付与することにより行い、
当該更新後のスタートコードを含むブロックが前記空き顧客コードデータベースにないと判定したときは、ブロックに含まれるスタートコードが得られるまでスタートコードの更新を繰り返して前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを前記各ブロックに順位を示すフラグを付与することにより行う
ことを特徴とする請求項１０に記載の顧客コード管理装置。
【請求項１２】
前記空き顧客コード抽出手段が抽出した前記空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段と、
前記顧客コード割当手段が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段と
をさらに有し、
前記顧客コード割当手段は、前記スタートコード記憶手段に記憶されている顧客コードを起点として、前記空き顧客コード抽出手段が抽出した空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得し、
前記顧客コード登録手段は、前記新規顧客の顧客情報と当該新規顧客に割り当てるべき前記一の顧客コードとを関連付けて前記顧客登録データベースに登録する処理を行う
ことを特徴とする請求項４〜６の何れかに記載の顧客コード管理装置。
【請求項１３】
前記顧客は、金融機関の顧客であり、
前記顧客の顧客コードは、前記金融機関における当該顧客の口座番号であり、
前記顧客コード登録手段は、顧客の口座番号を前記顧客登録データベースに登録する処理を行うことにより当該顧客の口座を開設し、
前記抹消履歴登録手段は、前記取得手段が取得した前記登録抹消の対象とされた口座番号を前記顧客登録データベースから削除する処理を行うことにより当該口座番号の顧客の口座を抹消し、
前記空き顧客コード抽出手段は、前記金融機関の営業日毎にかつ営業開始時間前に、前記空き顧客コードである空き口座番号の抽出を行う
ことを特徴とする請求項４〜１２の何れかに記載の顧客コード管理装置。
【請求項１４】
前記顧客登録データベースに顧客の顧客コードを登録する処理を行う顧客コード登録手段をさらに有し、
前記顧客は、金融機関の顧客であり、
前記顧客の顧客コードは、前記金融機関における当該顧客の口座番号であり、
前記顧客コード登録手段は、顧客の口座番号を前記顧客登録データベースに登録する処理を行うことにより当該顧客の口座を開設し、
前記抹消履歴登録手段は、前記取得手段が取得した前記登録抹消の対象とされた口座番号を前記顧客登録データベースから削除する処理を行うことにより当該口座番号の顧客の口座を抹消し、
前記空き顧客コード抽出手段は、前記金融機関の営業日毎にかつ営業開始時間前に、前記空き顧客コードである空き口座番号の抽出を行う
ことを特徴とする請求項１〜３の何れかに記載の顧客コード管理装置。
【請求項１５】
コンピュータを、
顧客の顧客コードを登録する顧客登録データベースを用いて、顧客コードの登録及び抹消を管理する顧客コード管理装置であって、
登録抹消の対象とされた顧客コードを取得する取得手段と、
前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日または当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行う抹消履歴登録手段と、
前記抹消履歴データベースに登録された情報に基づき、前記抹消履歴データベースに登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段と
を有するものとして機能させることを特徴とする顧客コード管理用プログラム。
【請求項１６】
コンピュータを、
一定範囲の顧客コードの登録及び抹消を管理する顧客コード管理装置であって、
顧客の顧客コードを顧客登録データベースに登録する処理を行う顧客コード登録手段と、
登録抹消の対象とされた顧客コードを取得する取得手段と、
前記顧客登録データベースに登録された前記顧客コードのうち前記取得手段が取得した顧客コードを前記顧客登録データベースから削除する処理を行うとともに、前記取得手段が取得した顧客コードに当該削除日又は当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベースに登録する処理を行う抹消履歴登録手段と、
前記抹消履歴データベースに登録された情報に基づき、前記抹消履歴データベースに登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、前記抹消履歴データベースから削除する処理を行う削除手段と、
前記顧客登録データベースに登録されている顧客コードと前記抹消履歴データベースに登録されている顧客コードとを前記一定範囲の顧客コードから除外したものを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段と
を有するものとして機能させることを特徴とする顧客コード管理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顧客コードの登録及び抹消を管理する顧客コード管理装置および顧客コード管理用プログラムに関し、特に登録抹消された顧客コードの中から新規顧客に割当可能な顧客コードを得ることができる顧客コード管理装置および顧客コード管理用プログラムに関する。
【背景技術】
【０００２】
さまざまな業態において、顧客を識別するための顧客コードを各顧客に割り当てて顧客管理が行われている。例えば証券会社では、顧客から新規に口座開設の申込みを受け付けた際に、その顧客に対して顧客コードを割り当てる。顧客コードは、一例として６桁程度の数字が使用され、例えば手書きの顧客台帳によって集約センターで一元管理することで重複割当の未然防止を図ることも可能であり、例えば集約センターでは、口座開設の申込みを受けると、顧客台帳を参照して直前（又は前回）に割り当てた顧客コードの次の顧客コードを取得し、当該取得した顧客コードを採用し、名称や住所を記入してから口座の開設処理を行う。
また、金融機関のホストコンピュータのデータベースに格納された顧客毎の氏名、口座番号、取引履歴等の口座情報のうち、顧客が一定期間取引に使用しない休眠口座に該当する口座情報を消去してデータ保存量を削減するための休眠口座削減システムが知られている（例えば、特許文献１参照）。
また、銀行業務を行う金融システムにおいて、解約となった預金口座や完済となった融資案件のレコード情報のデータベース上からの削除処理の処理時間を短縮すると共に、より確実で柔軟な口座抹消処理でファイル資源の有効活用を図るものが知られている（例えば、特許文献２参照）。
また、コンピュータが内蔵の時計機能及び／又はカレンダー機能によって現在の年月日や時刻を検出することは一般的に行われており、電子ファイル装置において保存期間が経過した文書情報を検出して削除するようにしたものが知られている（例えば、特許文献３参照）。
【０００３】
【特許文献１】特開２００２−７３９７６号公報
【特許文献２】特開平０７−２７１８８１号公報
【特許文献３】特開平０５−３２４４２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記の手書きの顧客管理台帳を調べて新規顧客に顧客コードを割り当てる場合は、口座開設に伴う事務手続きに手間と時間を要する。ところで、顧客コードのとり得る値が一例として６桁の数字という一定範囲に限定されている場合は、番号不足が生じたときには、既に抹消された口座の顧客コードを再利用するとよい。しかし、法律の規定により口座抹消後所定期間の保存義務があるので、顧客コードを再利用するために、抹消から当該所定期間（保存期間）を経過した顧客コードを上記の手書きの顧客管理台帳から手作業で探し出すことにすると、再利用のための事務処理が煩雑になり、口座開設に伴う顧客の待ち時間が長くなるという問題がある。
【０００５】
本発明は、このような観点に着目してなされたもので、登録抹消から所定期間が経過した顧客コードを得ることができ、当該顧客コードを新規顧客に割り当てることを可能にする顧客コード管理装置および顧客コード管理用プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
［１］顧客の顧客コードを登録する顧客登録データベース（１２１）を用いて、顧客コードの登録及び抹消を管理する顧客コード管理装置において、登録抹消の対象とされた顧客コードを取得する取得手段（１１８）と、前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日または当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行う抹消履歴登録手段（１１２）と、前記抹消履歴データベース（１２２）に登録された情報に基づき、前記抹消履歴データベース（１２２）に登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段（１１４）とを有することを特徴とする顧客コード管理装置。
【０００７】
抹消履歴登録手段（１１２）は、登録抹消の対象とされた顧客コードに対して登録抹消日又は登録抹消日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、例えば、履歴情報としては顧客登録データベースからの削除日を登録抹消日として用い、この削除日を示す履歴情報を顧客コードに関連付けて抹消履歴データベース（１２２）に登録する処理を行う。空き顧客コード抽出手段（１１４）は、抹消履歴データベース（１２２）の登録内容に基づいて、削除日から所定期間が経過した顧客コードを、新規に割当可能な空き顧客コードとして抽出する。このように、削除日から少なくとも所定期間（例えば予め設定された保存期間）が経過した顧客コードが空き顧客コードとして抽出されるので、登録抹消されていた顧客コードの中から新規顧客に割当可能な顧客コードを得ることができると共に、登録抹消されていた顧客コードの再利用に伴う事務作業の負担を軽減することができ、顧客コードの割当てに要する時間を短縮することが可能となる。
【０００８】
［２］前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記削除日からの経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記空き顧客コードとして抽出することを特徴とする［１］記載の顧客コード管理装置。
例えば、前記登録抹消の対象とされた顧客コードが入力手段（１０）に入力され、当該入力手段（１０）に入力された顧客コードを前記取得手段（１１８）が取得し、前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記所定期間としての保存期間を示す保存期間情報を保持する保持手段を有しており、前記保持手段に保持された保存期間情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記履歴情報が示す削除日からの経過期間と前記保存期間情報が示す保存期間とを比較して前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記削除日からの経過期間が前記保存期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記空き顧客コードとして抽出する構成としてもよい。
【０００９】
［３］前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記空き顧客コードとして抽出することを特徴とする［１］記載の顧客コード管理装置。
例えば、前記登録抹消の対象とされた顧客コードが入力手段（１０）に入力され、当該入力手段（１０）に入力された顧客コードを前記取得手段（１１８）が取得し、前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードに当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記所定期間としての保存期間を示す保存期間情報を保持する保持手段を有しており、前記保持手段に保持された保存期間情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記履歴情報が示す経過期間と前記保存期間情報が示す保存期間とを比較して前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記経過期間が前記保存期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記空き顧客コードとして抽出する構成としてもよい。
【００１０】
［４］一定範囲の顧客コードの登録及び抹消を管理する顧客コード管理装置において、顧客の顧客コードを顧客登録データベース（１２１）に登録する処理を行う顧客コード登録手段（１１１）と、登録抹消の対象とされた顧客コードを取得する取得手段（１１８）と、前記顧客登録データベース（１２１）に登録された前記顧客コードのうち前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日又は当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行う抹消履歴登録手段（１１２）と、前記抹消履歴データベース（１２２）に登録された情報に基づき、前記抹消履歴データベース（１２２）に登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、前記抹消履歴データベース（１２２）から削除する処理を行う削除手段（１１３）と、前記顧客登録データベース（１２１）に登録されている顧客コードと前記抹消履歴データベース（１２２）に登録されている顧客コードとを前記一定範囲の顧客コードから除外したものを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段（１１４）とを有することを特徴とする顧客コード管理装置。
【００１１】
一定範囲の顧客コードの登録及び抹消を管理する顧客コード管理装置において、抹消履歴登録手段（１１２）は、顧客登録データベース（１２１）に登録された顧客コードのうち登録抹消の対象とされた顧客コードを顧客登録データベース（１２１）から削除する処理を行い、登録抹消の対象とされた顧客コードに削除日又は削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行う。削除手段（１１３）は、上記削除日から所定期間が経過した顧客コードを抹消履歴データベース（１２２）から削除する処理を行うことで、抹消履歴データベース（１２２）には所定期間が経過する前の顧客コード（例えば保存期間中の顧客コード）のみが登録されている状態とすることができる。これにより、顧客登録データベース（１２１）に登録されている顧客コードと抹消履歴データベース（１２２）に登録されている顧客コードについて、これらの顧客コードを上記一定範囲の顧客コードから除外したものから新規顧客に割当可能な空き顧客コードを得ることができ、制限された一定範囲の顧客コードの中から、新規顧客に割当可能な顧客コードを得ることができる。
【００１２】
［５］前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記削除手段（１１３）は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記削除日からの経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記抹消履歴データベース（１２２）から削除する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記一定範囲の顧客コードについて前記顧客登録データベース（１２１）または前記抹消履歴データベース（１２２）に登録されているか否かを判定する処理を行い、前記顧客登録データベース（１２１）および前記抹消履歴データベース（１２２）に登録されていないと判定した顧客コードを前記空き顧客コードとして抽出することを特徴とする［４］記載の顧客コード管理装置。
例えば、前記登録抹消の対象とされた顧客コードが入力手段（１０）に入力され、当該入力手段（１０）に入力された顧客コードを前記取得手段（１１８）が取得し、前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードに当該削除日を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記削除手段（１１３）は、前記所定期間としての保存期間を示す保存期間情報を保持する保持手段を有しており、前記保持手段に保持された保存期間情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記履歴情報が示す削除日からの経過期間と前記保存期間情報が示す保存期間とを比較して前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記削除日からの経過期間が前記保存期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記抹消履歴データベース（１２２）から削除する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記一定範囲の各顧客コードについて前記顧客登録データベース（１２１）または前記抹消履歴データベース（１２２）に登録されているか否かを判定する処理を行い、前記顧客登録データベース（１２１）および前記抹消履歴データベース（１２２）に登録されていないと判定した顧客コードを前記空き顧客コードとして抽出する構成としてもよい。
【００１３】
［６］前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記削除手段（１１３）は、前記所定期間を示す情報を保持する保持手段を有しており、前記保持手段に保持された情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記経過期間が前記所定期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記抹消履歴データベース（１２２）から削除する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記一定範囲の顧客コードについて前記顧客登録データベース（１２１）または前記抹消履歴データベース（１２２）に登録されているか否かを判定する処理を行い、前記顧客登録データベース（１２１）および前記抹消履歴データベース（１２２）に登録されていないと判定した顧客コードを前記空き顧客コードとして抽出することを特徴とする［４］記載の顧客コード管理装置。
例えば、前記登録抹消の対象とされた顧客コードが入力手段（１０）に入力され、当該入力手段（１０）に入力された顧客コードを前記取得手段（１１８）が取得し、前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した前記登録抹消の対象とされた顧客コードに当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行い、前記削除手段（１１３）は、前記所定期間としての保存期間を示す保存期間情報を保持する保持手段を有しており、前記保持手段に保持された保存期間情報と前記抹消履歴データベース（１２２）に登録された前記顧客コードと当該顧客コードに関連付けられた履歴情報に基づき、前記履歴情報が示す経過期間と前記保存期間情報が示す保存期間とを比較して前記抹消履歴データベース（１２２）に登録された前記履歴情報のうち前記経過期間が前記保存期間よりも長い履歴情報を検出し、検出した当該履歴情報に関連付けされた顧客コードを前記抹消履歴データベース（１２２）から削除する処理を行い、前記空き顧客コード抽出手段（１１４）は、前記一定範囲の各顧客コードについて前記顧客登録データベース（１２１）または前記抹消履歴データベース（１２２）に登録されているか否かを判定する処理を行い、前記顧客登録データベース（１２１）および前記抹消履歴データベース（１２２）に登録されていないと判定した顧客コードを前記空き顧客コードとして抽出する構成としてもよい。
【００１４】
［７］前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段（１１７）と、前記顧客コード割当手段（１１７）が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段（１１５）とをさらに有し、前記顧客コード割当手段（１１７）は、前記スタートコード記憶手段（１１５）に記憶されている顧客コードを起点として、前記空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得することを特徴とする［１］〜［６］の何れかに記載の顧客コード管理装置。
【００１５】
スタートコード記憶手段（１１５）は、顧客コード割当手段（１１７）が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶し、顧客コード割当手段（１１７）は、スタートコード記憶手段（１１５）に記憶されている顧客コードを起点として、空き顧客コードの中から新規顧客に割り当てるべき新規の顧客コードを取得する。このように顧客コード割当手段（１１７）は、スタートコード記憶手段（１１５）に記憶されている顧客コードを利用して、前回に割り当てられた顧客コードの次の顧客コードを得ることが可能である。なお、一例として顧客コードを数値とした場合に、第一の顧客コードに対して第一の顧客コードをインクリメントした第二の顧客コードを、第一の顧客コードに次ぐ顧客コードとしてもよい。
【００１６】
［８］前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードが連続している範囲である各ブロックを、当該各ブロックの先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベース（１２３）に登録する処理を行う空き顧客コード登録手段（１１６）をさらに有し、前記顧客コード割当手段（１１７）は、前記空き顧客コードデータベース（１２３）に登録されているブロックに含まれる空き顧客コードの中から、前記スタートコード記憶手段（１１５）に記憶されている顧客コードを起点として、新規顧客に割り当てるべき一の顧客コードを取得することを特徴とする［７］記載の顧客コード管理装置。
例えば、空き顧客コード登録手段（１１６）は、前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードを示す情報を前記空き顧客コード抽出手段（１１４）から取得し、前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードが連続している範囲である各ブロックを、当該各ブロックの先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベース（１２３）に登録する処理を行い、前記顧客コード割当手段（１１７）は、前記空き顧客コードデータベース（１２３）に登録されているブロックに含まれる空き顧客コードの中から、前記スタートコード記憶手段（１１５）に記憶されている顧客コードを起点として、新規顧客に割り当てるべき新規の顧客コードを取得する構成としてもよい。
【００１７】
空き顧客コード登録手段（１１６）は、空き顧客コード抽出手段（１１４）が抽出した空き顧客コードが連続している範囲である各ブロックを、当該各ブロックの先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベース（１２３）に登録する処理を行う。このように、空き顧客コードを「自至」を用いたブロック情報によって登録することで、空き顧客コードの登録に要するデータ量を減らすことができ、これに伴って新規顧客に割り当てるべき空き顧客コードを空き顧客コードデータベース（１２３）から取得するために要する時間を短縮することが可能となる。
【００１８】
［９］前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードが連続している範囲である各ブロックを順位付けするとともに、当該各ブロックをその先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベース（１２３）に登録する処理を行う空き顧客コード登録手段（１１６）と、前記空き顧客コードデータベース（１２３）に登録されているブロックに含まれる空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段（１１７）とをさらに有し、前記空き顧客コード登録手段（１１６）は、前記顧客コード割当手段（１１７）が取得した最新の顧客コードを含むブロックから前記一定範囲を一巡するように前記各ブロックの順序付けを行い、前記顧客コード割当手段（１１７）は、前記順位付けされた各ブロックについて順位の高いブロックにある空き顧客コードから順に新規顧客に割り当てるべき一の顧客コードを取得することを特徴とする［４］〜［６］の何れかに記載の顧客コード管理装置。
例えば、前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードを示す情報を前記空き顧客コード抽出手段（１１４）から取得し、前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードが連続している範囲である各ブロックを順位付けするとともに、当該各ブロックをその先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベース（１２３）に登録する処理を行う空き顧客コード登録手段（１１６）と、前記空き顧客コードデータベース（１２３）に登録されているブロックに含まれる空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段（１１７）とをさらに有し、前記空き顧客コード登録手段（１１６）は、前記顧客コード割当手段（１１７）が取得した最新の顧客コードを含むブロックから前記一定範囲を一巡するように前記各ブロックの順序付けを行い、前記顧客コード割当手段（１１７）は、前記順位付けされた各ブロックについて順位の高いブロックの先頭にある空き顧客コードから順に新規顧客に割り当てるべき一の顧客コードを取得する構成としてもよい。
【００１９】
なお、空き顧客コード登録手段（１１６）は、顧客コード割当手段（１１７）が取得した最新の顧客コードを含むブロックから上記一定範囲を一巡するように各ブロックの順位付けを行い、例えば各ブロックに順位を示すフラグを付与する構成としてもよい。顧客コード割当手段（１１７）は、順位付けされた各ブロックについて順位の高い順に且つブロックの先頭にある空き顧客コードから順に、新規顧客に割り当てるべき顧客コードを取得することで、一定範囲を巡るように空き顧客コードを順次取得することができる。
【００２０】
［１０］前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードが連続している範囲である各ブロックを順位付けするとともに、当該各ブロックをその先頭と末尾の空き顧客コードで表したブロック情報によって空き顧客コードデータベース（１２３）に登録する処理を行う空き顧客コード登録手段（１１６）と、前記空き顧客コードデータベース（１２３）に登録されているブロックに含まれる空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段（１１７）と、前記顧客コード割当手段（１１７）が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段（１１５）とをさらに有し、前記空き顧客コード登録手段（１１６）は、前記スタートコード記憶手段（１１５）に記憶されている顧客コードと前記空き顧客コードデータベース（１２３）に登録されている情報から、前記最新の顧客コードの次に割り当てるべき新規の顧客コードを検出し、検出した当該顧客コードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを行い、前記顧客コード割当手段（１１７）は、前記順位付けされた各ブロックについて順位の高いブロックの先頭にある空き顧客コードから順に新規顧客に割り当てるべき一の顧客コードを取得することを特徴とする［４］〜［６］の何れかに記載の顧客コード管理装置。
【００２１】
なお、前記空き顧客コード登録手段（１１６）は、前記スタートコード記憶手段（１１５）に記憶されている顧客コードであるスタートコードと前記空き顧客コードデータベース（１２３）に登録されている情報に基づき、空き顧客コードデータベース（１２３）に上記スタートコードを含むブロックがあるか否かを判定する処理を行い、上記スタートコードを含むブロックがあると判定した場合は前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして前記スタートコードを検出し、検出した当該スタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを行い、上記スタートコードを含むブロックがないと判定した場合は、当該スタートコードに次ぐ顧客コードである次点スタートコードを含むブロックがあるか否かを判定する処理を行い、当該次点スタートコードを含むブロックがあると判定したときは前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして前記次点スタートコードを検出し、検出した当該次点スタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを行い、上記次点スタートコードを含むブロックがないと判定したときは、当該次点スタートコードに次ぐ顧客コードである次々点スタートコードを含むブロックがあるか否かを判定する処理を行い、当該次々点スタートコードを含むブロックがあると判定したときは前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして前記次々点スタートコードを検出し、検出した当該次々点スタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを行い、このようにブロックに含まれるスタートコードが得られるまでスタートコードの更新を繰り返して当該ブロックの顧客コードから前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして前記更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを行ってもよく、各ブロックの順位付けでは例えば各ブロックに順位を示すフラグを付与する構成としてもよい。顧客コード割当手段（１１７）は、順位付けされた各ブロックについて順位の高い順に且つブロックの先頭にある空き顧客コードから順に、新規顧客に割り当てるべき顧客コードを取得することで、一定範囲を巡るように空き顧客コードを順次取得することができる。
【００２２】
［１１］前記空き顧客コード登録手段（１１６）は、前記スタートコード記憶手段（１１５）に記憶されている顧客コードであるスタートコードと前記空き顧客コードデータベース（１２３）に登録されている情報に基づき、空き顧客コードデータベース（１２３）に前記スタートコードを含むブロックがあるか否かを判定する処理を行い、前記スタートコードを含むブロックがあると判定した場合は、前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして前記スタートコードを検出し、検出した当該スタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを前記各ブロックに順位を示すフラグを付与することにより行い、前記スタートコードを含むブロックが前記空き顧客コードデータベース（１２３）にないと判定した場合は、当該スタートコードに次ぐ顧客コードに前記スタートコードを更新し、更新後のスタートコードを含むブロックがあるか否かを判定する処理を行い、当該更新後のスタートコードを含むブロックがあると判定したときは前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを前記各ブロックに順位を示すフラグを付与することにより行い、当該更新後のスタートコードを含むブロックが前記空き顧客コードデータベース（１２３）にないと判定したときは、ブロックに含まれるスタートコードが得られるまでスタートコードの更新を繰り返して前記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして前記一定範囲を一巡するように前記各ブロックの順序付けを前記各ブロックに順位を示すフラグを付与することにより行うことを特徴とする［１０］に記載の顧客コード管理装置。
【００２３】
［１２］前記空き顧客コード抽出手段（１１４）が抽出した前記空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段（１１７）と、前記顧客コード割当手段（１１７）が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段（１１５）とをさらに有し、前記顧客コード割当手段（１１７）は、前記スタートコード記憶手段（１１５）に記憶されている顧客コードを起点として、前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得し、前記顧客コード登録手段（１１１）は、前記新規顧客の顧客情報と当該新規顧客に割り当てるべき前記一の顧客コードとを関連付けて前記顧客登録データベース（１２１）に登録する処理を行うことを特徴とする［４］〜［６］の何れかに記載の顧客コード管理装置。
例えば、前記空き顧客コード抽出手段（１１４）が抽出した前記空き顧客コードの中から新規顧客に割り当てるべき一の顧客コードを取得する顧客コード割当手段（１１７）と、前記顧客コード割当手段（１１７）が取得した最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するスタートコード記憶手段（１１５）とをさらに有し、前記顧客コード割当手段（１１７）は、前記スタートコード記憶手段（１１５）に記憶されている顧客コードを起点として、前記空き顧客コード抽出手段（１１４）が抽出した空き顧客コードの中から新規顧客に割り当てるべき新規の顧客コードを取得し、前記新規顧客の氏名等の顧客情報が入力手段（１０）に入力され、当該入力手段（１０）に入力された顧客情報を前記取得手段（１１８）が取得し、前記顧客コード登録手段（１１１）は、前記取得手段（１１８）が取得した前記新規顧客の顧客情報と当該新規顧客に割り当てるべき前記新規の顧客コードとを関連付けて前記顧客登録データベース（１２１）に登録する処理を行う構成としてもよい。
【００２４】
［１３］前記顧客は、金融機関の顧客であり、前記顧客の顧客コードは、前記金融機関における当該顧客の口座番号であり、前記顧客コード登録手段（１１１）は、顧客の口座番号を前記顧客登録データベース（１２１）に登録する処理を行うことにより当該顧客の口座を開設し、前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した前記登録抹消の対象とされた口座番号を前記顧客登録データベース（１２１）から削除する処理を行うことにより当該口座番号の顧客の口座を抹消し、前記空き顧客コード抽出手段（１１４）は、前記金融機関の営業日毎にかつ営業開始時間前に、前記空き顧客コードである空き口座番号の抽出を行うことを特徴とする［４］〜［１２］の何れかに記載の顧客コード管理装置。
【００２５】
空き顧客コードの抽出を、営業日毎にかつ営業開始時間前に行うものでは、営業に支障をきたすことを防ぎつつ、当該営業日に上記所定期間が経過した最新の空き顧客コードを営業開始時間前に得ることが可能となる。
【００２６】
［１４］前記顧客登録データベース（１２１）に顧客の顧客コードを登録する処理を行う顧客コード登録手段（１１１）をさらに有し、前記顧客は、金融機関の顧客であり、前記顧客の顧客コードは、前記金融機関における当該顧客の口座番号であり、前記顧客コード登録手段（１１１）は、顧客の口座番号を前記顧客登録データベース（１２１）に登録する処理を行うことにより当該顧客の口座を開設し、前記抹消履歴登録手段（１１２）は、前記取得手段（１１８）が取得した前記登録抹消の対象とされた口座番号を前記顧客登録データベース（１２１）から削除する処理を行うことにより当該口座番号の顧客の口座を抹消し、前記空き顧客コード抽出手段（１１４）は、前記金融機関の営業日毎にかつ営業開始時間前に、前記空き顧客コードである空き口座番号の抽出を行うことを特徴とする［１］〜［３］の何れかに記載の顧客コード管理装置。
【００２７】
［１５］コンピュータを、顧客の顧客コードを登録する顧客登録データベース（１２１）を用いて、顧客コードの登録及び抹消を管理する顧客コード管理装置であって、登録抹消の対象とされた顧客コードを取得する取得手段（１１８）と、前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日または当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行う抹消履歴登録手段（１１２）と、前記抹消履歴データベース（１２２）に登録された情報に基づき、前記抹消履歴データベース（１２２）に登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段（１１４）とを有するものとして機能させることを特徴とする顧客コード管理用プログラム。すなわち、コンピュータを、［１］記載の顧客コード管理装置として機能させることを特徴とする顧客コード管理用プログラムである。
【００２８】
［１６］コンピュータを、一定範囲の顧客コードの登録及び抹消を管理する顧客コード管理装置であって、顧客の顧客コードを顧客登録データベース（１２１）に登録する処理を行う顧客コード登録手段（１１１）と、登録抹消の対象とされた顧客コードを取得する取得手段（１１８）と、前記顧客登録データベース（１２１）に登録された前記顧客コードのうち前記取得手段（１１８）が取得した顧客コードを前記顧客登録データベース（１２１）から削除する処理を行うとともに、前記取得手段（１１８）が取得した顧客コードに当該削除日又は当該削除日からの経過期間を示す履歴情報を関連付けて抹消履歴データベース（１２２）に登録する処理を行う抹消履歴登録手段（１１２）と、前記抹消履歴データベース（１２２）に登録された情報に基づき、前記抹消履歴データベース（１２２）に登録された顧客コードのうち前記削除日から所定期間が経過した顧客コードを、前記抹消履歴データベース（１２２）から削除する処理を行う削除手段（１１３）と、前記顧客登録データベース（１２１）に登録されている顧客コードと前記抹消履歴データベース（１２２）に登録されている顧客コードとを前記一定範囲の顧客コードから除外したものを、新規顧客に割当可能な空き顧客コードとして抽出する空き顧客コード抽出手段（１１４）とを有するものとして機能させることを特徴とする顧客コード管理用プログラム。すなわち、コンピュータを、［４］記載の顧客コード管理装置として機能させることを特徴とする顧客コード管理用プログラムである。これらのように、コンピュータを、［１］〜［１４］の何れかに記載の顧客コード管理装置として機能させることを特徴とする顧客コード管理用プログラムも本発明に含まれるものである。
【発明の効果】
【００２９】
本発明に係る顧客コード管理装置及び顧客コード管理用プログラムによれば、削除日から所定期間が経過した顧客コードが空き顧客コードとして抽出されるので、登録抹消されていた顧客コードの中から新規顧客に割当可能な顧客コードを得ることができると共に、登録抹消されていた顧客コードの再利用に伴う事務作業の負担を軽減することができ、顧客コードの割当てに要する時間を短縮することが可能となる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の一実施の形態を、図面を参照して説明する。  
図１は、本発明の一実施の形態にかかる顧客コード管理装置１１０の構成を示している。顧客コード管理装置１１０は、金融機関の一例である証券会社のホストコンピュータ１００が果たす一部の機能として実現されている。ホストコンピュータ１００には、証券会社の本店及び支店の入出力端末装置１０が直接またはネットワークを介して多数接続される。
【００３１】
この証券会社の顧客には、それぞれ顧客を一意に特定するための顧客コードが割り当てられ、顧客コードに基づいて顧客管理や口座開設が行なわれる。顧客コードは、例えば５桁の数字が用いられ、社内顧客（社員）と社外顧客を区別するなどの理由から、区分毎に利用可能な顧客コードの範囲（制限範囲）がさらに制限されている。一例を示せば、社内顧客には１００００〜２９９９９の範囲内で、社外顧客には３００００〜９９９９９の範囲内の顧客コードを割り当てる等である。
【００３２】
本店又は支店の担当者が、新規顧客の口座を開設する際に入出力端末装置１０に新規顧客の住所・氏名・連絡先等の顧客情報を入力し、入出力端末装置１０から新規顧客の顧客情報と口座開設要求（又は新規顧客登録要求）を示す口座開設要求情報（又は新規顧客登録要求情報）をホストコンピュータ１００に送信すると、入出力端末装置１０からの新規顧客の顧客情報と口座開設要求情報（又は新規顧客登録要求情報）をホストコンピュータ１００が受信し、これに応じて顧客コード管理装置１１０が利用可能な顧客コードの中から適当なものを新規の顧客に割り当てるようになっている。ところで、証券会社では、顧客登録データベース１２１に顧客登録されている現在の顧客の顧客情報を保有しているほか、登録抹消の対象とされた顧客についても、法律に基づき、登録抹消後の所定期間たとえば１０年間は顧客情報を保存するようになっている。したがって、新規顧客に割当可能な顧客コードとしては、予め定めた制限範囲の顧客コードを用いる場合には、現在の顧客の顧客コードと登録抹消後の所定期間を経過していない保存期間中の顧客コードとを、上記制限範囲の顧客コードから除いたものを用いればよい。
【００３３】
顧客コード管理装置１１０は、顧客コード登録手段１１１と、抹消履歴登録手段１１２と、削除手段１１３と、空き顧客コード抽出手段１１４と、スタートコード記憶手段１１５と、空き顧客コード登録手段１１６と、顧客コード割当手段１１７と、取得手段１１８の各機能を果たす。また顧客コード管理装置１１０は、顧客登録マスタデータベース１２１と、抹消履歴データベース１２２と、空き顧客コードデータベース１２３とを備えている。
【００３４】
顧客登録マスタデータベース１２１は、現在の顧客の顧客情報をその顧客の顧客コードに対応付けて登録し記憶するものであり、顧客コードと顧客情報と登録日を示す情報を関連付けて記憶する。顧客コード登録手段１１１は、顧客登録マスタデータベース１２１に対する顧客コード、顧客情報、及び登録日の登録、読出、削除等の処理を行う。抹消履歴登録手段１１２は、顧客登録マスタデータベース１２１に登録された顧客コード及び顧客情報等のうち登録抹消の対象とされた顧客コード及び顧客情報等を顧客登録マスタデータベース１２１から読み出す処理と読出後に削除する処理を行う。例えば本店又は支店の担当者が一定期間以上取引のない顧客の顧客コード及び顧客情報等を顧客登録マスタデータベース１２１から削除することで当該顧客の口座を抹消する場合に、当該本店又は支店の担当者が入出力端末装置１０に登録抹消の対象となる顧客コードと口座抹消要求（又は登録抹消要求）を示す口座抹消要求情報（又は登録抹消要求情報）を入力すると、当該端末装置１０の入力情報を取得手段１１８が受信し、抹消履歴登録手段１１２は取得手段１１８が受信した入力情報に基づき、登録抹消の対象とされた顧客コード及び当該顧客コードに関連付けされた顧客情報等を顧客登録マスタデータベース１２１から読み出して保持し、登録抹消の対象とされた顧客コード及び当該顧客コードに関連付けされた顧客情報等を顧客登録マスタデータベース１２１から削除処理し、上記保持している登録抹消の対象とされた顧客コード及び当該顧客コードに関連付けされた顧客情報等を削除日または削除日からの経過期間を示す履歴情報に関連付けて抹消履歴データベース１２２に登録する処理を行う。抹消履歴データベース１２２は、登録抹消の対象とされた顧客の顧客コード及び当該顧客の顧客情報等を保存するためのデータベースである。
【００３５】
一例として、顧客登録マスタデータベース１２１は、リレーショナルデータベース（ＲＤＢ）の構成を有し、顧客コード毎にレコードが割り当てられており、レコードはレコード識別情報を格納するための識別情報格納フィールドと、顧客コードを格納するための顧客コード格納フィールドと、顧客情報を格納するための顧客情報格納フィールドと、新規顧客の登録日を示す新規登録日情報を格納するための新規登録日情報格納フィールドを有することで、レコード内のレコード識別情報と顧客コードと顧客情報と新規登録日情報を関連付ける構成としてもよい。これにより、顧客コードが指定されると、顧客登録マスタデータベース１２１の各顧客コード格納フィールドを検索して当該顧客コードを格納した顧客コード格納フィールドを含むレコードの識別情報を検出することで当該顧客コードを格納したレコードにアクセスすることが可能であり、具体的には指定された顧客コードを格納している顧客コード格納フィールドのレコードにおけるレコード識別情報を検出し、検出したレコード識別情報のレコードの格納情報を読み出すことで、読み出したレコードの格納情報から顧客コードとこの顧客コードに関連付けされた顧客情報及び登録日情報（新規登録日情報）を取得することができる。
【００３６】
抹消履歴データベース１２２は、登録抹消の対象とされた顧客の顧客コードに、当該抹消日または当該抹消日からの経過期間を示す履歴情報やその他の顧客情報を関連付けて登録している。抹消履歴登録手段１１２は、顧客登録マスタデータベース１２１から削除処理された顧客コード、顧客情報及び新規登録日情報を抹消履歴データベース１２２に登録する機能を果たし、例えば取得手段１１８が取得した登録抹消の対象とされた顧客コードを取得手段１１８から取得し、取得した顧客コードに基づいて顧客登録マスタデータベース１２１から当該顧客コードに対応付けされた顧客情報及び新規登録日情報を読み出して抹消履歴登録手段１１２の不図示の記憶手段（例えば内部メモリ）に保持し、次に当該登録抹消の対象とされた顧客コードと当該顧客コードに関連付けされた顧客情報及び新規登録日情報を顧客登録マスタデータベース１２１から削除処理し、又は、当該登録抹消の対象とされた顧客コードを顧客コード格納フィールドに含むレコードの格納情報を顧客登録マスタデータベース１２１から削除処理し、次に上記記憶手段に保持されている顧客コードとこれに関連付けられている顧客情報及び新規登録日情報と削除日を示す履歴情報とを関連付けて抹消履歴データベース１２２に登録する処理を行う構成としてもよい。なお、取得手段１１８は、入出力端末装置１０から取得した入力情報に顧客コードと登録抹消要求情報が含まれているか否かを判定する処理を行い、入力情報に顧客コードと登録抹消要求情報が含まれていると判定した場合に、顧客コードを抹消履歴登録手段１１２に提供する構成としてもよい。
【００３７】
削除手段１１３は、登録抹消後の所定期間たとえば１０年の保存期間を経過した顧客にかかわる顧客コード及び当該顧客コードに関連付けされた顧客情報等を抹消履歴データベース１２２から削除する機能を果たす。例えば、削除手段１１３は、抹消履歴データベース１２２から顧客コードとこの顧客コードに関連付けされた履歴情報等を読み出し、読み出した履歴情報に基づき削除日から所定期間が経過しているか否かを判定する処理を行い、所定期間が経過していると判定した顧客コードと当該顧客コードに関連付けされた顧客情報、新規登録日情報、及び履歴情報等を抹消履歴データベース１２２から削除処理する構成としてもよい。
【００３８】
一例として、抹消履歴データベース１２２は、リレーショナルデータベース（ＲＤＢ）の構成を有し、登録抹消の対象とされた顧客コード毎にレコードが割り当てられており、レコードはレコード識別情報を格納するための識別情報格納フィールドと、顧客コードを格納するための顧客コード格納フィールドと、顧客情報を格納するための顧客情報格納フィールドと、新規登録日情報を格納するための新規登録日情報格納フィールドと、削除日または削除日からの経過期間を示す履歴情報を格納するための履歴情報格納フィールドを有することで、レコード内のレコード識別情報と顧客コードと顧客情報と新規登録日情報と履歴情報を関連付ける構成としてもよい。これにより、顧客コードが指定されると、抹消履歴データベース１２２の各顧客コード格納フィールドを検索して当該顧客コードを格納した顧客コード格納フィールドを含むレコードの識別情報を検出することで当該顧客コードを格納したレコードにアクセスすることが可能であり、指定された顧客コードを格納している顧客コード格納フィールドのレコードにおけるレコード識別情報を検出し、検出したレコード識別情報のレコードの格納情報を読み出すことで、読み出したレコードの格納情報から顧客コードとこの顧客コードに関連付けされた顧客情報と新規登録日情報と履歴情報を取得することができる。
【００３９】
空き顧客コード抽出手段１１４は、顧客登録マスタデータベース１２１と抹消履歴データベース１２２の登録内容に基づいて、顧客登録マスタデータベース１２１に登録されている現在の顧客の顧客コードと抹消履歴データベース１２２に登録されている登録抹消日である削除日から所定期間を経過していない保存期間中の顧客コードとを予め定めた一定の制限範囲の顧客コードから除外したものを、新規顧客に割当可能な空き顧客コードとして抽出する機能を果たす。例えば、空き顧客コード抽出手段１１４は、制限範囲の顧客コードにおける最初の顧客コードから最後の顧客コードまでの各顧客コードについて、顧客登録マスタデータベース１２１又は抹消履歴データベース１２２に登録されているか否かを判定する処理を行い、顧客登録マスタデータベース１２１及び抹消履歴データベース１２２に登録されていないと判定した顧客コードを、新規顧客に割当可能な空き顧客コードとして抽出する構成としてもよい。なお、空き顧客コード抽出手段１１４または削除手段１１３は所定期間としての保存期間を示す保存期間情報を保持する保持手段を有する構成として、抹消履歴データベース１２２の各レコードにアクセスしてレコードの格納情報を読み出し、このレコードの識別情報格納フィールドと顧客コード格納フィールドと履歴情報格納フィールドから上記関連付けられたレコード識別情報と顧客コードと履歴情報を抽出し、抽出した履歴情報が示す削除日からの経過期間と保存期間情報が示す保存期間とを比較し、経過期間が保存期間よりも長い場合に経過期間が保存期間よりも長い当該履歴情報に関連付けされた顧客コードを空き顧客コードとして抽出することも可能であり、また経過期間が保存期間よりも長い当該履歴情報に関連付けされたレコード識別情報のレコードの格納情報を抹消履歴データベース１２２から削除処理することで、抹消履歴データベース１２２のデータ量を削減することも可能である。なお、空き顧客コード抽出手段１１４に削除手段１１３の機能を持たせて空き顧客コード抽出手段１１４と削除手段１１３をまとめた構成としてもよい。
【００４０】
スタートコード記憶手段１１５は、顧客コード割当手段１１７が取得した新規顧客に割り当てるべき最新の顧客コードまたは当該顧客コードに次ぐ顧客コードを記憶するものであり、顧客コード割当手段１１７によって記憶内容が更新される。一例として顧客コード割当手段１１７が取得した新規顧客に割り当てるべき最新の顧客コードに次ぐ顧客コードをスタートコードとして記憶し、例えば、新規顧客に割り当てるべき最新の顧客コードが１２０である場合は、１２１をスタートコードとして記憶してもよく、スタートコードは空き顧客コードでないこともある。
【００４１】
空き顧客コード登録手段１１６は、空き顧客コード抽出手段１１４が抽出した空き顧客コードが連続している範囲である各ブロックを順位付けすると共に各ブロックをその先頭と末尾の空き顧客コードで表したブロック情報により空き顧客コードデータベース１２３に登録する機能を果たす。例えば空き顧客コード抽出手段１１４が抽出した空き顧客コードをソートして第一の内部メモリに記憶し、第一の内部メモリに記憶されているソートされた空き顧客コードについてコードが連続しているか否かを順次判定し、コードが連続していると判定した一連の空き顧客コードからなる各ブロックをその先頭と末尾の空き顧客コードによりブロック情報として表すと共に各ブロックを示すブロック情報を連続する方向に順位付けし、各ブロック情報とその順位とを関連付けて空き顧客コードデータベース１２３に登録処理する構成としてもよい。
【００４２】
この空き顧客コード登録手段１１６は、スタートコード記憶手段１１５に記憶されている顧客コードと空き顧客コードデータベース１２３に登録されている情報から、顧客コード割当手段１１７が上記最新の顧客コードの次に割り当てるべき顧客コードを検出し、検出した顧客コードを含むブロックを先頭にして上記制限範囲を一巡するように各ブロック情報の順位付けを行ってもよく、顧客コード割当手段１１７が取得した最新の顧客コードを含むブロックから上記制限範囲を一巡するように各ブロックの順序付けを行ってもよい。例えばスタートコード記憶手段１１５が記憶しているスタートコードを起点として上記次に割り当てるべき空き顧客コードを検出し、検出した空き顧客コードを含むブロック（ブロック情報）を第一順位とし、後続のブロックにも順位を順次付与し、制限範囲において連続する方向の最後のブロックに順位を付与するに至ると、制限範囲において連続する方向の最初のブロックの順位を、上記最後のブロックの次の順位とし、当該最初のブロックの後続のブロックにも順位を順次付与し、当該検出した空き顧客コードを含むブロックの直前にあるブロックに順位を付与するに至る構成としてもよい。なお、空き顧客コード登録登録手段１１６は、空き顧客コードデータベース１２３における上記検出した空き顧客コードを含むブロックにつき、当該ブロックを示すブロック情報の先頭コードが当該検出した空き顧客コードとなるように書き換える処理を行う構成としてもよい。
【００４３】
顧客コード割当手段１１７は、入出力端末装置１０から新規顧客の顧客登録要求（例えば新規口座の開設要求）があった場合に、空き顧客コードデータベース１２３を参照して空き顧客コードを取得して新規顧客に割り当てる機能を果たす。例えば、顧客コード割当手段１１７は、空き顧客コードデータベース１２３に登録されているブロックに含まれる空き顧客コードから、新規顧客に割り当てるべき一の顧客コードを取得し、本実施形態では先頭ブロックの先頭にある空き顧客コードから順に新規顧客に割り当てるべき一の顧客コードを取得する。先頭ブロックの先頭にある空き顧客コードを、空き顧客コード登録手段１１６によりスタートコードを起点として検出した空き顧客コードとすることで、顧客コード割当手段１１７は先頭ブロックの先頭にある空き顧客コードを取得することによりスタートコードを起点として新規顧客に割り当てるべき一の顧客コードを取得することができる。
【００４４】
なお、図示省略したタイマ起動部により、削除手段１１３による顧客コードの削除処理と、空き顧客コード抽出手段１１４による空き顧客コードの抽出処理と、空き顧客コード登録手段１１６による空き顧客コードの各ブロックの登録処理とを、営業日毎にかつ夜間などの非営業時間帯に行い、空き顧客コードデータベース１２３の登録内容が自動的に再編されるようになっている。削除手段１１３による顧客コードの削除処理と、空き顧客コード抽出手段１１４による空き顧客コードの抽出処理を、営業日毎にかつ営業開始時間前に行うことで、当該営業日までに所定の保存期間を経過した最新の空き顧客コードを営業開始時間前に抽出することができ、さらに空き顧客コードデータベース１２３への各ブロックの登録処理を、営業日毎にかつ営業開始時間前に行うことで、当該営業日に所定の保存期間を経過した最新の空き顧客コードを空き顧客コードデータベース１２３のブロック情報に含めることができ、当該最新の空き顧客コードを新規顧客に割り当てることが可能になる。
【００４５】
図２は、空き顧客コードを再編する際の処理の流れの一例を示している。なお、タイマ起動部を用いて、営業終了後の夜間にこの処理が起動される構成としてもよいが、営業日の営業開始時間前にこの処理が起動される構成としてもよい。まず、削除手段１１３は、登録抹消日に相当する顧客登録マスタデータベース１２１からの顧客コード削除日から所定期間が経過した顧客コード及び当該顧客コードに関連付けされた顧客情報と新規登録日情報と履歴情報を、抹消履歴データベース１２２から削除処理する（ステップＳ２０１）。次に空き顧客コード抽出手段１１４は、顧客登録マスタデータベース１２１から現在の顧客の顧客コードを読み出して取得し（ステップＳ２０２）、さらに抹消履歴データベース１２２に登録されている保存期間中の顧客コードを読み出して取得する（ステップＳ２０３）。この時点では、抹消履歴データベース１２２に登録されている顧客コードは登録抹消後の所定期間を経過していないものだけになっている。
【００４６】
空き顧客コード抽出手段１１４は、予め定めた一定の制限範囲の顧客コードから、顧客登録マスタデータベース１２１と抹消履歴データベース１２２から読み出した顧客コードを除いたものを、空き顧客コードとして抽出する（ステップＳ２０４）。空き顧客コード登録手段１１６は、空き顧客コード抽出手段１１４が抽出した空き顧客コードから、スタートコードを起点に、新規顧客に割り当てるべき新規の顧客コードを検出し、当該検出した一の顧客コードを含むブロックを先頭にして上記一定範囲を一巡するように各ブロックの順位付けを行うと共に各ブロックをブロック情報により空き顧客コードデータベース１２３に登録する処理を行う（ステップＳ２０５）。
【００４７】
図３は、上記処理に伴うデータの流れを示している。この例では、顧客コードのとり得る制限範囲を、説明を簡潔にする観点から１００番〜５９９番とした。現存顧客表２２０の内容を示す情報は、顧客登録マスタデータベース１２１に登録されている顧客コードとこれに関連付けされた新規登録日情報を抜き出して示したものであり、顧客の顧客情報としては例えば当該顧客の住所、氏名、電話番号等があるが図３では省略されており、顧客情報には当該顧客の年齢、職業などを更に加えることもできる。この例では、現在の顧客の顧客コードは、１０５番、１０６番、１０８番、１０９番、１１２番、及び１２０番である。この中で登録日が最新のものは１０９番であるので、スタートコード２４０はその次の番号である１１０番になっている。抹消顧客表２３０の内容を示す情報は、抹消履歴データベース１２２に登録されている、抹消日から所定期間を経過していない顧客コードとこれに関連付けされた履歴情報（抹消の年月日）を抜き出して示したものであり、履歴情報は削除の年月日を示している。この例では、所定期間（所定の保存期間）中の顧客コードは、１０１番と１０２番になっている。
【００４８】
空き番号リスト２５０は、１００番〜５９９番の制限範囲から現存顧客表２２０または抹消顧客表２３０に登録されているすべての顧客コードを除外した残りの番号を示しており、空き顧客コード抽出手段１１４が新規顧客に割当可能な空き顧客コードとして抽出したものであり、空き顧客コード抽出手段１１４内のメモリに空き番号リスト２５０の内容を示す情報を保持する構成とすることも可能である。この空き番号リスト２５０では、抽出された空き顧客コードを、制限範囲の先頭から番号順にソートしてある。なお、このソートによって、制限範囲内の最初の空き顧客コードと最後の空き顧客コードとが容易に認識できるようになっている。
【００４９】
この空き番号リスト２５０を、スタートコードを起点としてブロック情報の生成および順位付けしたものが空きブロックリスト２６０である。ここでは１１０番がスタートコードであるので、１１０番を起点として昇順に制限範囲を一巡する向きに探して最初に見つかる空き顧客コードを先頭ブロック２６１の先頭コードにする。この例では１１０番が空き顧客コードであるので１１０番を先頭ブロック２６１の先頭コードとしている。そして、１１０番から空き顧客コードが連続している範囲を１つのブロックとし、当該連続範囲の末尾の空き顧客コードをブロック２６１の末尾コードとする。ただし、当該連続範囲に制限範囲の最後の空き顧客コードが含まれる場合には、当該最後の空き顧客コードをブロックの末尾コードとしてブロックを区切るようになっており、本実施形態では最後の空き顧客コードと制限範囲の末尾コードとが一致しており５９９番となっている。
【００５０】
図３の空き番号リスト２５０に示す例では、空き顧客コード登録手段１１６は、空き顧客コードが１１０番と１１１番の２つの番号が連続しているので、第一順位のブロックである先頭ブロック２６１の末尾コードを１１１番とする。また、空き顧客コード登録手段１１６は、空き顧客コードが１１３番から１１９番まで番号が連続しているので、第二順位のブロックである第２ブロック２６２では先頭コードを１１３番にすると共に末尾コードを１１９番とする。また、空き顧客コード登録手段１１６は、空き顧客コードが１２１番から５９９番まで連続しているので、第三順位のブロックである第３ブロック２６３では先頭コードを１２１番にすると共に末尾コードを５９９番とする。空き顧客コード登録手段１１６は、第３ブロック２６３に制限範囲の最後の空き顧客コード５９９番が含まれることを検出し、当該最後の空き顧客コード５９９番で第３ブロック２６３を区切るようになっている。また、空き顧客コード登録手段１１６は、空き顧客コードとして１００番が単独で存在するので、第四順位のブロックである第４ブロックでは先頭コードを１００番にすると共に末尾コードを１００番とする。また、空き顧客コード登録手段１１６は、空き顧客コードが１０３番と１０４番の２つの番号が連続しているので、第五順位のブロックである第５ブロック２６５の先頭コードを１０３番にすると共に末尾コードを１０４番とする。また、空き顧客コード登録手段１１６は、空き顧客コードとして１０７番が単独で存在するので、第六順位のブロックである第６ブロック２６６の先頭コードを１０７番にすると共に末尾コードを１０７番とする。空き顧客コード登録手段１１６は、このようにして各ブロックを先頭コードと末尾コードのブロック情報２６０として順位に関連付けて空き顧客コードデータベース１２３に登録する。
【００５１】
一例として、空き顧客コードデータベース１２３は、リレーショナルデータベース（ＲＤＢ）の構成を有し、ブロック毎にレコードが割り当てられており、レコードはレコード識別情報を格納するための識別情報格納フィールドと、ブロックの先頭コードを格納するための先頭コード格納フィールドと、ブロックの末尾コードを格納するための末尾コード格納フィールドと、ブロックの順位を示す順位情報を格納するための順位情報格納フィールドを有することで、レコード内のレコード識別情報とブロックの先頭コードと当該ブロックの末尾コードと当該ブロックの順位情報とを関連付ける構成としてもよく、順位情報格納フィールドに順位情報を示すフラグを格納してもよい。例えば図３の空きブロックリストでは、レコード識別情報２６１のレコードにおいて先頭コード格納フィールドに「１１０」を格納するとともに末尾コード格納フィールドに「１１１」を格納し、順位情報格納フィールドに「１」を格納し、レコード識別情報２６２のレコードにおいて先頭コード格納フィールドに「１１３」を格納するとともに末尾コード格納フィールドに「１１９」を格納し、順位情報格納フィールドに「２」を格納し、レコード識別情報２６３のレコードにおいて先頭コード格納フィールドに「１２１」を格納するとともに末尾コード格納フィールドに「５９９」を格納し、順位情報格納フィールドに「３」を格納し、レコード識別情報２６４のレコードにおいて先頭コード格納フィールドに「１００」を格納するとともに末尾コード格納フィールドに「１００」を格納し、順位情報格納フィールドに「４」を格納し、レコード識別情報２６５のレコードにおいて先頭コード格納フィールドに「１０３」を格納するとともに末尾コード格納フィールドに「１０４」を格納し、順位情報格納フィールドに「５」を格納し、レコード識別情報２６６のレコードにおいて先頭コード格納フィールドに「１０７」を格納するとともに末尾コード格納フィールドに「１０７」を格納し、順位情報格納フィールドに「６」を格納してもよい。
【００５２】
なお、空き顧客コード登録手段１１６は、スタートコード記憶手段１１５に記憶されている顧客コードであるスタートコードと空き顧客コードデータベース１２３に登録されている情報に基づき、空き顧客コードデータベース１２３にスタートコードを含むブロックがあるか否かを判定する処理を行い、上記スタートコードを含むブロックがあると判定した場合は、上記最新の顧客コードの次に割り当てるべき新規の顧客コードとして上記スタートコードを検出し、検出した当該スタートコードを含むブロックを先頭にして上記一定範囲を一巡するように各ブロックの順序付けを各ブロックに順位を示すフラグを付与することにより行い、上記スタートコードを含むブロックが空き顧客コードデータベース１２３にないと判定した場合は、当該スタートコードに次ぐ顧客コードにスタートコードを更新し、更新後のスタートコードを含むブロックがあるか否かを判定する処理を行い、当該更新後のスタートコードを含むブロックがあると判定した場合は上記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして上記一定範囲を一巡するように各ブロックの順序付けを各ブロックに順位を示すフラグを付与することにより行い、当該更新後のスタートコードを含むブロックが空き顧客コードデータベース１２３にないと判定した場合は、ブロックに含まれるスタートコードが得られるまでスタートコードの更新を繰り返して上記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコードを検出し、検出した当該更新後のスタートコードを含むブロックを先頭にして上記一定範囲を一巡するように各ブロックの順序付けを各ブロックに順位を示すフラグを付与することにより行う構成としてもよい。
【００５３】
例えば後述の図５において、空き顧客コード登録手段１１６は、スタートコード記憶手段１１５に記憶されている顧客コードであるスタートコードが１１２番である場合に、空き顧客コードデータベース１２３にスタートコード１１２番を含むブロックがあるか否かを判定する処理を行い、上記スタートコード１１２番を含むブロックがあると判定した場合は、上記最新の顧客コードの次に割り当てるべき新規の顧客コードとして上記スタートコード１１２番を検出し、検出した当該スタートコード１１２番を含むブロックを先頭にして上記一定範囲を一巡するように各ブロックの順序付けを各ブロックに順位を示すフラグを付与することにより行い、上記スタートコード１１２番を含むブロックが空き顧客コードデータベース１２３にないと判定した場合は、当該スタートコード１１２番に次ぐ顧客コード１１３番にスタートコードを更新し、更新後のスタートコード１１３番を含むブロックがあるか否かを判定する処理を行い、当該更新後のスタートコード１１３番を含むブロック２６２があると判定した場合は上記最新の顧客コードの次に割り当てるべき新規の顧客コードとして当該更新後のスタートコード１１３番を検出し、検出した当該更新後のスタートコード１１３番を含むブロック２６２を先頭にして上記一定範囲を一巡するように各ブロックの順序付けを各ブロックに順位を示すフラグを付与することにより行う構成としてもよい。
【００５４】
図４は、新規顧客に割り当てるべき顧客コードを取得する際の処理の流れの一例を示している。顧客コード割当手段１１７は、空き顧客コードデータベース１２３に登録されている空きブロックリスト２６０の先頭ブロックの先頭コードを、新規顧客に割り当てるべき一の顧客コードとして取得し（ステップＳ３０１）、取得完了信号を生成する。この取得完了信号に基づき、空き顧客コード登録手段１１６は、先頭ブロックの先頭コードと末尾コードが同じか否かを判定する処理を行い（ステップＳ３０２）、同じであると判定した場合には、この先頭ブロックには１つしか空き顧客コードが存在せず、それを今回取得完了したので、当該ブロックを廃棄し、第二順位のブロックを先頭ブロックに繰り上げ（ステップＳ３０３）、第三順位以降のブロックも１順位づつ順位を繰り上げる処理を行う。例えば、空き顧客コード登録手段１１６は、先頭コードと末尾コードが同じであると判定した場合には、空き顧客コードデータベース１２３に登録されている各ブロックの順位情報を、１順位づつ繰り上がるように書き換える処理を行う構成としてもよい。ブロックの先頭コードと末尾コードが同じでないと判定した場合は（ステップＳ３０２；Ｎ）、空き顧客コードデータベース１２３に登録されている先頭ブロックの先頭コードを次の番号に（本実施形態では「＋１」した値に）書き換える処理を行う（ステップＳ３０４）。
【００５５】
なお、顧客コード登録手段１１６に、先頭ブロックを示す先頭ブロック提示情報を保持するメモリを設けておき、取得完了信号に基づいて先頭ブロックの先頭コードと末尾コードとが同じか否かを判定する処理を行い（ステップＳ３０２）、同じであると判定した場合には当該ブロックを廃棄し、先頭ブロック提示情報を当該先頭ブロックを示す情報（例えば第一順位もしくは第一順位のブロックを示す情報）から当該先頭ブロックの次のブロックを示す情報（例えば第二順位もしくは第二順位のブロックを示す情報）に更新することで次の順位のブロックを先頭ブロックに繰り上げる構成としてもよく（ステップＳ３０３）、例えば第三順位のブロックを先頭ブロックにするには先頭ブロック提示情報を第三順位もしくは第三順位のブロックを示す情報に更新する構成としてもよい。
【００５６】
図５は、新規顧客に空き顧客コードを順に割り当てるときの空きブロックリストの登録内容の変化の一例を示しており、顧客コード割当手段１１７が空き顧客コード登録手段１１６に対して空き顧客コードを要求する場合、すなわち顧客コード割当手段１１７が空き顧客コード登録手段１１６を介して空き顧客コードデータベース１２３から顧客コードを取得する処理動作例を説明するための図であり、顧客コード割当手段１１７は新規顧客に割り当てるべき一の顧客コードを取得する場合に空き顧客コード登録手段１１６に対して顧客コード要求を示す「要求」情報を送る場合を例示している。図５（ａ）に示す空きブロックリスト２６０は、図３に示したものと同じ登録内容になっている。図５（ａ）に示す状態で新規顧客に割り当てるべき空き顧客コードの取得要求である「要求１」を示す情報を空き顧客コード登録手段１１６が受けると、先頭ブロック２６１の先頭コードである１１０番が「要求１」に対する返り値として顧客コード割当手段１１７に送られ、顧客コード割当手段１１７は送られてきた空き顧客コード１１０番を新規顧客に割り当てるべき一の顧客コードとして受け取ると共にスタートコードを１１１番に更新し、取得完了信号を生成する。この取得完了信号に基づき、空き顧客コード登録手段１１６は、先頭ブロック２６１の先頭コード１１０番と末尾コード１１１番とが同じか否かを判定する処理を行い、その結果同じではないと判定し、図５（ｂ）に示すように先頭ブロック２６１の先頭コードを１１０番から１１１番に書き換える処理を行う。
【００５７】
図５（ｂ）に示す状態で「要求２」を示す情報を空き顧客コード登録手段１１６が受けると、先頭ブロック２６１の先頭コードである１１１番が「要求２」に対する返り値として顧客コード割当手段１１７に送られ、顧客コード割当手段１１７は送られてきた空き顧客コード１１１番を新規顧客に割り当てるべき一の顧客コードとして受け取ると共にスタートコードを１１２番に更新し、取得完了信号を生成する。この取得完了信号に基づき、空き顧客コード登録手段１１６は、先頭ブロック２６１の先頭コード１１１番と末尾コード１１１番とが同じか否かを判定する処理を行い、その結果同じであると判定し、当該先頭ブロック２６１を廃棄する処理を行う。ここでは、同図（ｃ）に示すように、当該ブロック２６１の先頭コードと末尾コードを「＊＊＊」にすることで当該ブロック２６１が廃棄されたことを示しており、例えば当該ブロック２６１の先頭コードと末尾コードと順位情報または当該ブロック２６１のレコード格納情報を削除する処理を行ってもよい。そして、空き顧客コード登録手段１１６は、当初の第２ブロック２６２を先頭ブロックに繰り上げる処理を行う。
【００５８】
図５（ｃ）に示す状態で「要求３」を示す情報を空き顧客コード登録手段１１６が受けると、先頭ブロックとなった第２ブロック２６２の先頭コードである１１３番が「要求３」の返り値として顧客コード割当手段１１７に送られ、顧客コード割当手段１１７は送られてきた空き顧客コード１１３番を新規顧客に割り当てるべき一の顧客コードとして受け取ると共にスタートコードを１１４番に更新し、取得完了信号を生成する。この取得完了信号に基づき、空き顧客コード登録手段１１６は、先頭ブロックとなった第２ブロック２６２の先頭コード１１３番と末尾コード１１９番とが同じか否かを判定する処理を行い、その結果同じではないと判定し、図５（ｄ）に示すように現在の先頭ブロック２６２の先頭コードを１１３番から１１４番に書き換える処理を行う。
【００５９】
なお、顧客コード割当手段１１７は、送られてきた空き顧客コードが顧客登録マスタデータベース１２１に登録されているか否かを確認のために判定する処理を行い、既に登録されていると判定した場合には当該取得した顧客コードに基づいてスタートコードを更新し、当該更新されたスタートコードを起点として空き顧客コードデータベース１２３の空き顧客コードのブロックから次に割り当てるべき新規の顧客コードを再取得する構成としてもよい。
【００６０】
例えば図５（ｃ）の例では、顧客コード割当手段１１７は、送られてきた空き顧客コード１１３番を受け取ると、当該１１３番が顧客登録マスタデータベース１２１に登録されているか否かを判定する処理を行い、既に登録されていると判定した場合には当該取得した顧客コード１１３番に基づいてスタートコードを１１４番に更新し、取得完了信号を生成し、次に空き顧客コードの再取得要求の情報を空き顧客コード登録手段１１６に送る。一方、当該１１３番が顧客登録マスタデータベース１２１に登録されていないと判定した場合には、当該１１３番を新規顧客に割り当てるべき一の顧客コードとして受け取ると共にスタートコードを１１４番に更新し、取得完了信号を生成する。空き顧客コード登録手段１１６は、取得完了信号に基づき、第２ブロック２６２の先頭コード１１３番と末尾コード１１９番とが同じか否かを判定する処理を行い、その結果同じではないと判定し、図５（ｄ）に示すように現在の先頭ブロック２６２の先頭コードを１１３番から１１４番に書き換える処理を行う。この同じか否かの判定とその後の処理は、図４の流れ図のステップＳ３０２〜Ｓ３０４に例示されている。
【００６１】
再取得要求の情報を空き顧客コード登録手段１１６が受けると、第２ブロック２６２の先頭コードである１１４番が再取得要求に対する返り値として顧客コード割当手段１１７に送られ、顧客コード割当手段１１７は送られてきた空き顧客コード１１４番を受け取ると当該１１４番が顧客登録マスタデータベース１２１に登録されているか否かを判定する処理を行い、既に登録されていると判定した場合には当該取得した顧客コード１１４番に基づいてスタートコードを１１５番に更新し、取得完了信号を生成し、次に空き顧客コードの再取得要求の情報を空き顧客コード登録手段１１６に送る。一方、当該１１４番が顧客登録マスタデータベース１２１に登録されていないと判定した場合には、当該１１４番を新規顧客に割り当てるべき一の顧客コードとして受け取ると共にスタートコードを１１５番に更新し、取得完了信号を生成する。空き顧客コード登録手段１１６は、取得完了信号に基づき、第２ブロック２６２の先頭コード１１４番と末尾コード１１９番とが同じか否かを判定する処理を行い、その結果同じではないと判定し、現在の先頭ブロック２６２の先頭コードを１１４番から１１５番に書き換える処理を行う。
このように、取得した空き顧客コードが顧客登録マスタデータベース１２１に登録されているか否かを確認することで、顧客登録マスタデータベース１２１に顧客コードが二重登録されることを確実に未然防止することができ、顧客コード管理装置１１０の信頼性を向上することができる。
【００６２】
図６は、図５に示すように新規顧客に顧客コードが割り当てられた営業日の翌日（一例として２００３年４月１５日）の営業開始時間前に、空き顧客コードデータベース１２３が再編される様子を示している。「要求１」〜「要求３」によって１１０番、１１１番、１１３番が新規顧客に割り当てるべき顧客コードとして取得されて新規顧客に割り当てられており、顧客コード登録手段１１１により顧客登録マスタデータベース１２１の登録内容は変更され、図６に示す現存顧客表３２０のように顧客コードとして１１０番、１１１番、及び１１３番が追加されており、当該顧客コードに対応する顧客情報および新規登録日情報も追加されている。例えば、顧客コード割当手段１１７が新規顧客に割り当てるべき一の顧客コードを取得すると、当該空き顧客コードが顧客コード登録手段１１１に送られ、顧客コード登録手段１１１は当該顧客の顧客情報と当該顧客に割り当てるべき一の顧客コードと登録日を示す新規登録日情報を対応付けて顧客登録マスタデータベース１２１に登録する処理を行う。なお、抹消履歴データベース１２２に登録されていた、顧客コードが１０１番の顧客は、登録抹消日から所定期間（一例として１０年の保存期間）が満了したので、削除手段１１３により抹消履歴データベース１２２から削除され、その登録内容は図６の抹消顧客表３３０に例示するようになっている。また、空き番号リスト３５０には空き顧客コードとして１０１番が加わっている。更にスタートコード３４０は、最後に取得した空き顧客コード（取得された最新の顧客コード）が１１３番であったので、その次の番号の１１４番に更新されている。
【００６３】
図６に示す状態で再編を行う場合は、まず、空き番号リスト３５０が生成され、具体的には１００番から５９９番の制限範囲から現存顧客表３２０または抹消顧客表３３０に登録されているすべての顧客コードを除外した残りの番号から空き番号リスト３５０が生成される。この空き番号リスト３５０とスタートコード３４０とから、空き顧客コード１１４番を先頭にブロック情報の生成及び順位付けした空きブロックリスト３６０が生成され、先頭ブロックの先頭コードは１１４番であると共に末尾コードは１１９番であり、第２ブロックの先頭コードは１２１番であると共に末尾コードは５９９番であり、第３ブロックの先頭コードは１００番であると共に末尾コードは１０１番であり、第４ブロックの先頭コードは１０３番であると共に末尾コードは１０４番であり、第５ブロックの先頭コードは１０７番であると共に末尾コードは１０７番となっている。翌日（一例として２００３年４月１５日）の営業では、空きブロックリスト３６０の先頭ブロックを参照して新規顧客に割り当てるべき顧客コードが取得され、当該顧客コードと当該顧客の顧客情報と新規登録日情報が対応付けされて顧客登録マスタデータベース１２１に登録されることで当該顧客の口座が開設される。なお、入出力端末装置１０に新規顧客の住所・氏名・連絡先等の顧客情報と新規顧客登録要求を示す新規顧客登録要求情報が入力され、この入出力端末装置１０の入力情報を取得手段１１８が取得した場合に、取得手段１１８は入出力端末装置１０から取得した入力情報に顧客情報と新規顧客登録要求情報が含まれているか否かを判定する処理を行い、入力情報に顧客情報と新規顧客登録要求情報が含まれていると判定した場合に、新規顧客の顧客情報を顧客コード登録手段１１１に提供する構成としてもよい。
【００６４】
また、顧客の顧客コードを、金融機関における当該顧客の口座番号とし、顧客コード登録手段１１１は、顧客の口座番号と当該顧客の顧客情報を顧客登録マスタデータベース１２１に登録する処理を行うことにより当該顧客の口座を開設し、登録された口座番号及び顧客情報を顧客登録マスタデータベース１２１から削除する処理を行うことにより当該顧客の口座を抹消する構成としてもよい。
【００６５】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成はこれに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があってもよい。例えば、実施の形態では、空き顧客コードをブロック化して空き顧客コードデータベース１２３に記憶したが、ブロック化することなく、たとえば、空き番号リスト２５０のように番号を羅列した状態で記憶してもよい。
【００６６】
また実施の形態では顧客コードを数字で表したが、文字、記号を用いたり、これらと数字とを組み合わせたりしたものであってもよい。文字や記号の場合には、たとえばアルファベット順を基準に順序付けすればよい。なお、コンピュータを顧客コード管理装置１１０としての機能させるための顧客コード管理用プログラムとして本発明を構成してもよい。例えば、コンピュータを、上記の顧客コード登録手段１１１、抹消履歴登録手段１１２、削除手段１１３、空き顧客コード抽出手段１１４、スタートコード記憶手段１１５、空き顧客コード登録手段１１６、顧客コード割当手段１１７、及び取得手段１１８、並びに顧客登録マスタデータベース１２１、抹消履歴データベース１２２、及び空き顧客コードデータベース１２３として動作させるコンピュータプログラムをホストコンピュータ１００にインストールし、上記の各手段１１１〜１１８並びに各データベース１２１〜１２３の機能を発揮させる構成としてもよい。
【図面の簡単な説明】
【００６７】
【図１】本発明の一実施の形態に係る顧客コード管理装置の構成を示すブロック図である。
【図２】本発明の一実施の形態に係る顧客コード管理装置が行う空き顧客コード再編処理を例示する流れ図である。
【図３】空き顧客コード再編処理に伴う各種データの変化の一例を示す説明図である。
【図４】本発明の一実施の形態に係る顧客コード管理装置が行う顧客コード取得処理を例示する流れ図である。
【図５】新規顧客の空き顧客コードの割当てに伴う空きブロックリストの登録内容の変化の一例を示す説明図である。
【図６】図５に示す割当後に実行された空き顧客コード再編処理に伴う各種データの変化の一例を示す説明図である。
【符号の説明】
【００６８】
１０…入出力端末装置
１００…ホストコンピュータ
１１０…顧客コード管理装置
１１１…顧客コード登録手段
１１２…抹消履歴登録手段
１１３…削除手段
１１４…空き顧客コード抽出手段
１１５…スタートコード記憶手段
１１６…空き顧客コード登録手段
１１７…顧客コード割当手段
１１８…取得手段
１２１…顧客登録マスタデータベース
１２２…抹消履歴データベース
１２３…空き顧客コードデータベース
２２０，３２０…現存顧客表
２３０，３３０…抹消顧客表
２４０，３４０…スタートコード
２５０，３５０…空き番号リスト
２６０，３６０…空きブロックリスト
２６１…第１ブロック
２６２…第２ブロック
２６３…第３ブロック
２６４…第４ブロック
【図１】
2004348720.tif 000003
【図２】
2004348720.tif 000004
【図３】
2004348720.tif 000005
【図４】
2004348720.tif 000006
【図５】
2004348720.tif 000007
【図６】
2004348720.tif 000008