以下、図を参照して本発明の実施形態1について詳細に説明する。
まず、構成を説明する。
〔実施形態1〕
(店舗システム100の構成)
図1に、本発明の実施形態における店舗システム100の全体構成例を示す。図1に示すように、店舗システム100は、売上データ処理装置1と、情報センタサーバ2とが通信ネットワークNを介してデータ送受信可能に接続されて構成されている。通信ネットワークNは、専用線や既存の公衆回線、インターネット等を利用して構築された情報通信網である。なお、売上データ処理装置1の台数は特に限定されない。
売上データ処理装置1は、電子式キャッシュレジスタ、ECR(Electronic Cash Resister)、金銭登録機等を含むものである。この売上データ処理装置1を使用して業務を遂行する業務遂行者には、マネージャーや店員等の従業員の他、店舗の業務実績に関わるオーナーも含まれる。
(売上データ処理装置1の構成)
売上データ処理装置1は、店舗に設けられ、従業員の操作に基づいて購買された商品の登録処理(購買された商品の商品名、商品の売上個数、売上金額等の売上データ等の登録)、点検処理、精算処理等を行う。また、売上データ処理装置1は、従業員の操作に基づいて従業員の出退勤情報の入力を受け付ける。
図2に、売上データ処理装置1の機能構成例を示す。図2に示すように、売上データ処理装置1は、CPU(Central Processing Unit)10、入力部11、表示部12、RAM(Random Access Memory)13、記憶部14、通信部15、印字部16、ドロア17、スキャナ部18、計時部19等を備えて構成され、各部はバス101を介して接続されている。
CPU10は、記憶部14に記憶されているシステムプログラムを読み出し、RAM13のワークエリアに展開し、該システムプログラムに従って各部を制御する。また、CPU10は、記憶部14に記憶されている各種プログラムを読み出してワークエリアに展開し、後述する出退勤情報登録処理を始めとする各種処理を実行する。
入力部11は、図3に示すように、テンキー111、部門キー112等の商品登録に必要な各種キーの他、モードキー113、出勤キー114、退勤キー115、釣銭準備キー116等を備えて構成され、各キー操作に応じた操作信号をCPU10に出力する操作手段である。
モードキー113は、売上データ処理装置1の動作モードを切り替えるためのキーであり、登録モードキー113a、設定モードキー113b、点検モードキー113c、精算モードキー113dにより構成される。登録モードキー113aは、購買された商品の登録処理を行う登録モードに切り替えるためのキーである。設定モードキー113bは、売上データ処理装置1の各種設定を行う設定モードに切り替えるためのキーである。点検モードキー113cは、登録された売上データの点検処理を行う点検モードに切り替えるためのキーである。精算モードキー113dは、閉店後に1日の売上の精算処理を行う精算モードに切り替えるためのキーである。
出勤キー114は、店舗の従業員の出勤データを情報センタサーバ2に送信する指示を入力するためのキーである。退勤キー115は、店舗の従業員の退勤データを情報センタサーバ2に送信する指示を入力するためのキーである。
釣銭準備キー116は、ドロア17中の金種毎の枚数(個数)を登録する釣銭準備処理の実行指示を入力するためのキーである。
表示部12は、LCD(Liquid Crystal Display)や有機EL(Electro-Luminescence)ディスプレイ等により構成され、CPU10から入力される表示信号の指示に従って、各種画面を表示する。
RAM13は、CPU10により記憶部14から読み出された各種プログラム、入力若しくは出力データ、及びパラメータ等を一時的に格納する。
記憶部14は、半導体の不揮発性メモリ等により構成される。記憶部14は、CPU10で実行されるシステムプログラム、各種処理プログラム、これらのプログラムの実行に必要なデータ等を記憶する。
例えば、記憶部14は、後述する出退勤情報登録処理や、商品の登録処理、点検処理、精算処理等を実行するためのプログラムを記憶している。
これらのプログラムは、コンピュータ読み取り可能なプログラムコードの形態で記憶部14に格納される。CPU10は、当該プログラムコードに従った動作を逐次実行する。
また、記憶部14は、商品の登録情報(購買された商品の商品名、売上個数、売上金額等の売上データ)を格納するための商品登録情報ファイル141や、売上データ処理装置1が設置されている店舗の店舗名等を記憶している。
通信部15は、モデム、ルータ、ネットワークカード等により構成される。通信部15は、通信ネットワークNを介して接続された情報センタサーバ2等の外部装置とのデータ送受信を行う。
印字部16は、例えば、サーマルプリンタ(感熱式プリンタ)であり、レシート用、ジャーナル用のロール紙(感熱紙)を有し、CPU10から入力される指示信号に従って、各ロール紙に対して金額や売上データ等をプリントアウトする。
ドロア17は、硬貨や紙幣等の現金を収納する引出しである。ドロア17は、CPU10の指示により、引出しが開けられる。
スキャナ部18は、商品に設けられたバーコードを読み取るバーコードリーダやバーコードスキャナ等を備える。
計時部19は、RTC(Real Time Clock)等の計時回路を内蔵し、現在時刻及び現在日付を計時してCPU10に出力する。
(情報センタサーバ2の構成)
情報センタサーバ2は、売上データ処理装置1から送信された売上データを蓄積記憶する。また、情報センタサーバ2は、売上データ処理装置1から送信された従業員の出退データや退勤データを記憶し、予め記憶されたメール配信指令に従ってメールを配信する。
図4に、情報センタサーバ2の機能構成例を示す。図4に示すように、情報センタサーバ2は、CPU20、入力部21、表示部22、RAM23、記憶部24、通信部25、計時部26、メール配信装置27等を備えて構成され、各部はバス28を介して接続されている。
CPU20は、記憶部24に記憶されているシステムプログラムを読み出し、RAM23内に形成されたワークエリアに展開し、該システムプログラムに従って各部を制御する。また、CPU20は、記憶部24に記憶されている各種処理プログラムを読み出してワークエリアに展開し、後述するデータ受信処理、メール配信処理を始めとする各種処理を実行する。
入力部21は、カーソルキー、数字入力キー、及び各種機能キー等を備えたキーボードと、マウス等のポインティングデバイスを備えて構成され、キーボードに対するキー操作やマウス操作により入力された指示信号をCPU20に出力する。
表示部22は、LCDやCRT(Cathode Ray Tube)や有機ELディスプレイ等により構成され、CPU20から入力される表示信号の指示に従って、各種画面を表示する。
RAM23は、CPU20により記憶部24から読み出された各種プログラム、入力若しくは出力データ、及びパラメータ等を一時的に格納する。
例えば、RAM23は、図5に示すように、メール配信一時メモリ231、従業員設定一時メモリ232、メール配信予定メモリ233等のデータ格納領域を有する。
メール配信一時メモリ231は、後述するメール配信処理において、現時刻で配信すべきメールの送信先及びメール内容を一時的に格納するための領域である。
従業員設定一時メモリ232は、後述するメール配信処理において、メールの送信先に該当する従業員の従業員コード、名前、メールアドレス等を格納するための領域である。
メール配信予定メモリ233は、後述するメール配信処理において、従業員設定一時メモリ232に記憶された従業員のうち、メール配信対象として判別された従業員の従業員コード、名前、メールアドレスを格納するための領域である。
記憶部24は、HDD(Hard Disc Drive)や半導体の不揮発性メモリ等により構成される。記憶部24は、CPU20で実行されるシステムプログラムや、データ受信処理、メール配信処理を始めとする各種処理を実行するためのプログラム、これらのプログラムの実行に必要なデータを記憶する。各種プログラムは、コンピュータ読み取り可能なプログラムコードの形態で記憶部24に格納される。CPU20は、当該プログラムコードに従った動作を逐次実行する。
また、記憶部24は、売上情報DB(Data Base)241、出退勤履歴ファイル242、従業員設定ファイル243、メール配信指令設定ファイル244を記憶している。
売上情報DB241は、売上データ処理装置1から送信される売上データを格納するデータベースである。
出退勤履歴ファイル242は、売上データ処理装置1が設置されている全店舗における従業員の出退勤情報を格納するファイルである。図6に、出退勤履歴ファイル242のデータ格納例を示す。図6に示すように、出退勤履歴ファイル242には、「従業員コード」、「出勤情報(店舗名、出勤時刻)」、「退勤情報(店舗名、退勤時刻)」が対応付けられて1レコードとして格納される。「従業員コード」は、従業員を個別に識別するためのコードである。
売上データ処理装置1から出勤データが受信されると、出退勤履歴ファイル242に1レコードが追加され、出勤データに含まれる従業員コード、店舗名、出勤時刻が格納される。売上データ処理装置1から退勤データが受信されると、出退勤履歴ファイル242において、退勤データと従業員コードが一致し、退勤時刻がセットされていないレコードに、店舗名及び退勤時刻が格納される。
従業員設定ファイル243は、売上データ処理装置1が設置されている全店舗の従業員の情報を格納するファイルである。図7に、従業員設定ファイル243のデータ格納例を示す。図7に示すように、従業員設定ファイル243には、各従業員の「従業員コード」、「管理レベル」、「名前」、「メールアドレス」の情報が対応付けられて1レコードとして格納されている。「管理レベル」は、各従業員の職務レベルを示すものであり、「オーナー」、「Gマネージャー」、「マネージャー」、「店員」の何れかが設定可能である。Gマネージャーは、ジェネラルマネージャーの略であり、一又は複数店舗の運営を統括する役職である。「メールアドレス」は、その従業員が所持する携帯端末のメールアドレスである。
ここで、従業員設定ファイル243では、「従業員コード」を便宜的にオーナーに与えることができ、また、上述のように「管理レベル」に「オーナー」を設定することが可能である。即ち、店舗システム100では、オーナーに従業員コードを与えて従業員と同様に名前、管理レベル、メールアドレスを従業員設定ファイル243に登録しておくことによって、オーナーを従業員と同様に取り扱うことができる。オーナーは、売上データ処理装置1において従業員コードを用いて従業員と同様に各種操作や出退勤情報の登録等を行うことが可能である。
メール配信指令設定ファイル244は、従業員に配信すべきメールに関する情報を格納するファイルである。図8に、メール配信指令設定ファイル244のデータ格納例を示す。図8に示すように、メール配信指令設定ファイル244には、配信すべき各メールの「配信時刻」、「送信先」、「メール内容」が対応付けられて1レコードとして格納される。「送信先」には、メールの送信先となる管理レベル(オーナー、Gマネージャー、マネージャー、店員)の何れかが設定される。
通信部25は、モデム、ルータ、ネットワークカード等によって構成される。通信部25は、通信ネットワークNに接続された売上データ処理装置1を始めとする外部装置とのデータ送受信を行う。
計時部26は、RTC(Real Time Clock)等の計時回路を内蔵し、現在時刻及び現在日付を計時してCPU20に出力する。
メール配信装置27は、SMTP(Simple Mail Transfer Protocol)サーバとしての機能を備え、CPU20からの指示に従って、メール配信を行う。
(店舗システム100の動作)
次に、店舗システム100の動作について説明する。
まず、従業員の出勤時及び退勤時における売上データ処理装置1の処理について説明する。
〈出退勤情報登録処理〉
従業員は、出勤すると、入力部11のテンキー111により自身の従業員コードを入力し、出勤キー114を押下する操作を行う。退勤時には、入力部11のテンキー111により自身の従業員コードを入力し、退勤キー115を押下する操作を行う。これらの操作に応じて売上データ処理装置1においては出退勤情報登録処理が実行される。
図9に、出退勤情報登録処理のフローチャートを示す。出退勤情報登録処理は、出勤キー114又は退勤キー115が押下された際に、CPU10とプログラムとの協働により実行される。
まず、計時部19から現在時刻が取得され(ステップS1)、出勤/退勤(出勤又は退勤)を区別するコマンドコード、従業者コード、現在時刻、及び店舗名が通信部15により情報センタサーバ2に送信される(ステップS2)。出勤キー114の押下により出退勤情報登録処理が開始された場合は、出勤を示すコマンドコード、従業者コード、現在時刻(即ち、出勤時刻)、及び店舗名からなる出勤データが情報センタサーバ2へ送信される。退勤キー115の押下により出退勤情報登録処理が開始された場合は、退勤を示すコマンドコード、従業者コード、現在時刻(即ち、退勤時刻)、及び店舗名からなる退勤データが情報センタサーバ2へ送信される。
情報センタサーバ2への出勤データ又は退勤データの送信後、処理は情報センタサーバ2からの応答待ち状態となる(ステップS3)。通信部15により情報センタサーバ2からの応答が受信されると(ステップS3;YES)、受信された応答の内容が判別される(ステップS4)。受信された応答が出退勤情報登録の正常終了を示すデータ(正常終了+従業員の名前+出勤(退勤)時刻)であると判別されると(ステップS4;正常)、受信された応答に含まれる従業員名及び時刻が表示部12に表示され(ステップS5)、出退勤情報登録処理は終了する。
一方、通信部15により情報センタサーバ2から受信された応答が出退勤情報登録エラーを示すデータであると判別されると(ステップS4;エラー)、受信された応答に基づいてエラーメッセージが表示部12に表示され(ステップS6)、出退勤情報登録処理は終了する。
次に、情報センタサーバ2の動作について説明する。
〈データ受信処理〉
情報センタサーバ2においては、売上データ処理装置1からのデータの受信に応じて、図10A〜図10Bに示すデータ受信処理が実行される。データ受信処理は、CPU20と記憶部24に記憶されているプログラムとの協働により実行される。
通信部25により売上データ処理装置1から送信されたデータが受信されると(ステップS11)、受信されたデータが売上データであるか否かが判断される(ステップS12)。売上データ処理装置1から送信されるデータは、出勤/退勤を区別するためのコマンドコード、又は売上データであることを示すコマンドコードが含まれており、このコマンドコードに基づいて、受信されたデータが売上データであるか否かが判断される。
ステップS12において、受信されたデータが売上データであると判断されると(ステップS12;YES)、受信された売上データの確認処理が行われる(ステップS13)。例えば、受信された売上データのデータ構造が、予め定められた売上データのデータ構造であるか、データが壊れていないか等が確認される。確認の結果、予め定められたデータ構造ではない、データが壊れている等の異常が存在した場合(ステップS14;YES)、通信部25により売上データ処理装置1に売上データ登録エラーを示す応答が返送され(ステップS15)、データ受信処理は終了する。確認の結果、売上データに異常が存在しない場合(ステップS14;NO)、売上情報DB241に売上データが格納され(ステップS16)、通信部25により売上データ処理装置1に売上データ登録の正常終了を示す応答が返送され(ステップS17)、データ受信処理は終了する。
ステップS12において、受信されたデータが売上データではないと判断されると(ステップS12;NO)、受信されたデータが出勤データであるか否かが判断される(ステップS18)。受信されたデータが出勤データであると判断されると(ステップS18;YES)、受信された出勤データに含まれる従業員コードと「従業員コード」が一致するレコードが出退勤履歴ファイル242から検索される(ステップS19)。なお、検索時には、RAM23に形成される検索カウンタが使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下検索カウンタを1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
ステップS19における検索の結果、受信された出勤データと「従業員コード」が一致するレコードが存在した場合(ステップS20;YES)、検索されたレコードに「退勤時刻」がセット(格納)されているか否かが判断される(ステップS21)。検索されたレコード「退勤時刻」がセットされていると判断されると(ステップS21;YES)、検索カウンタが1インクリメントされ(ステップS22)、処理はステップS19に戻り、検索カウンタに対応する位置のレコードから新たに検索が開始される。
ここで、「退勤時刻」がセットされているレコードは、過去の出退勤情報であるので、本処理では使用しない。
一方、検索されたレコードに「退勤時刻」がセットされていないと判断されると(ステップS21;NO)、出退勤情報登録エラーを示す応答が通信部25により売上データ処理装置1に返送され(ステップS23)、データ受信処理は終了する。「退勤時刻」がセットされていないレコードが存在した場合、売上データ処理装置1で同一従業員について出勤操作が続けて行われたことを示すので、出退勤情報登録エラーを示す応答が売上データ処理装置1に返送される。
ステップS19における検索の結果、受信された出勤データと「従業員コード」が一致するレコードが出退勤履歴ファイル242の以降のレコードに存在せず、最終レコードに到達した場合(ステップS20;NO)、出退勤履歴ファイル242に新規レコードが追加され、受信された出勤データの「従業員コード」、「店舗名」及び「出勤時刻」がセット(格納)される(ステップS24)。そして、従業員コードに対応する「従業員名」が従業員設定ファイル243から取得され(ステップS25)、出退勤情報登録の正常終了を示す応答データ(正常終了+従業員の名前+出勤時刻)が通信部25により売上データ処理装置1に返送され(ステップS26)、データ受信処理は終了する。
一方、ステップS18において、受信されたデータが出勤データではないと判断されると(ステップS18;NO)、受信されたデータが退勤データであるか否かが判断される(ステップS27)。受信されたデータが退勤データであると判断されると(ステップS27;YES)、受信された出勤データに含まれる従業員コードと「従業員コード」が一致するレコードが出退勤履歴ファイル242から検索される(ステップS28)。検索時には、RAM23に形成される検索カウンタが使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下検索カウンタを1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
ステップS28における検索の結果、受信された退勤データと「従業員コード」が一致するレコードが存在した場合(ステップS29;YES)、検索されたレコードに「退勤時刻」がセットされているか否かが判断される(ステップS30)。検索されたレコードに「退勤時刻」がセットされていると判断されると(ステップS30;YES)、検索カウンタが1インクリメントされ(ステップS31)、処理はステップS28に戻り、検索カウンタに対応する位置のレコードから新たに検索が開始される。ここで、「退勤時刻」がセットされているレコードは、過去の出退勤情報であるので、本処理では使用しない。
一方、検索されたレコードに「退勤時刻」がセットされていないと判断されると(ステップS30;NO)、出退勤履歴ファイル242の検索されたレコードに「店舗名」及び「退勤時刻」が格納される(ステップS32)。そして、「従業員コード」に対応する「従業員名」が従業員設定ファイル243から取得され(ステップS33)、出退勤情報登録の正常終了を示す応答データ(正常終了+従業員の名前+退勤時刻)が通信部25により売上データ処理装置1に返送され(ステップS34)、データ受信処理は終了する。
一方、ステップS27において、受信されたデータが退勤データではないと判断された場合(ステップS27;NO)、又は、ステップS28における検索の結果、受信された退勤データと「従業員コード」が一致するレコードが出退勤履歴ファイル242の以降のレコードに存在せず、最終レコードに到達した(即ち、「従業員コード」が一致するレコードが存在しないか又は「従業員コード」が一致する全てのレコードに「退勤時刻」がセットされていた)場合(ステップS29;NO)、出退勤情報登録エラーを示す応答が通信部25により売上データ処理装置1に返送され(ステップS35)、データ受信処理は終了する。出退勤履歴ファイル142に「従業員コード」が一致するレコードが存在しないか又は「従業員コード」が一致する全てのレコードに「退勤時刻」がセットされていた場合、売上データ処理装置1において、その従業員について今回の退勤操作に対応する出勤操作がされていないことを示すので、出退勤情報登録エラーとなる。
以上のデータ受信処理により、売上データ、出勤データ、退勤データが情報センタサーバ2に登録される。
〈メール配信処理〉
次に、情報センタサーバ2において所定時間毎に実行されるメール配信処理について説明する。本実施形態においては、メール配信処理は1秒毎に実行される。図11A〜図11Cに、メール配信処理のフローチャートを示す。メール配信処理は、CPU20と記憶部24に記憶されているプログラムとの協働により実行される。
まず、次のメール配信処理実行のために1秒間のタイマが起動される(ステップS41)。即ち、CPU20のクロックによる1秒間のカウントが開始される。
次いで、計時部26から現在時刻が取得され(ステップS42)、メール配信指令設定ファイル244の処理対象レコードの「配信時刻」が取得される(ステップS43)。ここで、RAM23には「メール配信指令設定ファイルの検索カウンタ」が形成され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下「メール配信指令設定ファイルの検索カウンタ」を1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて1レコードずつ処理対象のレコードをずらして処理が行われる。
次いで、現在時刻とメール配信指令設定ファイル244の処理対象レコードの「配信時刻」が比較される(ステップS44)。なお、ステップS44の比較においては、現在時刻と「配信時刻」の時分が一致した場合、一致したと判断される。
比較の結果、現在時刻と「配信時刻」が一致した場合(ステップS44;一致)、メール配信指令設定ファイル244から該当するレコードの「送信先」及び「メール内容」が取得され、RAM23のメール配信一時メモリ231に格納される(ステップS45)。
次いで、メール配信一時メモリ231に格納した「送信先」と「管理レベル」が一致するレコードが従業員設定ファイル243から検索される(ステップS46)。検索時には、RAM23に形成される「従業員設定ファイルの検索カウンタ」が使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、「従業員設定ファイルの検索カウンタ」を1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
検索の結果、従業員設定ファイル243にメール配信一時メモリ231に格納した「送信先」と「管理レベル」が一致するレコードが存在した場合(ステップS47;YES)、RAM23の従業員設定一時メモリ232に検索されたレコードの「従業員コード」、「名前」、「メールアドレス」が一時記憶される(ステップS48)。
次いで、従業員設定一時メモリ232に記憶されたレコードの「管理レベル」が参照され、オーナーもしくはGマネージャーであるか否かが判断される(ステップS49)。従業員設定一時メモリ232に記憶されたレコードの「管理レベル」がオーナーもしくはGマネージャーであると判断された場合(ステップS49;YES)、従業員設定一時メモリ232に記憶されたデータがメール配信予定メモリ233にセットされる(ステップS50)。そして、「従業員設定ファイルの検索カウンタ」が1インクリメントされ(ステップS51)、処理はステップS46に戻り、「従業員設定ファイルの検索カウンタ」に対応する位置のレコードから新たに検索が開始される。即ち、管理レベルがオーナーもしくはGマネージャーの場合は、出勤しているか否かにかかわらず業務の進捗を把握する必要があるので、メール配信対象と判別され、メール配信予定メモリ233にメールアドレス等が設定される。
一方、従業員設定一時メモリ232に記憶されたレコードの「管理レベル」がオーナーもしくはGマネージャーではないと判断された場合(ステップS49;NO)、ステップS52〜S54の処理によって出退勤に基づいてメール配信対象とするか否かが判別される。
まず、従業員設定一時メモリ232に記憶されたレコードと「従業員コード」が一致するレコードが出退勤履歴ファイル242から検索される(ステップS52)。検索時には、RAM23に形成される「出退勤履歴ファイルの検索カウンタ」が使用され、先頭のレコードを1として、「出退勤履歴ファイルの検索カウンタ」を1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
ステップS52における検索の結果、出退勤履歴ファイル242に「従業員コード」が一致するレコードが存在した場合(ステップS53;YES)、当該レコードに「退勤時刻」がセットされているか否かが判断される(ステップS54)。当該レコードに「退勤時刻」がセットされていると判断されると(ステップS54;YES)、「出退勤履歴ファイルの検索カウンタ」が1インクリメントされ(ステップS56)、処理はステップS52に戻り、「出退勤履歴ファイルの検索カウンタ」に対応する位置のレコードから新たに検索が開始される。ここで、「退勤時刻」がセットされているレコードは、過去の出勤についてのレコードであるか又は当日すでに退勤していることを示している。よって、メール配信対象として判別されず、メールアドレスはセットされない。
ステップS54において、ステップS53において検索されたレコードに「退勤時刻」がセットされていないと判断されると(ステップS54;NO)、従業員設定一時メモリ232に記憶されたデータがメール配信予定メモリ233にセットされる(ステップS55)。そして、「出退勤履歴ファイルの検索カウンタ」が1インクリメントされ(ステップS56)、処理はステップS52に戻り、「出退勤履歴ファイルの検索カウンタ」に対応する位置のレコードから新たに検索が開始される。ここで、「退勤時刻」が格納されていないレコードは、その「従業員コード」の従業員が出勤中であることを示しており、出勤中の従業員がメール配信対象として、メール配信予定メモリ233にメールアドレスがセットされる。
一方、ステップS52における検索の結果、従業員設定一時メモリ232に記憶されたレコードと「従業員コード」が一致するレコードが出退勤履歴ファイル242の以降のレコードに存在せず、最終レコードに到達したと判断された場合(ステップS53;NO)、処理はステップS51に移行し、「従業員設定ファイルの検索カウンタ」が1インクリメントされ(ステップS51)、処理はステップS46に戻り、「従業員設定ファイルの検索カウンタ」に対応する位置のレコードから新たな検索が開始される。
ステップS46における検索の結果、メール配信一時メモリ231に格納した「送信先」と「管理レベル」が一致するレコードが従業員設定ファイル243の以降のレコードに存在せず、全てのレコードの検索が終了したと判断された場合(ステップS47;NO)、処理はステップS57に移行する。
ステップS57においては、メール配信一時メモリ231に記憶されている「メール内容」から今回のメール内容がコマンドか文字列かが判別される(ステップS57)。ここで、メール配信指令設定ファイル244及びメール配信一時メモリ231の「メール内容」には、コマンドか文字列かの区分(例えば、図8の「文字列:」又は「コマンド:」)が含まれており、この区分によって、コマンドか文字列かが判別される。
今回のメール内容がコマンド(売上データメール配信コマンド)であると判別された場合(ステップS58;YES)、売上情報DB241から売上データが取得され、取得された売上データを本文とし、件名を「売上連絡」とするメールが作成され(ステップS59)、処理はステップS62に移行する。本実施形態においては、コマンドは売上データをメールで配信するコマンドである、売上データメール配信コマンドのみとするが、その他のコマンドとしてもよい。
今回のメール内容がコマンドではなく(ステップS58;NO)、文字列であると判別されると(ステップS60;YES)、メール配信一時メモリ231に記憶されている「メール内容」に記憶されている文字列をメール本文とし、件名を「業務連絡」とするメールが作成され(ステップS61)、処理はステップS62に移行する。
ステップS62においては、メール配信予定メモリ233からメールアドレスが取得されてステップS59又はステップS61で作成されたメールのあて先として設定され(ステップS62)、メール配信装置27により通信部25を介してメールが配信される(ステップS63)。
メール配信後、メール配信予定メモリ233に記憶されている全てのメールアドレスに対してメールが配信されたか否かが判断され、全てのメールアドレスに対してメールがまだ配信されていないと判断されると(ステップS64;NO)、処理はステップS62に戻る。そして、ステップS62〜S63の処理が繰り返し実行され、メール配信予定メモリ233に記憶されている全てのメールアドレスに対してメールが配信されたと判断されると、(ステップS64;YES)、「メール配信指令設定ファイルの検索カウンタ」が1インクリメントされ(ステップS65)、処理はステップS43に戻り、「メール配信指令設定ファイルの検索カウンタ」に対応する位置のレコードを処理対象のレコードとして、ステップS43以降の処理が実行される。
ステップS44において、現在時刻と「配信時刻」が一致しないと判断された場合(ステップS44;一致しない)、メール配信指令設定ファイル244の全レコードについての処理が終了したか否かが判断され、終了していないと判断されると(ステップS66;NO)、「メール配信指定設定ファイルの検索カウンタ」が1インクリメントされ(ステップS67)、処理はステップS43に戻り、「メール配信指令設定ファイルの検索カウンタ」に対応する位置のレコードを処理対象のレコードとして、ステップS43以降の処理が実行される。メール配信指令設定ファイル244の全レコードについての処理が終了したと判断されると(ステップS66;YES)、メール配信処理は終了する。
以上説明したように、実施形態1の店舗システム100によれば、情報センタサーバ2のCPU20は、売上データ処理装置1から送信された店舗の業務遂行者(従業員コードで管理される従業者及びオーナー)の出退勤情報を記憶部24に記憶された出退勤履歴ファイル242に蓄積しておき、出退勤履歴ファイル242に記憶されている出退勤情報に基づいて売上データや業務連絡に係るメールの配信対象となる業務遂行者を判別し、配信対象として判別された業務遂行者の携帯端末のアドレスにメール配信装置27により電子メールを送信する。
従って、出勤していないマネージャーや店員等の、メールを配信する必要のない業務遂行者の携帯端末にメールが配信されてしまうことを防止することができる。
また、記憶部24は、全店舗の業務遂行者の管理レベルが格納された従業員設定ファイル243を記憶しており、CPU20は、管理レベルがオーナー、Gマネージャー等の予め定められた管理レベルである業務遂行者については、全て電子メールの配信対象と判別し、予め定められた管理レベルではない業務遂行者については、出退勤情報に基づいて電子メールの配信対象とするか否かの判別を行う。
従って、オーナーやGマネージャー等の店舗の管理者や責任者等、業務や売上を把握しておく必要がある管理レベルの者には、出勤しているか否かにかかわらずメールを配信することが可能となる。
また、記憶部24は、電子メールの配信時刻と、送信先と、メール内容とを対応付けて格納するメール配信指令設定ファイル244を記憶しており、CPU20は、メール配信指令設定ファイル244に設定されている配信時刻が到来した際に、送信先として指定されている業務遂行者のなかから電子メールの配信対象の業務遂行者を判別し、メール配信指令設定ファイル244に記憶されているメール内容に基づいて、配信対象として判別された業務遂行者の携帯端末のアドレスにメール配信装置27によりメールを配信する。
従って、予め設定された配信時刻に、管理レベルや出退勤情報に基づいて、予め送信先として指定された業務遂行者のうち必要な業務遂行者にメールを配信することが可能となる。
〔実施形態2〕
以下、本発明の実施形態2について説明する。
実施形態2においては、実施形態1において情報センタサーバ2で記憶していた出退勤履歴ファイル、従業員設定ファイル等を売上データ処理装置1で記憶し、売上データ処理装置1でメール配信対象となる従業員の判別やメールの作成等を行う。
(実施形態2の構成)
まず、実施形態2の構成を説明する。
実施形態2における店舗システム100の全体構成は、実施形態1で説明したものと同様である。売上データ処理装置1、情報センタサーバ2の構成は、実施形態1で説明したものと略同様であるので、異なる部分について以下に説明する。
売上データ処理装置1の記憶部14は、商品登録情報ファイル141の他、出退勤履歴ファイル142、従業員設定ファイル143、業務連絡ファイル144を記憶している。
出退勤履歴ファイル142は、売上データ処理装置1が設置されている店舗における従業員の出退勤情報を格納するファイルである。図12に、出退勤履歴ファイル142のデータ格納例を示す。図12に示すように、出退勤履歴ファイル142には、「従業員コード」、「出勤時刻」、「退勤時刻」が対応付けられて1レコードとして格納される。
従業員設定ファイル143は、売上データ処理装置1が設置されている店舗の従業員の情報を格納するファイルである。従業員設定ファイル143のデータ格納構成は、図7で示したものと同様である。即ち、従業員設定ファイル143には、図7に示すように、各従業員の「従業員コード」、「管理レベル」、「名前」、「メールアドレス」の情報が対応付けられて1レコードとして格納される。管理レベルは、各従業員の職務レベルを示すものであり、「オーナー」、「Gマネージャー」、「マネージャー」、「店員」の何れかが設定可能である。メールアドレスは、その従業員が所持する携帯端末のメールアドレスである。
ここで、従業員設定ファイル143では、従業員設定ファイル243と同様に、「従業員コード」を便宜的にオーナーに与えることができ、また、上述のように「管理レベル」に「オーナー」を設定することが可能である。即ち、店舗システム100では、オーナーに従業員コードを与えて従業員と同様に名前、管理レベル、メールアドレスを従業員設定ファイル143に登録しておくことによって、オーナーを従業員と同様に取り扱うことができる。オーナーは、売上データ処理装置1において従業員コードを用いて従業員と同様に各種操作や出退勤情報の登録等を行うことが可能である。
業務連絡ファイル144は、従業員に配信すべきメールに関する情報を格納するファイルである。図13に、業務連絡ファイル144のデータ格納例を示す。図13に示すように、業務連絡ファイル144には、配信すべき各メールの「配信時刻」、「送信先」、「操作」、「メール内容」、「操作完了日付時刻」が対応付けられて1レコードとして格納される。「送信先」は、メールの送信先として指定されている管理レベルを示す情報であり、ここでは、「オーナー」、「Gマネージャー」、「マネージャー」、「店員」の何れかが指定可能である。「操作」は、メールを配信するか否かの判断基準となる操作を示す情報であり、ここでは、点検操作、釣銭準備操作、精算操作の何れかが設定可能である。「操作完了日付時刻」は、「操作」で指定されている操作が完了した最終日時を示す情報である。
また、記憶部14は、後述する出勤情報登録処理、退勤情報登録処理、釣銭準備処理、点検処理、精算処理、メール配信要求処理等の各種処理を実行するためのプログラムを記憶しており、CPU10は、プログラムに従ってこれらの処理を実行する。
また、売上データ処理装置1のRAM13は、図5に示すように、メール配信一時メモリ131、従業員設定一時メモリ132、メール配信予定メモリ133等のデータ格納領域を有する。
メール配信一時メモリ131は、後述するメール配信要求処理において、現時刻で配信すべきメールの送信先及びメール内容を一時的に格納するための領域である。
従業員設定一時メモリ132は、後述するメール配信要求処理において、メールの送信先に該当する従業員の従業員コード、名前、メールアドレス等を格納するための領域である。
メール配信予定メモリ133は、後述するメール配信要求処理において、従業員設定一時メモリ132に記憶された従業員のうち、メール配信対象として判別された従業員の従業員コード、名前、メールアドレスを格納するための領域である。
その他の売上データ処理装置1、情報センタサーバ2の構成は、実施形態1で説明したものと同様であるので説明を援用する。
(実施形態2における動作)
次に、実施形態2の動作について説明する。
まず、従業員の出勤時及び退勤時における売上データ処理装置1の処理について説明する。
従業員は、出勤すると、入力部11のテンキー111により自身の従業員コードを入力し、出勤キー114を押下する操作を行う。この操作に応じて、出勤情報登録処理が実行される。
〈出勤情報登録処理〉
図14に、出勤情報登録処理のフローチャートを示す。出勤情報登録処理は、従業員コードが入力され出勤キー114が押下された際に、CPU10とプログラムとの協働により実行される。
まず、計時部19から現在時刻が取得され(ステップS71)、テンキー111により入力された数値(入力コード)と「従業者コード」が一致するレコードが出退勤履歴ファイル142から検索される(ステップS72)。なお、検索時には、RAM13に形成される検索カウンタが使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下検索カウンタを1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
ステップS72における検索の結果、入力コードと「従業員コード」が一致するレコードが存在した場合(ステップS73;YES)、検索されたレコードに「退勤時刻」がセットされているか否かが判断される(ステップS74)。検索されたレコードに「退勤時刻」がセットされていると判断されると(ステップS74;YES)、検索カウンタが1インクリメントされ(ステップS75)、処理はステップS72に戻り、検索カウンタに対応する位置のレコードから新たに検索が開始される。
検索されたレコードに「退勤時刻」がセットされていないと判断されると(ステップS74;NO)、エラーメッセージが表示部12に表示され(ステップS76)、出勤情報登録処理は終了する。「退勤時刻」がセットされていないレコードが存在した場合、売上データ処理装置1で同一従業員について出勤操作が続けて行われたことを示すので、その旨を示すエラーメッセージが表示部12に表示される。
一方、ステップS72の検索の結果、入力コードと「従業員コード」が一致するレコードが出退勤履歴ファイル142の以降のレコードに存在せず、最終レコードに到達した(即ち、「従業員コード」が一致するレコードが存在しないか又は「従業員コード」が一致する全てのレコードに「退勤時刻」がセットされていた)場合(ステップS73;NO)、出退勤履歴ファイル142に新規レコードが追加され、入力コードが従業員コードに、ステップS71で取得された現在時刻が「出勤時刻」に格納される(ステップS77)。そして、出勤情報登録処理は終了する。
〈退勤情報登録処理〉
従業員は、退勤時には入力部11のテンキー111により自身の従業員コードを入力し、退勤キー115を押下する操作を行う。この操作に応じて売上データ処理装置1においては退勤情報登録処理が実行される。
図15に、退勤情報登録処理のフローチャートを示す。退勤情報登録処理は、従業員コードが入力され退勤キー115が押下された際に、CPU10とプログラムとの協働により実行される。
まず、計時部19から現在時刻が取得され(ステップS81)、テンキー111により入力された数値(入力コード)と「従業者コード」が一致するレコードが出退勤履歴ファイル142から検索される(ステップS82)。検索時には、RAM13に形成される検索カウンタが使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下検索カウンタを1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
ステップS82における検索の結果、入力コードと「従業員コード」が一致するレコードが出退勤履歴ファイル142に存在した場合(ステップS83;YES)、検索されたレコードに「退勤時刻」がセットされているか否かが判断される(ステップS84)。検索されたレコードに「退勤時刻」がセットされていると判断されると(ステップS84;YES)、検索カウンタが1インクリメントされ(ステップS85)、処理はステップS82に戻り、検索カウンタに対応する位置のレコードから新たに検索が開始される。
ここで、「退勤時刻」がセットされているレコードは、過去の出退勤情報であるので、本処理では使用しない。
ステップS84において、検索されたレコードに「退勤時刻」がセットされていないと判断されると(ステップS84;NO)、出退勤履歴ファイル142の検索されたレコードに「退勤時刻」がセットされ(ステップS86)、退勤情報登録処理は終了する。
一方、ステップS82における検索の結果、入力コードと「従業員コード」が一致するレコードが出退勤履歴ファイル142の以降のレコードに存在せず、最終レコードに到達した(即ち、「従業員コード」が一致するレコードが存在しないか又は「従業員コード」が一致する全てのレコードに「退勤時刻」がセットされていた)場合(ステップS83;NO)、エラーメッセージが表示部12に表示され(ステップS87)、退勤情報登録処理は終了する。出退勤履歴ファイル142に「従業員コード」が一致するレコードが存在しないか又は「従業員コード」が一致する全てのレコードに「退勤時刻」がセットされていた場合、売上データ処理装置1において、その従業員について今回の退勤操作に対応する出勤操作がされていないことを示すので、その旨を示すエラーメッセージが表示部12に表示される。
次に、売上データ処理装置1において各種キーの操作に応じて実行される処理について説明する。
〈釣銭準備処理〉
図16に、釣銭準備キー116の押下に応じてCPU10により実行される釣銭準備処理について説明する。釣銭準備処理は、CPU10と記憶部14に記憶されているプログラムとの協働により実行される。
入力部11により釣銭準備操作(例えば、ドロア17に準備されている各金種の釣銭の数が入力される等)が行われると(ステップS91)、入力部11から行われた操作内容(入力された数の値等)が表示部12に表示される(ステップS92)。また、入力部11から行われた操作内容(各金種の枚数等)が印字部16により印字される(ステップS93)。
次いで、記憶部14の業務連絡ファイル144において、「操作」のエリアに「釣銭準備操作」がセットされているレコードが存在するか否かが判断される(ステップS94)。「釣銭準備操作」がセットされているレコードが存在すると判断されると(ステップS94;YES)、計時部19から現在の日付及び時刻が取得され(ステップS95)、該当するレコードの「操作完了日付時刻」のエリアに現在の日付及び時刻がセットされる(ステップS96)。そして、釣銭準備処理は終了する。
一方、業務連絡ファイル144において、「操作」のエリアに「釣銭準備操作」がセットされているレコードが存在しないと判断されると(ステップS94;NO)、釣銭準備処理は終了する。
〈点検処理〉
図17に、点検モードキー113cの押下により動作モードが点検モードに移行した際にCPU10により実行される点検処理について説明する。点検処理は、CPU10と記憶部14に記憶されているプログラムとの協働により実行される。
入力部11により所定の点検操作(例えば、点検処理の対象となる範囲(期間等)の入力等)が行われると(ステップS101)、入力部11から行われた点検操作の内容が表示部12に表示される(ステップS102)。そして、入力部11から行われた点検操作に応じて、商品登録情報ファイル141の売上データが読み出されて印字部16により印字される(ステップS103)。
次いで、記憶部14の業務連絡ファイル144において、「操作」のエリアに「点検操作」が格納されているレコードが存在するか否かが判断される(ステップS104)。「点検操作」が格納されているレコードが存在すると判断されると(ステップS104;YES)、計時部19から現在の日付及び時刻が取得され(ステップS105)、該当するレコードの「操作完了日付時刻」のエリアに現在の日付及び時刻がセットされる(ステップS106)。そして、点検処理は終了する。
一方、業務連絡ファイル144において、「操作」のエリアに「点検操作」がセットされているレコードが存在しないと判断されると(ステップS104;NO)、点検処理は終了する。
〈精算処理〉
図18に、精算モードキー113dの押下により動作モードが精算モードに移行した際にCPU10により実行される精算処理について説明する。精算処理は、CPU10と記憶部14に記憶されているプログラムとの協働により実行される。精算処理は、夜間等、一日の業務の終了時に行われる。
入力部11により所定の精算操作(例えば、精算処理の対象となる範囲の入力等)が行われると(ステップS111)、入力部11から行われた精算操作の内容が表示部12に表示される(ステップS112)。そして、入力部11から行われた精算操作に応じて、商品登録情報ファイル141の売上データが読み出されて印字部16により印字され(ステップS113)、読み出された売上データが商品登録情報ファイル141から削除される(ステップS114)。
次いで、記憶部14の業務連絡ファイル144において、「操作」のエリアに「精算操作」が格納されているレコードが存在するか否かが判断される(ステップS115)。「精算操作」が格納されているレコードが存在すると判断されると(ステップS115;YES)、計時部19から現在の日付及び時刻が取得され(ステップS116)、該当するレコードの「操作完了日付時刻」のエリアに現在の日付及び時刻がセットされる(ステップS117)。そして、精算処理は終了する。
一方、業務連絡ファイル144において、「操作」のエリアに「精算操作」がセットされているレコードが存在しないと判断されると(ステップS115;NO)、精算処理は終了する。
〈メール配信要求処理〉
次に、売上データ処理装置1において所定時間毎に実行されるメール配信要求処理について説明する。本実施形態においては、メール配信要求処理は1秒毎に実行される。図19A〜図19Cに、メール配信要求処理のフローチャートを示す。メール配信要求処理は、CPU10と記憶部14に記憶されているプログラムとの協働により実行される。
まず、次のメール配信要求処理実行のために1秒間のタイマが起動される(ステップS121)。即ち、CPU10のクロックによる1秒間のカウントが開始される。
次いで、計時部19から現在時刻が取得され(ステップS122)、業務連絡ファイル144の処理対象のレコードの「配信時刻」及び「操作完了日付時刻」が取得される(ステップS123)。ここで、RAM13には「業務連絡ファイルの検索カウンタ」が形成され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下検索カウンタを1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて1レコードずつ処理対象のレコードをずらして処理が行われる。
次いで、現在時刻と業務連絡ファイル144の処理対象レコードの「配信時刻」が比較される(ステップS124)。なお、ステップS124の比較においては、現在時刻と「配信時刻」の時分が一致した場合、一致したと判断される。
比較の結果、現在時刻と配信時刻が一致した場合(ステップS124;一致)、処理対象レコードの「操作完了日付時刻」の日付が当日で時刻が現在時刻から一時間以内であるか否かが判断される(ステップS125)。処理対象レコードの「操作完了日付時刻」の日付が当日で時刻が現在時刻から一時間以内である(即ち、処理対象レコードの「操作」で指定されている操作が完了した)と判断されると(ステップS125;YES)、処理はステップS140に移行し、「業務連絡ファイルの検索カウンタ」が1インクリメントされ、処理はステップS123に戻る。
一方、処理対象レコードの「操作完了日付時刻」の日付が当日でないか、当日であっても時刻が現在時刻から一時間以内ではない(即ち、処理対象レコードの「操作」で指定されている、現在時刻で行われているべき操作が完了していない)と判断されると(ステップS125;NO)、業務連絡ファイル144から該当するレコードの「送信先」及び「メール内容」が取得され、RAM13のメール配信一時メモリ131にセットされる(ステップS126)。
次いで、メール配信一時メモリ131に格納した「送信先」と「管理レベル」が一致するレコードが従業員設定ファイル143から検索される(ステップS127)。検索時には、RAM13に形成される「従業員設定ファイルの検索カウンタ」が使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下「従業員設定ファイルの検索カウンタ」を1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
検索の結果、従業員設定ファイル143にメール配信一時メモリ131に格納した「送信先」と「管理レベル」が一致するレコードが存在した場合(ステップS128;YES)、RAM13の従業員設定一時メモリ132に、検索されたレコードの「従業員コード」、「名前」、「メールアドレス」が一時記憶される(ステップS129)。
次いで、従業員設定一時メモリ132に記憶されたレコードの「管理レベル」が参照され、オーナーもしくはGマネージャーであるか否かが判断される(ステップS130)。従業員設定一時メモリ132に記憶されたレコードの「管理レベル」がオーナーもしくはGマネージャーであると判断された場合(ステップS130;YES)、従業員設定一時メモリ132に記憶されたデータがメール配信予定メモリ133にセットされる(ステップS131)。そして、「従業員設定ファイルの検索カウンタ」が1インクリメントされ(ステップS132)、処理はステップS127に戻り、「従業員設定ファイルの検索カウンタ」に対応する位置のレコードから新たに検索が開始される。即ち、管理レベルがオーナーもしくはGマネージャーの場合は、出勤しているか否かにかかわらず、メール配信対象と判別され、メール配信予定メモリ133にメールアドレス等が設定される。
一方、従業員設定一時メモリ132に記憶されたレコードの「管理レベル」がオーナーもしくはGマネージャーではないと判断された場合(ステップS130;NO)、ステップS133〜S135の処理によって出退勤に基づいてメール配信対象とするか否かが判別される。
まず、従業員設定一時メモリ132に記憶されたレコードと「従業員コード」が一致するレコードが出退勤履歴ファイル142から検索される(ステップS133)。検索時には、RAM13に形成される「出退勤履歴ファイルの検索カウンタ」が使用され、処理対象のレコードの位置が管理される。具体的には、先頭のレコードを1として、以下「出退勤履歴ファイルの検索カウンタ」を1ずつカウントアップ(インクリメント)しながら、最終レコードに向けて順次1レコードずつ、該当するレコードが存在するか又は最終レコードに到達するまで検索が行われる。
検索の結果、出退勤履歴ファイル142に「従業員コード」が一致するレコードが存在した場合(ステップS134;YES)、当該レコードに「退勤時刻」がセットされているか否かが判断される(ステップS135)。当該レコードに「退勤時刻」がセットされていると判断されると(ステップS135;YES)、「出退勤履歴ファイルの検索カウンタ」が1インクリメントされ(ステップS137)、処理はステップS133に戻り、「出退勤履歴ファイルの検索カウンタ」に対応する位置のレコードから新たに検索が開始される。ここで、「退勤時刻」がセットされているレコードは、過去の出勤についてのレコードであるか又は当日すでに退勤していることを示している。よって、メール配信対象として判別されず、メールアドレスはセットされない。
ステップS135において、検索されたレコードに「退勤時刻」がセットされていないと判断されると(ステップS135;NO)、従業員設定一時メモリ132に記憶されたデータがメール配信予定メモリ133にセットされる(ステップS136)。そして、「出退勤履歴ファイルの検索カウンタ」が1インクリメントされ(ステップS137)、処理はステップS133に戻り、出退勤履歴ファイル142の「出退勤履歴ファイルの検索カウンタ」に対応するレコードから新たに検索が開始される。ここで、「退勤時刻」がセットされていないレコードは、その従業員コードの従業員が出勤中であることを示しており、出勤中の従業員がメール配信対象と判別され、メール配信予定メモリ133にメールアドレスが格納される。
一方、ステップS133における検索の結果、従業員設定一時メモリ132に記憶されたレコードと「従業員コード」が一致するレコードが出退勤履歴ファイル142の以降のレコードに存在せず、最終レコードに到達したと判断された場合(ステップS134;NO)、処理はステップS132に移行し、「従業員設定ファイルの検索カウンタ」が1インクリメントされ(ステップS132)、処理はステップS127に戻り、「従業員設定ファイルの検索カウンタ」に対応する位置のレコードから新たに検索が開始される。
ステップS127における検索の結果、メール配信一時メモリ131にセットした「送信先」と「管理レベル」が一致するレコードが従業員設定ファイル143の以降のレコードに存在せず、最終レコードに到達したと判断された場合(ステップS128;NO)、処理はステップS138に移行する。
ステップS138においては、メール配信予定メモリ133に記憶されているデータとメール配信一時メモリ131に記憶されているメール内容に基づいて、メール配信要求コマンドが作成される(ステップS138)。
図20に、ステップS138において作成されるメール配信要求コマンドのデータ構成例を示す。図20に示すように、メール配信要求コマンドは、メール配信要求コマンドであることを示すメール配信要求コマンドコードと、メール配信予定メモリ133に記憶されている従業員コード、名前、メールアドレス、及びメール配信一時メモリ131に記憶されているメール内容により構成される。
メール配信要求コマンドの作成が終了すると、作成されたメール配信要求コマンドが通信部15により情報センタサーバ2に送信される(ステップS139)。そして、業務連絡ファイルの検索カウンタが1インクリメントされ(ステップS140)、処理はステップS123に戻り、「メール配信指令設定ファイルの検索カウンタ」に対応する位置のレコードを処理対象のレコードとして、ステップS123以降の処理が実行される。
ステップS124において、現在時刻と「配信時刻」が一致しないと判断された場合(ステップS124;一致しない)、業務連絡ファイル144の全レコードについての処理が終了したか否かが判断され、終了していないと判断されると(ステップS141;NO)、「業務連絡ファイルの検索カウンタ」が1インクリメントされ(ステップS142)、処理はステップS123に戻り、「業務連絡ファイルの検索カウンタ」に対応する位置のレコードを処理対象のレコードとして、ステップS123以降の処理が実行される。業務連絡ファイル144の全レコードについての処理が終了したと判断されると(ステップS141;YES)、メール配信要求処理は終了する。
情報センタサーバ2においては、通信部25により売上データ処理装置1からのメール配信要求コマンドが受信されると、受信されたメール配信要求コマンドに含まれる「メール内容」をメール本文とし、「業務連絡」を件名としたメールが作成され、メール配信装置27により「メールアドレス」にメールが配信される。
以上説明したように、実施形態2の店舗システム100によれば、売上データ処理装置1のCPU10は、記憶部14の出退勤履歴ファイル142に記憶されている出退勤情報に基づいて売上データや業務連絡に係るメールの配信対象となる業務遂行者(従業員コードで管理される従業者及びオーナー)を判別し、配信対象として判別された業務遂行者の携帯端末のアドレスへのメールの配信要求コマンドを生成して通信部15により情報センタサーバ2に送信する。情報センタサーバ2は、メール配信要求コマンドに基づいてメール配信を行う。
従って、出勤していないマネージャーや店員等の、メールを配信する必要のない業務遂行者の携帯端末にメールが配信されてしまうことを防止することができる。
また、記憶部14は、全店舗の業務遂行者の管理レベルが格納された従業員設定ファイル143を記憶しており、CPU10は、管理レベルがオーナー、Gマネージャー等の予め定められた管理レベルである業務遂行者については、全て電子メールの配信対象と判別し、予め定められた管理レベルではない業務遂行者については、出退勤情報に基づいて電子メールの配信対象とするか否かの判別を行う。
従って、オーナーやGマネージャー等の店舗の管理者や責任者等、業務や売上を把握しておく必要がある管理レベルの者には、出勤しているか否かにかかわらずメールを配信することが可能となる。
また、記憶部14は、電子メールの配信時刻と、送信先と、メール内容とを対応付けて格納する業務連絡ファイル144を記憶しており、CPU10は、業務連絡ファイル144に設定されている配信時刻が到来した際に、送信先として指定されている業務遂行者のなかからメールの配信対象の業務遂行者を判別し、業務連絡ファイル144に記憶されているメール内容のメールの配信要求コマンドを通信部15により情報センタサーバ2に送信する。
従って、予め設定された配信時刻に、管理レベルや出退勤情報に基づいて、予め送信先として指定された業務遂行者のうち必要な業務遂行者にメールを配信することが可能となる。
また、配信されるメールは、業務において実行すべき所定の操作を指示するためのメールであり、CPU10は、所定操作が実行されたか否かを判断し、実行されていないと判断した場合に、メールの配信対象となる業務遂行者の判別を行い、メール配信を行う情報センタサーバ2に対し、配信対象として判別された業務遂行者の端末装置のアドレスへのメールの配信要求コマンドを送信する。
従って、所定の操作が行われていれば配信する必要のないメールの配信を防止することができる。例えば、点検業務を行う時刻に、「点検操作をお願いします」等の業務連絡メールを配信する設定がなされていても、既に点検操作が行われている場合には、メールが配信されないので、不要なメール配信を防止することができる。
なお、上記実施形態における記述内容は、本発明に係る店舗システム100の好適な一例であり、これに限定されるものではない。
例えば、上記実施形態1、2においては、業務遂行者の携帯端末にメールを配信する場合を例にとり説明したが、これに限定されず、業務遂行者のPC(Personal Computer)等であってもよい。
また、実施形態2においては、実施形態1におけるメール配信指令設定ファイル244の変わりに業務連絡ファイル144を用い、業務連絡ファイル144に格納されている操作が完了している場合にはメールを配信しない態様について説明したが、メール配信指令設定ファイル244と同様のファイルを記憶部14に記憶し、出退勤情報及び管理レベルのみによってメール配信対象を判別することとしてもよい。
また、メール配信対象とする管理レベルは、予め定められていることとしたが、入力部からの操作に基づいて設定できるようにしてもよい。また、管理レベルに関わらず、一律に出退勤情報によってメール配信対象を判別することとしてもよい。
その他、店舗システム100を構成する各装置の細部構成及び細部動作に関しても、発明の趣旨を逸脱することのない範囲で適宜変更可能である。