(57)【特許請求の範囲】
【請求項１】
月日および休日の情報を表示装置に表示させるカレンダー表示制御装置において、
祝日を表わす祝日情報を記憶するデータ記憶手段と、
前記データ記憶手段に記憶された前記祝日情報に基づいて振替休日を算出する第１休日演算手段と、
前記データ記憶手段に記憶された前記祝日情報に基づいて、前日及び翌日が祝日であり且つ当日が祝日になっていない国民の休日を算出する第２休日演算手段と、
前記第１休日演算手段および前記第２休日演算手段により算出された前記振替休日および前記国民の休日を含んだ休日の情報を前記表示装置に表示させる休日表示制御手段と、
前記データ記憶手段に記憶される前記祝日情報の追加、変更および削除を可能とするデータ変更手段と、
を備え、
前記第１休日演算手段と前記第２休日演算手段とは、前記データ変更手段により前記祝日情報の追加、変更又は削除が行われた場合に、追加、変更又は削除の後の前記祝日情報に基づいて、前記振替休日と前記国民の休日とをそれぞれ算出することを特徴とするカレンダー表示制御装置。
【請求項２】
前記第１休日演算手段は、前記祝日情報と振替休日の有無を判定するための振替休日識別子の情報とに基づいて前記振替休日を算出し、
前記第２休日演算手段は、前記祝日情報と前記振替休日識別子の情報と国民の休日の有無を判定するための国民休日識別子の情報とに基づいて前記国民の休日を算出することを特徴とする請求項１に記載のカレンダー表示制御装置。
【請求項３】
前記第１休日演算手段は、前記第１休日演算手段に入力された第１入力日が日曜日であるか否かを判断し、日曜日でない場合には前記振替休日識別子がセットされているか否かを判断し、前記振替休日識別子がセットされている場合には前記第１入力日を休日と判断し、
前記第２休日演算手段は、
前記第２休日演算手段に入力された第２入力日が日曜日でなく、且つ前記第２入力日の前日が前記祝日情報により示される祝日である場合に前記国民休日識別子をセットする国民休日識別子設定部と、
前記第２入力日が前記祝日情報により示される祝日であり、且つ前記国民休日識別子がセットされている場合に前記第２入力日の前日を休日と判断する前日判定部と、
を備える
ことを特徴とする請求項２に記載のカレンダー表示制御装置。
【請求項４】
前記データ記憶手段には、
ユーザ定義の休日を表わす個人休日情報が前記祝日情報と識別可能に記憶可能であり、
前記データ変更手段は、
前記データ記憶手段に記憶される前記個人休日情報を前記祝日情報と区別して追加、変更および削除可能にされ、
前記休日表示制御手段は、
前記個人休日情報により示される休日を含んだ休日の情報を前記表示装置に表示させることを特徴とする請求項１記載のカレンダー表示制御装置。
【請求項５】
外部から操作指令を入力する操作手段を備え、
前記データ変更手段は、
前記操作手段を介した外部からの操作指令の入力により前記祝日情報の追加、変更および削除を可能とすることを特徴とする請求項１又は請求項４に記載のカレンダー表示制御装置。
【請求項６】
前記データ記憶手段は、不揮発性メモリにより構成されていることを特徴とする請求項１又は請求項４又は請求項５のいずれか一項に記載のカレンダー表示制御装置。
【請求項７】
月日および休日の情報を表示装置に表示させるカレンダー表示制御装置において、
祝日を表わす祝日情報に基づいて、前日及び翌日が祝日であり且つ当日が祝日になっていない国民の休日を算出する休日演算手段と、
前記休日演算手段により算出された前記国民の休日を含んだ休日の情報を前記表示装置に表示させる休日表示制御手段と、
を備えることを特徴とするカレンダー表示制御装置。
【請求項８】
祝日を表わす祝日情報を記憶するデータ記憶手段および表示装置をコンピュータが制御して前記表示装置に月日および休日の情報を表示させるカレンダー表示制御方法において、
前記コンピュータが、前記データ記憶手段に記憶された前記祝日情報に基づき振替休日を算出する第１休日演算ステップと、
前記コンピュータが、前記データ記憶手段に記憶された前記祝日情報に基づいて前日及び翌日が祝日であり且つ当日が祝日になっていない国民の休日を算出する第２休日演算ステップと、
前記コンピュータが、前記第１休日演算ステップおよび前記第２休日演算ステップにより算出された前記振替休日および前記国民の休日を含んだ休日の情報を前記表示装置に表示させる休日表示制御ステップと、
前記コンピュータが、操作手段を介した外部からの操作指令の入力に基づき前記データ記憶手段に記憶される前記祝日情報の追加、変更および削除を行うデータ変更ステップと、
を含み、
前記データ変更ステップにより前記祝日情報の追加、変更又は削除が行われた場合に、追加、変更又は削除の後の前記祝日情報に基づいて前記第１休日演算ステップと前記第２休日演算ステップがそれぞれ実行されることを特徴とするカレンダー表示制御方法。
【請求項９】
前記データ変更ステップは、
前記コンピュータが、前記操作手段を介した外部からの操作指令の入力に基づき、前記データ記憶手段に記憶されているユーザ定義の休日を表わす個人休日情報を、前記祝日情報と区別して追加、変更および削除可能なステップを含み、
前記休日表示制御ステップは、
前記コンピュータが、前記個人休日情報の休日を含んだ休日の情報を前記表示装置に表示させることを特徴とする請求項８記載のカレンダー表示制御方法。
【請求項１０】
祝日を表わす祝日情報を記憶するデータ記憶手段と、月日および休日の情報を表示する表示装置とを制御するコンピュータに、
前記データ記憶手段に記憶された前記祝日情報に基づいて振替休日を算出する第１休日演算機能と、
前記データ記憶手段に記憶された前記祝日情報に基づいて前日及び翌日が祝日であり且つ当日が祝日になっていない国民の休日を算出する第２休日演算機能と、
前記第１休日演算機能および前記第２休日演算機能により算出された前記振替休日および前記国民の休日を含んだ休日の情報を前記表示装置に表示させる休日表示制御機能と、
操作手段を介した外部からの操作指令の入力に基づいて前記データ記憶手段に記憶される前記祝日情報の追加、変化および削除を行うデータ変更機能と、
を実現させ、
前記第１休日演算機能と前記第２休日演算機能とは、前記データ変更機能により前記祝日情報の追加、変更又は削除が行われた場合に、追加、変更又は削除の後の前記祝日情報に基づいて前記振替休日と前記国民の休日とをそれぞれ算出することを特徴とするプログラム。
【請求項１１】
前記データ変更機能は、
操作手段を介した外部からの操作指令の入力に基づき、前記データ記憶手段に記憶されているユーザ定義の休日を表わす個人休日情報を前記祝日情報と区別して追加、変更および削除可能とする機能を含み、
前記休日表示制御機能は、
前記個人休日情報の休日を含んだ休日の情報を前記表示装置に表示させることを特徴とする請求項１０記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、月日と休日の情報を表示装置に表示させるカレンダー表示制御装置、カレンダー表示制御方法およびプログラムに関する。
【背景技術】
【０００２】
カレンダー表示を行う電子機器において休日の表示を行うものが以前より存在する。
【０００３】
また、本発明に関連する先行技術として、特許文献１には、祝祭日と日曜日とが重なって生じる振替休日を自動的に算出して表示するカレンダー表示装置について開示されている。また、特許文献２には、万年カレンダーのデータと祝祭日の月日データに基づいて、祝祭日が振り替えられたり祝祭日が移動したりする場合に、これらを反映した休日の情報を自動的に算出する装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特公昭６３−６７１５７号公報
【特許文献２】特開２０００−２０５００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
祝日は永久固定のものでなく変更されることがある。また、日本の休日には、日曜日、祝日、振替休日だけでなく、祝日と祝日に挟まれた平日が休日となる「国民の休日」と呼ばれる休日がある。
【０００６】
この発明の目的は、祝日が変更された場合にもこの変更に対応して正確な休日の表示を行うことのできるカレンダー表示制御装置、カレンダー表示制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、請求項１記載の発明は、
月日および休日の情報を表示装置に表示させるカレンダー表示制御装置において、
祝日を表わす祝日情報を記憶するデータ記憶手段と、
前記データ記憶手段に記憶された前記祝日情報に基づいて振替休日を算出する第１休日演算手段と、
前記データ記憶手段に記憶された前記祝日情報に基づいて、前日及び翌日が祝日であり且つ当日が祝日になっていない国民の休日を算出する第２休日演算手段と、
前記第１休日演算手段および前記第２休日演算手段により算出された前記振替休日および前記国民の休日を含んだ休日の情報を前記表示装置に表示させる休日表示制御手段と、
前記データ記憶手段に記憶される前記祝日情報の追加、変更および削除を可能とするデータ変更手段と、
を備え、
前記第１休日演算手段と前記第２休日演算手段とは、前記データ変更手段により前記祝日情報の追加、変更又は削除が行われた場合に、追加、変更又は削除の後の前記祝日情報に基づいて、前記振替休日と前記国民の休日とをそれぞれ算出することを特徴としている。
【発明の効果】
【００１５】
本発明に従うと、祝日に変更が生じた場合には、データ記憶手段に記憶される祝日情報の追加、変更または削除によって対応することができる。また、振替休日と国民の休日は祝日情報から演算により求めているので、祝日の変更に伴ってこれら振替休日と国民の休日とを共に含んだ正確な休日の情報が求められるという効果がある。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態のカレンダー表示装置の全体構成を示すブロック図である。
【図２】カレンダー表示装置の表示画面を示す正面図である。
【図３】不揮発性メモリに記憶される祝日データと個人休日データの一例を示すデータチャートである。
【図４】ＣＰＵにより実行される休日データ変更処理の制御手順を示すフローチャートである。
【図５】ＣＰＵにより実行される休日表示処理の制御手順を示すフローチャートの第１部である。
【図６】同、休日表示処理のフローチャートの第２部である。
【図７】同、休日表示処理のフローチャートの第３部である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１８】
図１は、本発明の実施形態のカレンダー表示装置の全体構成を示すブロック図、図２は、このカレンダー表示装置の表示画面を示す正面図である。
【００１９】
この実施形態のカレンダー表示装置１は、現在日時と現在日を含む複数日分（例えば１週間分）の日付、曜日および休日の情報を表示する装置であり、図１と図２に示すように、表示画面２０Ａに上記表示が行われる表示部２０と、表示制御を行うＣＰＵ（中央演算処理装置）１０と、ＣＰＵ１０が実行する制御プログラムおよび制御データが格納されたＲＯＭ（Read Only Memory）１１と、ＣＰＵ１０に作業用のメモリ空間を提供するＲＡＭ（Random Access Memory）１２と、書き換え可能な制御データを格納するデータ記憶手段としての不揮発性メモリ１３と、現在日時を計数する計時回路１４と、複数の操作ボタンを有し外部から操作指令を入力する操作部（操作手段）１５等を備えている。上記構成のうち、表示部２０を除いた各構成によりカレンダー表示制御装置が、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２によりコンピュータが、それぞれ構成される。
【００２０】
表示部２０の表示画面２０Ａには、時刻等が表示される第１表示領域２１と、カレンダー表示が行われる第２表示領域２２とが設けられている。第１表示領域２１には、通常時において現在時刻が表示される一方、操作部１５を介して設定データの入力が行われる際にはデータ入力用の表示が行われる。
【００２１】
第２表示領域２２には、左の範囲に現在の年月日が表示される年月日表示領域２２１が設けられ、中央から右の範囲に一週間分のカレンダー表示が行われるカレンダー表示領域２２２が設けられている。
【００２２】
カレンダー表示領域２２２には、その下段に一週間分の日付表示Ｄ１がなされ、中段に一週間分の曜日表示Ｄ２が固定的になされ、上段に休日であることを表わす休日マークＤ３が表示され、日付表示Ｄ１の上部に現在の日付を指し示す指示マークＤ４が表示される。日付表示Ｄ１は、「１〜３１」の１桁又は２桁の日付数字を７組一列に並べて構成され、各々の日付数字の表示はＣＰＵ１０の制御によって変更可能にされている。曜日表示Ｄ２は、各曜日を表わす曜日文字が日付表示Ｄ１の各日付数字にそれぞれ対応する位置に、７個一列に並べられて構成される。指示マークＤ４は、日付表示Ｄ１の７組の日付数字の上部にそれぞれ表示のオンとオフの切り換えが可能にされ、休日マークＤ３は、曜日表示Ｄ２の７組の曜日文字の上部にそれぞれ表示のオンとオフの切り換えが可能にされている。
【００２３】
通常表示モードの際、このカレンダー表示領域２２２には、一週間が経過するごとに一週間分の日付数字と休日マークＤ３の表示のオン・オフが更新されて、現在日を含む一週間分のカレンダー表示がなされるようになっている。また、日付が変るごとに指示マークＤ４の表示オンされる位置がシフトして、常に現在日が指示された状態にされるようになっている。
【００２４】
図３には、不揮発性メモリ１３に構築される祝日データテーブル１３１と個人休日データテーブル１３４の一例を表わすデータチャートを示す。
【００２５】
不揮発性メモリ１３には、祝日を表わす祝日情報が複数登録された祝日データテーブル１３１と、ユーザ定義の休日を表わす個人休日情報が複数登録可能にされた個人休日データテーブル１３４とが設けられている。
【００２６】
祝日データテーブル１３１には、複数年分の春分の日と秋分の日のデータが登録された春分秋分の日データテーブル１３２と、毎年の祝日データが登録された年次データテーブル１３３とが含まれる。年次データテーブル１３３には、データ登録されていないブランク領域が複数用意され、新たに祝日が追加されたときに、祝日情報を追加登録することが可能になっている。
【００２７】
春分秋分の日データテーブル１３２には、例えば、年月日が指定された祝日情報が登録され、年次データテーブル１３３には、例えば、月日のみが指定された祝日情報や、月と第何週の第何曜日という形式で指定された祝日情報等が登録されている。
【００２８】
個人休日データテーブル１３４には、ユーザ定義の休日が種々の形式で指定された休日情報が登録可能になっている。例えば、曜日のみ指定の休日情報、年月日やその範囲が指定される休日情報、月日やその範囲が指定される休日情報、月と第何週の第何曜日という形式で指定される休日情報などが登録可能になっている。個人休日データテーブル１３４には、データ登録されていないブランク領域が複数用意され、新たな休日情報を追加登録することが可能になっている。
【００２９】
ＲＯＭ１１には、制御プログラムとして、計時回路１４の計時データに基づいて第１表示領域２１の時刻表示や第２表示領域２２のカレンダー表示の更新を行う日時表示処理プログラム、操作部１５を介した操作指令の入力に基づいて動作モードを通常の日時表示モードから休日データ変更モードやその他のモードへ変更するモード切換制御プログラム、操作部１５からの入力によって祝日データテーブル１３１と個人休日データテーブル１３４のデータの追加、変更および削除が可能な休日データ変更処理プログラムなどが格納されている。また、上記の各プログラムの中から呼び出されてカレンダー表示領域２２２の表示を更新する１週間の休日表示処理プログラムも格納されている。
【００３０】
これらの各プログラムは、ＲＯＭ１１に格納するほか、例えば、データ読取装置を介してＣＰＵ１０が読み取り可能な、光ディスク等の可搬型記憶媒体、フラッシュメモリ等の不揮発性メモリに格納しておくことが可能である。また、このようなプログラムがキャリアウェーブ（搬送波）を媒体として通信回線を介してカレンダー表示装置１にダウンロードされる形態を適用することもできる。
【００３１】
次に、上記構成のカレンダー表示装置１において実行される休日データ変更処理（データ変更手段）および１週間の休日表示処理について説明する。
【００３２】
図４には、ＣＰＵ１０により実行される休日データ変更処理のフローチャートを示す。
【００３３】
この休日データ変更処理は、操作部１５を介して動作モードが休日データ変更モードに変更されたことで開始される。休日データ変更処理が開始されると、先ず、ＣＰＵ１０は、表示部２０へ表示データを出力して第１表示領域２１の表示をデータ入力用の表示に切り替える（ステップＳ１）。
【００３４】
次に、ＣＰＵ１０は、操作部１５を介した操作入力を受け付けて、祝日データテーブル１３１の祝日情報の追加、変更および削除を行うのか、個人休日データテーブル１３４の個人休日情報の追加、変更および削除を行うのか、ユーザに選択入力を行わせる（ステップＳ２）。具体的には、ユーザが操作部１５を操作して祝日情報か個人休日情報の何れかを選択し、その後、操作部１５を操作して選択完了の操作を行うことで、上記の選択入力が遂行される。
【００３５】
データテーブルの選択入力が行われたら、続いて、ＣＰＵ１０は、操作部１５を介した操作入力を受け付けて、祝日データテーブル１３１又は個人休日データテーブル１３４のうち選択されたデータテーブルにおけるデータ登録先のメモリ番号（データの登録領域）の選択入力を行わせる（ステップＳ３）。そして、選択されたメモリ番号にデータが登録されていれば、そのデータを表示部２０の第１表示領域２１へ表示させる（ステップＳ４）。なお、このステップＳ３，Ｓ４の処理を、メモリ番号の選択完了の操作が行われるまでループ処理により繰り返し行われるようにするようにしても良い。それにより、ユーザはメモリ番号の選択中に選択途中のメモリ番号に何のデータが登録されているのか確認しながら、データの追加、変更および削除の対象とするメモリ番号を選択することが可能となる。
【００３６】
メモリ番号の選択入力およびそのデータ表示が行われたら、続いて、ＣＰＵ１０は、操作部１５を介した操作入力を受け付けて、ユーザにデータ入力形式の選択入力を行わせる（ステップＳ５）。すなわち、月日指定、年月日指定、これらの範囲指定、曜日指定、月と第何週の第何曜日の指定など、選択されているメモリ番号に登録可能なデータ形式のうち、何れかを選択させる。
【００３７】
そして、データ入力形式の選択入力が行われたら、続いて、ＣＰＵ１０は、操作部１５を介した操作入力を受け付けて、上記選択されたデータ形式により指定されるデータの入力をユーザにより行わせる（ステップＳ６）。具体的には、ユーザが操作部１５を操作して、年月日、曜日、第何週などの指定データを１つずつ順送りしていき、所望の値に送られたときに操作部１５を介して確定の操作を行う。このような操作を選択されたデータ形式に含まれる指定データの個数分（例えば、年月日の指定なら“年”と“月”と“日”の３個分）行うことでデータの入力が遂行される。また、このステップＳ６のデータ入力処理において、指定データをブランクにしたまま入力完了の操作を行うことで、ブランクデータの入力となって、元に登録されていたデータを削除することもできる。
【００３８】
次に、ＣＰＵ１０は、ステップＳ２で選択された祝日データテーブル１３１又は個人休日データテーブル１３４の何れかのデータテーブルにおいて、ステップＳ４で選択されたメモリ番号のデータ登録領域へ、ステップＳ６の入力データを上書きして登録させる。なお、ステップＳ６でブランクデータが入力されている場合には、選択されたメモリ番号に元々登録されていたデータが削除されることとなる。
【００３９】
入力データを登録したら、次いで、ＣＰＵ１０は、新規に登録のあったデータテーブル（祝日データテーブル１３１又は個人休日データテーブル１３４）について複数の登録データを所定条件に従った順番に並べかえるソート処理を行う（ステップＳ８）。例えば、祝日データテーブル１３１の年次データテーブル１３３については、月日の若い順に登録データが並べ替えられ、且つ、ブランク領域が下位に来るようにされる。また、個人休日データテーブル１３４については、曜日指定の登録データ、月日指定の登録データ、年月日指定の登録データの順で且つ各指定データの値が若い順に登録データが並べ替えられ、さらに、ブランク領域が下位に来るようにされる。
【００４０】
ソート処理が完了したら、ＣＰＵ１０は、表示部２０へ表示データを出力して第１表示領域２１の表示をデータ入力用の表示から通常の時刻表示へ戻す（ステップＳ９）。さらに、第２表示領域２２のカレンダー表示についても表示の更新が行われるように表示更新要求を発効する（ステップＳ１０）。この表示更新要求の発効により、続いて実行される日時表示処理において、週や日付の変更がなくても第２表示領域２２のカレンダー表示に対して日付や休日の抽出処理から行われて、カレンダー表示が更新される。そして、このカレンダー表示の更新により、上記ステップＳ２〜Ｓ８で更新された祝日情報や個人休日情報が反映された休日マークＤ３の表示のオン・オフ制御がなされるようになっている。その後、この休日データ変更処理を終了する。
【００４１】
図５〜図７には、ＣＰＵ１０により実行される１週間の休日表示処理のフローチャートを示す。
【００４２】
この１週間の休日表示処理は、１週間の経過（土曜日から日曜日への変更時）或いは日付の変更時、並びに、上記の表示更新要求の発効により、カレンダー表示を更新する際に併せて実行されるものであり、カレンダー表示中の一週間分の休日マークＤ３のオン・オフを決定する処理である。
【００４３】
この１週間の休日表示処理が開始されると、先ず、ＣＰＵ１０は、計時回路１４の計時データの年月日の情報に基づいて、現在日を含む日曜日から土曜日までの一週間の日付を抽出するとともに、表示部２０へ表示データを出力して、これらの日付値を反映した日付表示Ｄ１を行わせる（ステップＳ２１）。
【００４４】
次に、ＣＰＵ１０は、振替休日の有無を判定するための振替フラグＦ１、国民の休日の有無を判定するための国民休日フラグＦＫ１，ＦＫ２を共にクリアする初期化処理（ステップＳ２２）と、ＸレジスタにステップＳ２１で抽出された一週間の日付のうち最初（日曜日）の日付データをセットし、Ｙレジスタに祝日データテーブル１３１の最初のメモリ番号に登録されている祝日情報をセットする（ステップＳ２３）。Ｘレジスタは、この後、日付表示Ｄ１に出力される一週間分の日付値が順にセットされるＲＡＭ１２内のレジスタであり、Ｙレジスタは、この後、祝日データテーブル１３１の祝日情報が順にセットされるＲＡＭ１２内のレジスタである。ＸレジスタとＹレジスタにデータがセットされたら、次に進む。
【００４５】
次に進むと、ＣＰＵ１０は、Ｘレジスタのデータ値とＹレジスタのデータ値の比較を行って、Ｘレジスタにセットされた日付がＹレジスタにセットされた祝日と重なるか判別する（ステップＳ２４）。その結果、重なっていれば（一致）、Ｘレジスタの日付に対応した休日マークＤ３を表示オンにする（ステップＳ２５：休日表示制御手段）。一方、不一致であれば、Ｙレジスタに祝日データテーブル１３１の全ての祝日情報がセットされて比較終了済みか確認し（ステップＳ２６）、未だであればＹレジスタに次の祝日情報をセットして（ステップＳ２７）、再び、ステップＳ２４に戻る。
【００４６】
すなわち、ステップＳ２４，Ｓ２６，Ｓ２７のループ処理が繰り返し行われることで、Ｘレジスタの日付が祝日データテーブル１３１に登録されている複数の祝日の何れかと重なっているか否かが判別されて、祝日と重なっていれはステップＳ２５で休日マークＤ３が表示オンされ、何れの祝日でもなければステップＳ２６の判別処理で“ＹＥＳ”側へ分岐するようになっている。
【００４７】
その結果、Ｘレジスタの日付が何れの祝日でもなくループ処理を抜けたら、ＣＰＵ１０は、この日付が日曜日か判別し（ステップＳ２８）、日曜日でなければ振替休日を示す振替フラグＦ１がセットされているか否かを確認する（ステップＳ２９）。そして、日曜であるか、或いは、振替フラグＦ１がセットされていれば、振替フラグＦ１をクリアした上で（ステップＳ３０）、Ｘレジスタの日付に対応した休日マークＤ３を表示オンにする（ステップＳ３１：休日表示制御手段）。
【００４８】
一方、日曜でもなく、振替フラグＦ１のセットもなければ、ＣＰＵ１０は、国民休日フラグＦＫ１のセットが有るか判別し（ステップＳ３２）、有れば国民休日フラグＦＫ２をセットするとともに国民休日フラグＦＫ１をクリアする（ステップＳ３３）。一方、国民休日フラグＦＫ１のセットが無ければ、国民休日フラグＦＫ２をクリアして（ステップＳ３４）、次に進む。ここで、国民休日フラグＦＫ１とは、前日が祝日である場合にセットされるフラグであり、国民休日フラグＦＫ２とは、前日が祝日で且つ当日が祝日でも日曜日でもないときにセットされるフラグである。
【００４９】
次に進むと、ＣＰＵ１０は、Ｘレジスタの日付に対応した休日マークＤ３を表示オフにして（ステップＳ３５：休日表示制御手段）、図６のステップＳ４２へジャンプする。そして、Ｘレジスタの日付が土曜日（日付表示Ｄ１の最終日）であるかを確認し（ステップＳ４２）、土曜日でなければ、Ｘレジスタの日付を「＋１日」更新し、Ｙレジスタに祝日データテーブル１３１の最初のメモリ番号に登録されている祝日情報をセットする（ステップＳ４３）。それから、再び、ステップＳ２４に戻る。
【００５０】
つまり、上記のステップＳ２４〜Ｓ４２，Ｓ４３のループ処理が繰り返されることで、Ｘレジスタの日付が日付表示Ｄ１の先頭の日付から最後の日付まで１日ずつ変更されて、休日か否かの判定処理が行われるようになっている。
【００５１】
一方、ステップＳ２４の判別処理で一致（祝日）と判別されて、ステップＳ２５でＸレジスタの日付に対応する休日マークを表示オンしたら、次いで、Ｘレジスタの日付が日曜日か判別し（ステップＳ３６）、日曜日であれば次の日が振替休日となるので振替フラグＦ１をセットして（ステップＳ４１）、ステップＳ４２に移行する。
【００５２】
一方、日曜日でなければ、国民休日フラグＦＫ２がセットされているか判別し（ステップＳ３２）、セットされていれば、Ｘレジスタの日付を当日とすれば、前々日が祝日、前日が平日、当日が祝日であり、前日が「国民の休日」であると判定されるので、Ｘレジスタの日付の前日に対応する休日マークを表示オンにする（ステップＳ４０：休日表示制御手段）。そして、ステップＳ４２に移行する。
【００５３】
一方、日曜日でもなく、国民休日フラグＦＫ２のセットもなければ、振替フラグＦ１がセットされているか判別し（ステップＳ３８）、セットされていれば、祝日が続いていて、さらに次の日を振替休日とするために、そのままステップＳ４２へ移行する。また、振替フラグＦ１がセットされていなければ、次の日が「国民の休日」となりえるので国民休日フラグＦＫ１をセットして（ステップＳ３９）、それからステップＳ４２へ移行する。
【００５４】
ステップＳ４２へ移行したら、上述したように、Ｘレジスタの日付が土曜日であるかの確認（ステップＳ４２）と、土曜日でなければ、Ｘレジスタの値を更新するとともにのＹレジスタの値を初期化してステップＳ２４に戻る。
【００５５】
そして、Ｘレジスタの日付が一週間分更新されて、ステップＳ４２の判別処理で土曜日であると判別された場合には、一週間の最後の土曜日が「国民の休日」となっていないか判定する処理（ステップＳ４４〜Ｓ４９）に進む。
【００５６】
すなわち、先ず、ＣＰＵ１０は、国民休日フラグＦＫ２がセットされているか判別する（ステップＳ４４）。このフラグＦＫ２がセットされていなければ、一週間の最後の土曜日が「国民の休日」になりえないので、そのまま、図７のステップＳ５０へ移行する。
【００５７】
一方、フラグＦＫ２がセットされていれば、Ｘレジスタの日付を「＋１日」更新し、Ｙレジスタに祝日データテーブル１３１の最初のメモリ番号に登録されている祝日情報をセットする（ステップＳ４５）。ここで、Ｘレジスタにセットされる日付は、一週間の日付表示Ｄ１に表れていない、その次の日曜日の日付となる。
【００５８】
次いで、ＣＰＵ１０は、ステップＳ４６，Ｓ４７，Ｓ４９のループ処理を繰り返して、Ｘレジスタの日付が祝日データテーブル１３１に登録されている何れかの祝日に該当しないか判別する処理を行う。上述したステップＳ２４，Ｓ２６，Ｓ２７のループ処理と同様の処理である。
【００５９】
このループ処理中、Ｘレジスタの日付が祝日に該当していれば、ステップＳ４６の判別処理で一致の側へ移行する。この場合、前日の土曜日が「国民の休日」に該当するので、土曜日の休日マークＤ３を表示オンにして（ステップＳ４８：休日表示制御手段）、図７のステップＳ５０へ移行する。
【００６０】
一方、上記のループ処理で、Ｘレジスタの日付が祝日に該当していなければ、ステップＳ４７の判別処理で全ての祝日情報と比較終了と判別され、この場合、前日の土曜日は「国民の休日」に該当しないことになるので、そのまま、図７のステップＳ５０へ移行する。
【００６１】
以上のステップＳ２１〜Ｓ４９（図５，図６）の処理によって、カレンダー表示される１週間の各日付が、祝日、日曜日、振替休日、国民の休日の何れかに該当するか算出されて、算出結果に応じた休日マークＤ３の表示が遂行されるようになっている。上記のステップＳ２４，Ｓ２６，Ｓ３６，Ｓ４１，Ｓ２８〜Ｓ３１等、振替フラグＦ１に関わる処理により第１休日演算手段が構成され、ステップＳ３２〜Ｓ３４，Ｓ３６〜Ｓ４０，Ｓ４４〜Ｓ４９等、国民休日フラグＦＫ１，ＦＫ２に関わる処理により第２休日演算手段が構成される。
【００６２】
続いてＣＰＵ１０により実行されるステップＳ５０〜Ｓ５７（図７）の処理は、カレンダー表示される１週間の各日付が、ユーザ定義の個人休日に該当するか否か確認して、個人休日に該当する場合に、対応する休日マークＤ３の表示をオンさせる処理である。個人休日については、祝日と異なって振替休日や国民の休日を発生させることがないので、ステップＳ２１〜Ｓ４９の祝日に関する処理と別途分けて実行されるようになっている。
【００６３】
ステップＳ５０に移行すると、ＣＰＵ１０は、先ず、ＸレジスタにステップＳ１で抽出されている一週間の日付のうち最初（日曜日）の日付のデータをセットし、Ｙレジスタに個人休日データテーブの最初のメモリ番号に登録されている個人休日情報をセットする（ステップＳ５０）。
【００６４】
続いて、ＣＰＵ１０は、Ｘレジスタの日付がすでに休日に設定されているか判別し（ステップＳ５１）、未だ休日に設定されていなければ、Ｘレジスタの日付がＹレジスタの個人休日情報の条件に合致するか否かを判別する（ステップＳ５２）。
【００６５】
その結果、Ｘレジスタの日付が休日設定されてなく、Ｙレジスタの個人休日情報の条件に合致したと判別されたら、Ｘレジスタの日付に対応した休日マークＤ３を表示オンにする（ステップＳ５３：休日表示制御手段）。一方、Ｘレジスタの日付がすでに休日設定されているか、Ｙレジスタの個人休日情報の条件に合致していないと判別されたら、Ｙレジスタに個人休日データテーブル１３４の全ての個人休日情報をセットして比較終了済みか確認し（ステップＳ５４）、未だであればＹレジスタに次の個人休日情報をセットして（ステップＳ５５）、再び、ステップＳ５１に戻る。
【００６６】
すなわち、上記のステップＳ５１，Ｓ５２，Ｓ５４，Ｓ５５のループ処理が繰り返し行われることで、Ｘレジスタの日付がユーザ定義の休日に設定されているか否かが判別されて、ユーザ定義の休日に設定されていれば、この日付に対応した休日マークＤ３が表示オンされるようになっている。
【００６７】
そして、ステップＳ５２の判別処理で個人休日情報の条件と合致したと判別されるか、或いは、ステップＳ５４の判別処理で全ての個人休日情報との比較が終了したと判別されるかして上記のループ処理を抜けると、ＣＰＵ１０は、Ｘレジスタの日付が土曜日（日付表示Ｄ１の最終日）であるかを確認し（ステップＳ５６）、土曜日でなければ、Ｘレジスタの日付を「＋１日」更新し、Ｙレジスタに個人休日データテーブル１３４の最初のメモリ番号に登録されている個人休日情報をセットする（ステップＳ５７）。そして、再び、ステップＳ５１に戻る。
【００６８】
つまり、上記のステップＳ５１〜Ｓ５６，Ｓ５７のループ処理が繰り返されることで、Ｘレジスタの日付が日付表示Ｄ１の先頭の日付から最終の日付まで１日ずつ変更されて、各日付がユーザ定義の休日か否かの判定が行われて、ユーザ定義の休日であればこの日付に対応した休日マークＤ３が表示オンされるようになっている。
【００６９】
上記の１週間の休日表示処理（図５〜図７）が、週や日にちの切り替り時点、または、祝日情報或いは個人休日情報の変更操作後に行われることで、カレンダー表示領域２２２に当日を含む一週間に日付表示Ｄ１とそれに対応した正確な休日情報を表わす休日マークＤ３とが常に表示されるようになっている。
【００７０】
以上のように、この実施形態のカレンダー表示装置１によれば、上述の休日データ変更処理（図４）によって、祝日データテーブル１３１の祝日情報の追加、変更および削除を行うことが可能になっている。さらに、祝日情報の追加、変更または削除がなされた場合には、カレンダー表示領域２２２の表示の更新がなされて、新たな祝日情報に基づく休日マークＤ３の表示が行われるようになっている。このとき、振替休日と国民の休日についても新たな祝日情報に基づいて算出されて休日の有無が判定されるので、振替休日と国民の休日とを含んだ正確な休日情報を表示することが可能になっている。
【００７１】
また、この実施形態のカレンダー表示装置１によれば、ユーザ定義の休日を示す個人休日情報が登録される個人休日データテーブル１３４が設けられ、この個人休日情報に基づく休日の表示も行われる。また、個人休日情報と祝日情報とは区別されて、個人休日情報に基づいて振替休日や国民の休日が誤って算出されてしまうということがないので、ユーザ定義の休日も含めて正確な休日情報の表示を行うことができる。
【００７２】
また、休日データ変更処理は、操作部１５を介した外部操作により、祝日情報や個人休日情報の変更を行うことが可能なものなので、エンドユーザによって祝日やユーザ定義の休日の設定変更を容易に行わせることができる。また、祝日データテーブル１３１や個人休日データテーブル１３４は、不揮発性メモリ１３に設けられているので、登録データの変更が可能であり、且つ電源電圧が遮断された場合でも登録データを失わない。
【００７３】
なお、本発明は、上記実施の形態に限られるものではなく、様々な変更が可能である。例えば、上記実施形態では、表示部２０を有し実際にカレンダー表示を行う装置を例示したが、表示装置を別構成とし、外部の表示装置に表示データや表示信号を出力してカレンダー表示を行わせる表示制御装置に本発明を適用しても良い。また、上記実施形態では、カレンダー表示として、一週間分の日付および休日が表示される形式を例示したが、一ヶ月分の日付および休日が表示される形式としても良い。また、当日１日の日付および休日が表示される日めくりカレンダーの形式としたり、当日を中心或いは先頭等とした一週間分や所定日数分の表示とするなど、表示形式は種々に変更可能である。
【００７４】
また、上記実施形態では、祝日情報と個人休日情報とを区別するために、別々のデータテーブルを用意して各データテーブルに別個に登録する構成を例示したが、例えば、各休日情報に祝日情報と個人休日情報とを区別する識別データを付加することで、同一のデータテーブルに両者を登録しても、これら両者を区別可能とする構成を適用することもできる。
【００７５】
その他、カレンダー表示の画面構成、振替休日と国民の休日との算出方法、祝日情報や個人休日情報の変更方法など、この実施形態に示した細部構成および細部方法は、発明の趣旨を逸脱しない範囲で適宜変更可能である。
【符号の説明】
【００７６】
１    カレンダー表示装置
１０  ＣＰＵ
１１  ＲＯＭ
１２  ＲＡＭ
１３  不揮発性メモリ
１４  計時回路
１５  操作部
２０  表示部
１３１  祝日データテーブル
１３４  個人休日データテーブル
２２２  カレンダー表示領域
Ｄ１  日付表示
Ｄ２  曜日表示
Ｄ３  休日マーク
【図１】
0005621280.tif 000002
【図２】
0005621280.tif 000003
【図３】
0005621280.tif 000004
【図４】
0005621280.tif 000005
【図５】
0005621280.tif 000006
【図６】
0005621280.tif 000007
【図７】
0005621280.tif 000008