以下、健康管理システムの実施形態について、図面を用いて説明する。
本実施形態の健康管理システムは、電子レシートシステムと連携する。電子レシートシステムは、レシートに記載される情報(レシートデータ)を電子化し、この電子化されたレシートデータを、インターネット等を介してユーザ端末装置にダウンロードすることで、消費者であるユーザがレシートを電子的に受け取れるようにしたシステムである。ユーザ端末装置は、例えばパソコン、スマートフォン、携帯電話、タブレット端末等である。
[健康管理システムの説明]
図1は健康管理システム100の全体構成を示すブロック図である。
健康管理システム100は、会計装置10、ユーザ端末装置20、レシートサーバ30、栄養データサーバ40及び健康管理サーバ50を含む。図1では、会計装置10、ユーザ端末装置20、レシートサーバ30、栄養データサーバ40及び健康管理サーバ50をそれぞれ1つずつ表しているが、それぞれの数は任意である。会計装置10、ユーザ端末装置20、レシートサーバ30、栄養データサーバ40及び健康管理サーバ50は、ネットワーク200を介してデータを授受することが可能である。ネットワーク200は、例えばインターネット及び移動通信網を含む。ネットワーク200は、LAN(local area network)を含んでも良い。
会計装置10は、飲食する商品を提供する店舗、いわゆる飲食店等に設置される。会計装置10は、飲食する商品を販売する小売店等に設置されていてもよい。会計装置10は、商品の提供または販売に対する代金を会計するためのデータ処理である会計処理を行う。なお、会計とは、上記の代金の算出及び決済を含む。複数の会計装置10が健康管理システム100に含まれる場合、これら複数の会計装置10は、同一の店舗に設置されても良いし、異なる店舗に分散して配置されても良い。
ユーザ端末装置20は、健康管理システム100のユーザによる操作に基づいて、当該ユーザが朝食,昼食,夕食等の食事毎に摂取した献立情報の登録及び当該ユーザに栄養データを閲覧させるための画像の表示などを行う。栄養データは、献立に含まれるカロリー量、塩分量等である。複数のユーザ端末装置20が健康管理システム100に含まれる場合、これらの複数のユーザ端末装置20が同一のユーザにより利用されても良いし、異なるユーザにより個別に利用されても良い。あるいは、1つのユーザ端末装置20が複数のユーザにより共用されても良い。
レシートサーバ30は、会計装置10で行った会計の結果を表すレシートデータを会計装置10から収集し、蓄積する。レシートサーバ30は、レシートデータの内容を表したレシート画像を生成し、ユーザ端末装置20へと送信する。
栄養データサーバ40は、会計装置10が設置される店舗で商品として提供または販売される飲食物に関する栄養データを保持する。また栄養データサーバ40は、「ごはん」、「味噌汁」、「カレーライス」等のように、食事の献立として主に家庭等で調理される飲食物に関する栄養データを保持する。栄養データサーバ40は、健康管理サーバ50からの要求に応じて、必要な栄養データを健康管理サーバ50へと送信する。
健康管理サーバ50は、レシートサーバ30が蓄積しているレシートデータとユーザ端末装置20を介して登録された食事毎の献立情報とに基づいて、ユーザが摂取した飲食物に関する栄養データを表した閲覧画像を生成し、ユーザ端末装置20へと送信する。
[会計装置10の説明]
図2は会計装置10の要部構成を示すブロック図である。
会計装置10は、プロセッサ101、メインメモリ102、補助記憶デバイス103、通信インターフェース104、I/O(input/output)インターフェース105及びシステム伝送路106等を備える。プロセッサ101と、メインメモリ102、補助記憶デバイス103、通信インターフェース104及びI/Oインターフェース105とは、システム伝送路106によって接続される。システム伝送路106は、アドレスバス、データバス及び制御信号線等を含む。
会計装置10においては、プロセッサ101、メインメモリ102及び補助記憶デバイス103と、これらを接続するシステム伝送路106とによってコンピュータを構成する。
プロセッサ101は、上記コンピュータの中枢部分に相当する。プロセッサ101は、オペレーティングシステムやアプリケーションプログラムに従って、会計装置10としての各種の機能を実現するべく各部を制御する。
メインメモリ102は、上記コンピュータの主記憶部分に相当する。メインメモリ102は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ102は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ102は、プロセッサ101が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ102は、揮発性のメモリ領域を、プロセッサ101によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス103は、上記コンピュータの補助記憶部分に相当する。補助記憶デバイス103は、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disc drive)、SSD(solid state drive)などである。補助記憶デバイス103は、プロセッサ101が各種の処理を行う上で使用するデータ、あるいは、プロセッサ101での処理によって生成されたデータを保存する。補助記憶デバイス103は、アプリケーションプログラムを記憶する。
補助記憶デバイス103が記憶するアプリケーションプログラムには、決済プログラムP11がある。ただし、決済プログラムP11は、会計装置10の管理者または会計装置10の設置作業者等による操作に応じて、例えばインターネットを介してダウンロードされて補助記憶デバイス103に書き込まれても良い。つまり、会計装置10の使用者への会計装置10の譲渡は、決済プログラムP11が補助記憶デバイス103に記憶されていない状態で行われても良い。
通信インターフェース104は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース104としては、例えばインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
I/Oインターフェース105は、種々の入出力デバイスとの間で行うデータ通信のインターフェースである。図示は省略するが、I/Oインターフェース105には例えば、ハンディスキャナ、タッチパネル及びカードリーダ等が適宜に接続される。
会計装置10のハードウェアとしては、既存のPOS(point-of-sale)端末装置または電子キャッシュレジスタなどを利用できる。
[ユーザ端末装置20の説明]
図3はユーザ端末装置20の要部構成を示すブロック図である。
ユーザ端末装置20は、スマートフォン、携帯電話、あるいはタブレット端末等のような携帯型の情報処理装置である。食事毎の献立情報の登録及び栄養データの閲覧等のために利用されるユーザ端末装置20は、デスクトップ型のパーソナルコンピュータなどの様な据置型の情報処理装置であっても良い。
ユーザ端末装置20は、プロセッサ201、メインメモリ202、補助記憶デバイス203、タッチパネル204、通信インターフェース205及びシステム伝送路206等を備える。プロセッサ201、メインメモリ202、補助記憶デバイス203、通信インターフェース205及びシステム伝送路206に対する説明は、会計装置10のものと共通なので省略し、ここでは相違する部分だけを説明する。
ユーザ端末装置20において、補助記憶デバイス203が記憶するアプリケーションプログラムには、レシートクライアントのためのアプリケーションプログラム(以下、レシートクライアントアプリと称する)P21と、食事毎の献立情報を利用した健康管理のためのアプリケーションプログラム(以下、健康アプリと称する)P22とがある。ただし典型的には、レシートクライアントアプリP21及び健康アプリP22は、ユーザ端末装置20の使用者による操作に応じて、例えばインターネットを介してダウンロードされて補助記憶デバイス203に書き込まれる。つまり、ユーザ端末装置20の使用者へのユーザ端末装置20の譲渡は、レシートクライアントアプリP21及び健康アプリP22が補助記憶デバイス203に記憶されていない状態で行われる。しかしながら、レシートクライアントアプリP21及び健康アプリP22が補助記憶デバイス203に記憶された状態のユーザ端末装置20がユーザ端末装置20の使用者に譲渡されても構わない。
タッチパネル204は、ユーザ端末装置20の入力デバイス及び表示デバイスとして機能する。タッチパネル204には、オペレーティングシステムに基づくプロセッサ201の処理により、レシートクライアントアプリP21を起動するためのアイコンが表示される。
[レシートサーバ30の説明]
図4はレシートサーバ30の要部構成を示すブロック図である。
レシートサーバ30は、プロセッサ301、メインメモリ302、補助記憶デバイス303、通信インターフェース304及びシステム伝送路305等を備える。プロセッサ301、メインメモリ302、補助記憶デバイス303、通信インターフェース304及びシステム伝送路305に対する説明は、会計装置10のものと共通なので省略し、ここでは相違する部分だけを説明する。
レシートサーバ30において、補助記憶デバイス303が記憶するアプリケーションプログラムには、レシートサーバ30のためのアプリケーションプログラム(以下、レシートサーバアプリと称する)P31がある。
レシートサーバ30は、例えば汎用のサーバ装置やコンピュータ装置を基本ハードウェアとして用いることができる。レシートサーバ30は、レシートサーバアプリP31が補助記憶デバイス303に記憶されない状態のサーバ装置またはコンピュータ装置とレシートサーバアプリP31とが個別にレシートサーバ30の利用者に譲渡されても良い。このとき、レシートサーバアプリP31の譲渡は、磁気ディスク、光磁気ディスク、光ディスク、半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介したダウンロードにより実現できる。そしてこの場合は、レシートサーバ30の管理者またはレシートサーバ30の設置作業者などによる操作に応じて、レシートサーバアプリP31が補助記憶デバイス303に書き込まれる。
プロセッサ301は、レシートサーバアプリP31に基づく処理を実行するために、補助記憶デバイス303の記憶領域の一部を電子レシート領域W31に割り当てる。電子レシート領域W31は、レシートデータを蓄積する。またプロセッサ301は、補助記憶デバイス303の記憶領域の一部を国コード領域W32とする。この国コード領域W32には、当該レシートサーバ30が設置されている国または地域を識別するための国コードが格納される。
図5はレシートデータのデータ構造を示す図である。
レシートデータは、電子レシートコード311、ユーザコード312、日時データ313、決済データ314及び明細データ315を含む。
電子レシートコード311は、レシートデータの個々を識別する一意のコードである。
ユーザコード312は、健康管理システム100のユーザを識別する一意のコードである。
日時データ313は、決済が行われた日付及び時刻のデータである。日時データ313は、ユーザが飲食物である商品を飲食したタイミングを判断するための指標となる。決済が行われた日付及び時刻のデータは、この時間情報の一例である。時間情報としては別に、ユーザが入店した日時、あるいは商品のオーダーがなされた日時なども相当する。
決済データ314は、決済の結果を表すデータである。決済データ314にどのような項目のデータを含むかは任意であるが、例えば、決済金額、決済方法、あるいは決済を行った店舗の店舗コードなどを含むことが想定される。店舗コードは、複数の会計装置10が複数の店舗に分散して配置される場合に、それら複数の店舗のそれぞれを識別する一意のコードである。
明細データ315は、決済の対象となった商品に関する商品コード、名称及び単価などを表したリストを含む。
ここに、電子レシート領域W31は、第1の記憶デバイスとして機能する。
[栄養データサーバ40の説明]
図6は栄養データサーバ40の要部構成を示すブロック図である。
栄養データサーバ40は、プロセッサ401、メインメモリ402、補助記憶デバイス403、通信インターフェース404及びシステム伝送路405等を備える。プロセッサ401、メインメモリ402、補助記憶デバイス403、通信インターフェース404及びシステム伝送路405に対する説明は、会計装置10のものと共通なので省略し、ここでは相違する部分だけを説明する。
栄養データサーバ40において、補助記憶デバイス403が記憶するアプリケーションプログラムには、栄養データサーバ40のためのアプリケーションプログラム(以下、栄養データサーバアプリと称する)P41を含む。
補助記憶デバイス403の記憶領域の一部は、商品栄養データ領域W41及び食物栄養データ領域W42として使用される。商品栄養データ領域W41は、会計装置10が設置される店舗で商品として提供または販売される飲食物のそれぞれについての栄養データ(以下、商品栄養データと定義する)を格納する。食物栄養データ領域W42は、主に家庭で調理される飲食物のそれぞれについての栄養データ(以下、食物栄養データと定義する)を格納する。
図7は商品栄養データのデータ構造を示す図である。商品栄養データは、店舗コード411、商品コード412、カロリーデータ413及び栄養バランスデータ414を含む。
店舗コード411は、会計装置10が設置される店舗を識別するコードであり、レシートデータに含まれる店舗コードと同系列のものである。商品コード412は、商品として提供または販売される飲食物を識別するコードである。商品コード412は、店舗コード411で識別される店舗で提供または販売される飲食物の個々に関して一意であれば良い。つまり、それぞれ異なる店舗コード411を含んだ別々の栄養データにそれぞれ含まれる商品コード412は、同一の飲食物に対してそれぞれ異なっていても良い。ただし商品コード412は、店舗コード411で識別される店舗に設置された会計装置10が生成するレシートデータに含まれる商品コードに一致する。
カロリーデータ413は、店舗コード411で識別される店舗で商品として提供または販売される飲食物のうちの商品コード412で識別される飲食物についてのカロリーを表す。
栄養バランスデータ414は、店舗コード411で識別される店舗で商品として提供または販売される飲食物のうちの商品コード412で識別される飲食物についての栄養バランスを表す。栄養バランスは、例えば四群点数法により定められた複数のグループ(食品群)毎の点数によって表される。栄養バランスデータ414は、塩分、炭水化物、脂質、たんぱく質、無機質、ビタミン等の栄養素の含有量を含んでいてもよい。
図8は食物栄養データのデータ構造を示す図である。食物栄養データは、食物コード421、アイコン422、カロリーデータ423及び栄養バランスデータ424を含む。
食物コード421は、献立として家庭等で提供される飲食物を識別するコードである。食物コード421は、上記の飲食物に対して一意であればよい。仮に、店舗で商品として提供または販売される飲食物の中に同一品目があったとしても、食物コード421は、その飲食物の商品コード412と一致している必要はない。
アイコン422は、食物コード421で識別される飲食物を表す絵記号である。アイコン422は、飲食物毎にそれぞれ異なることが望ましいが、同一であることを妨げるものではない。各アイコン422には、そのアイコン422が表す飲食物の名称を示すテキストデータが含まれる。
カロリーデータ423は、食物コード421で識別される飲食物についてのカロリーを表す。
栄養バランスデータ424は、食物コード421で識別される飲食物についての栄養バランスを表す。栄養バランスは、例えば四群点数法により定められた複数のグループ(食品群)毎の点数によって表される。栄養バランスデータ424は、塩分、炭水化物、脂質、たんぱく質、無機質、ビタミン等の栄養素の含有量を含んでいてもよい。
通信インターフェース404は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース404としては、例えばインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
栄養データサーバ40は、例えば汎用のサーバ装置やコンピュータ装置を基本ハードウェアとして用いることができる。栄養データサーバ40は、栄養データサーバアプリP41が補助記憶デバイス403に記憶されない状態のサーバ装置またはコンピュータ装置と、栄養データサーバアプリP41とが個別に利用者に譲渡されても良い。このとき、栄養データサーバアプリP41の譲渡は、磁気ディスク、光磁気ディスク、光ディスク、半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介したダウンロードにより実現できる。そしてこの場合は、栄養データサーバ40の管理者または栄養データサーバ40の設置作業者などによる操作に応じて、栄養データサーバアプリP41が補助記憶デバイス403に書き込まれる。
[健康管理サーバ50の説明]
図9は健康管理サーバ50の要部構成を示すブロック図である。
健康管理サーバ50は、プロセッサ501、メインメモリ502、補助記憶デバイス503、通信インターフェース504及びシステム伝送路505等を備える。プロセッサ501、メインメモリ502、補助記憶デバイス503、通信インターフェース504及びシステム伝送路505に対する説明は、会計装置10のものと共通なので省略し、ここでは相違する部分だけを説明する。なお、通信インターフェース504は、ユーザ端末装置20との通信手段を構成する。
健康管理サーバ50において、補助記憶デバイス503が記憶するアプリケーションプログラムには、健康管理サーバ50のためのアプリケーションプログラム(以下、健康管理アプリと称する)P51を含む。
補助記憶デバイス503の記憶領域の一部は、健康管理データ領域W51及び食事バランスガイド領域W52として使用される。健康管理データ領域W51は、健康管理システム100のユーザ毎に健康管理データを格納する。健康管理データは、ユーザが朝食,昼食,夕食等の食事毎に摂取した飲食物の情報を含む。食事バランスガイド領域W52は、国または地域毎に策定される食事バランスガイドに関するデータ(以下、食事バランスデータと定義する)を、食事バランスガイド毎に格納する。
図10は、健康管理データのデータ構造を示す図である。健康管理データは、ユーザコード511と、複数の献立データ512とを含む。ユーザコード511は、健康管理システム100のユーザを識別する一意のコードである。ユーザコード511は、電子レシートデータのユーザコード312と一致する。
献立データ512は、日付、区分及び品目コードを含む。日付は、ユーザコード511で識別されるユーザが食事をした日付である。区分は、その食事を識別する情報である。すなわち献立データ512における区分は、「朝食」、「昼食」、「夕食」及び「間食」をそれぞれ識別する情報である。なお、本実施形態では、献立データ512における区分を「朝食」、「昼食」、「夕食」及び「間食」の4つとしたが、必ずしもこの区分に限定されるものではない。
品目コードは、その食事で飲食した飲食物を特定するコードである。品目コードには、栄養データサーバ40の商品栄養データ領域W41にてカロリーデータ及び栄養バランスデータが管理される飲食物の「店舗コードと商品コード」と、食物栄養データ領域W42にてカロリーデータ及び栄養バランスデータが管理される飲食物の「食物コード」とがある。1つの献立データにおいて、品目コードは、「店舗コードと商品コード」と「食物コード」とが混在してもよいし、どちらか一方だけでもよい。要は、対応する日付と区分とによって特定される食事の献立として飲食した飲食物を1品ずつ特定できればよい。
ここに、健康管理データ領域W51は、第2の記憶デバイスとして機能する。
図11は、食事バランスデータのデータ構造を示す図である。食事バランスデータは、国コード521と、国名データ522と、イラストデータ523と、分類データ524とを含む。
国コード521は、食事バランスガイド領域W52に設定される食事バランスガイドを策定した国または地域を識別する一意のコードである。国名データ522は、対応する国コード521で識別される国または地域の名称である。
イラストデータ523は、対応する国コード521で識別される国または地域で策定された食事バランスガイドで用いるイラストデータである。イラストデータ523には、図12に示すように、日本が策定したコマ形のイラストG2のデータ、米国が策定した皿形のイラストG3のデータ等がある。
分類データ524は、対応する国コード521で識別される国または地域で策定された食事バランスガイドで適用する食品群を表す。例えば駒形のイラストG2を用いる食事バランスガイドの分類データ524は、主食、副菜、主菜、牛乳・乳製品及び果物の5つの食品群を表すデータとなる。皿形のイラストG3を用いる食事バランスガイドの分類データ524は、穀物(Grains)、たんぱく質(Protein)、野菜(Vegetables)、果物(Fruits)及び牛乳・乳製品(Dairy)の5つの食品群を表すデータとなる。
国コードは、レシートサーバ30の国コード領域W32に格納される国コードと同一フォーマットのものである。すなわち、レシートサーバ30が設置されている国または地域の食事バランスガイドに対する食事バランスデータの国コードは、当該レシートサーバ30の国コード領域W32に格納される国コードと一致する。なお、本実施形態では、国コード“0”は未使用とする。
[健康管理システム100の動作説明]
(電子レシートに係る動作説明)
次に、健康管理システム100の動作について説明する。始めに、電子レシートの保存及び閲覧に係る動作について説明する。なお、以下に説明する各種の処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。
健康管理システム100のユーザは、ユーザ端末装置20にレシートクライアントアプリP21及び健康アプリP22をインストールする。ユーザは、予め定められた方法で、レシートサーバ30に対してユーザ登録を行う。このユーザ登録によりレシートサーバ30では、ユーザを識別する一意のユーザコードが定められるとともに、このユーザコードに対して、ユーザが指定したユーザ名とパスワードとが関連付けられる。本実施形態では、ユーザ名としてはメールアドレスを使用することとする。ユーザ名及びパスワードは、レシートサーバ30がランダムに決定しても良い。
ユーザは、健康管理システム100に属する会計装置10が設置された店舗で飲食物を飲食したり購入したりした場合、会計装置10を利用して会計する。
図13は、会計装置10のプロセッサ101が決済プログラムP11に基づいて実行する情報処理の手順を示す流れ図である。先ずプロセッサ101は、メインメモリ102内に設定する商品リストエリアをクリアする(Act101)。商品リストエリアは、買上登録が済んだ商品に関する情報のリスト(以下、商品リストと称する)を記述するための記憶エリアである。
商品リストエリアをクリアし終えると、プロセッサ101は、買上登録すべき商品が指定されたか確認する(Act102)。買上登録すべき商品が指定されていない場合(Act102にてNO)、プロセッサ101は、ユーザコードが入力されたか確認する(Act103)。ユーザコードが入力されていない場合(Act103にてNO)、プロセッサ101は、買上登録の締めが指定されたか確認する(Act104)。買上登録の締めが指定されていない場合(Act104にてNO)、プロセッサ101は、再び買上登録すべき商品が指定されたか確認する(Act102)。ここにプロセッサ101は、Act102乃至Act104の処理において、買上登録すべき商品が指定されるか、ユーザコードが入力されるか、買上登録の締めが指定されるのを待ち受ける。
例えば店舗で飲食を終えたユーザが店員に会計を申し出ると、店員は、会計装置10のI/Oインターフェース105に接続された入力デバイスを操作して、ユーザが飲食した商品を指定する。あるいは、店舗で買い物を終えたユーザが店員に会計を申し出ると、店員は、同入力デバイスを操作して、ユーザが購入した商品を指定する。これらの操作を受けてプロセッサ101は、買上登録すべき商品を指定する操作がなされたことを検知する。
プロセッサ101は、Act102乃至Act104の待ち受け状態において、買上登録すべき商品を指定する操作がなされたことを検知すると(Act102にてYES)、指定された商品の情報を含むように、商品リストを更新する(Act105)。商品の情報には、商品コード、商品名、価格等が含まれる。
商品の情報には、栄養データサーバ40の商品栄養データ領域W41に設定されている当該商品のカロリーデータと栄養バランスデータとを含んでもよい。すなわちプロセッサ101は、栄養データサーバ40に店舗コードと商品コードとを通知する。この通知を受けた栄養データサーバ40のプロセッサ401は、商品栄養データ領域W41を検索する。そしてプロセッサ401は、通知された店舗コードと商品コードとに関連付けられたカロリーデータと栄養バランスデータとを商品栄養データ領域W41から読出し、会計装置10に送信する。会計装置10のプロセッサ101は、栄養データサーバ40から受け取ったカロリーデータと栄養バランスデータとを商品リストに追加する。
商品リストを更新した後、プロセッサ101は、Act102乃至Act104の待ち受け状態に戻る。
ところで、上記の会計に関して電子レシートサービスを利用したいユーザは、ユーザ端末装置20においてレシートクライアントアプリP21を起動する。レシートクライアントアプリP21が起動すると、プロセッサ201は、このレシートクライアントアプリP21に基づく情報処理を実行する。この情報処理は、レシートサーバアプリP31が起動するレシートサーバ30によって支援される。
図14乃至図16は、ユーザ端末装置20のプロセッサ201が、レシートクライアントアプリP21に基づいて実行する情報処理の手順を示す流れ図である。図17及び図18は、レシートサーバ30のプロセッサ301がレシートサーバアプリP31に基づいて実行する情報処理の手順を示す流れ図である。図19は、レシートサーバ30のプロセッサ301がレシートサーバアプリP31とは別のタスクによって並列的に実行する情報処理の手順を示す流れ図である。図10は、レシートクライアントアプリP21に基づく情報処理によりユーザ端末装置20のタッチパネル204に表示される画面の変遷例を示す図である。以下、図14乃至図20を用いて、ユーザ端末装置20におけるプロセッサ201の主要な処理と、レシートサーバ30におけるプロセッサ301の主要な処理とについて説明する。
図14に示すように、レシートクライアントアプリP21に基づく情報処理が起動すると、プロセッサ201は、タッチパネル204の画面をログイン画面SC1とする(Act201)。そしてプロセッサ201は、ログインの指示を待ち受ける(Act202)。
図20に示すように、ログイン画面SC1は入力欄F11,F12及びボタンB11を含む。入力欄F11は、ユーザ名として設定されたメールアドレスをユーザが入力するための欄である。入力欄F12は、メールアドレスとともにユーザコードに関連付けられたパスワードをユーザが入力するための欄である。ボタンB11は、ログインを指示するためにユーザがタッチするものである。初期状態のログイン画面SC1は、入力欄F11,F12が空欄である。
ユーザは、ユーザ登録の際に指定したメールアドレス及びパスワードを入力欄F11,F12にそれぞれ入力した上で、ボタンB11にタッチする。これらの操作を受けてプロセッサ201は、ログインの指示を検知する。
プロセッサ201は、Act202の待ち受け状態において、ログインの指示を検知すると(Act202にてYES)、レシートサーバ30に対してログイン要求を行う(Act203)。具体的にはプロセッサ201は、入力欄F11,F12にそれぞれ入力されたメールアドレス及びパスワードをメインメモリ302に格納する。そして、ボタンB11のタッチ入力を受けてプロセッサ201は、通信インターフェース205からレシートサーバ30に宛ててログイン要求をネットワーク200へと送信する。ログイン要求には、メインメモリ302に格納したメールアドレス及びパスワードのログインデータが含まれる。
図17に示すように、レシートサーバアプリP3に基づく情報処理が起動したプロセッサ301は、ログイン要求を待ち受ける(Act301)。ユーザ端末装置20からネットワーク200へと送信されたログイン要求を通信インターフェース304で受信すると(Act301にてYES)、プロセッサ301は、受信されたログイン要求に含まれたログインデータに基づいて認証処理を行う(Act302)。具体的にはプロセッサ301は、ログイン要求に含まれたメールアドレスとパスワードとに関連付けられたユーザコードが設定されているか確認する。ユーザコードが設定されている場合、プロセッサ301は認証に成功する。ユーザコードが設定されていない場合には、プロセッサ301は認証に失敗する。
認証処理を行ったプロセッサ301は、認証に成功したか確認する(Act303)。そして認証に失敗した場合(Act303にてNO)、プロセッサ301は、エラー通知を通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する(Act304)。エラー通知を送信した後、プロセッサ301は、Act301の処理へと戻る。すなわちプロセッサ301は、ログイン要求を待ち受ける。以後、プロセッサ301は、それ以降の処理を前述したのと同様に繰り返す。
認証に成功した場合には(Act303にてYES)、図18に示すように、プロセッサ301は、トップ画面データを生成し、このトップ画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する(Act305)。トップ画面データは、ユーザ端末装置20のタッチパネル204の画面をトップ画面SC2とするための画像を表す。なおプロセッサ301は、認証に成功したユーザコードをログイン中のユーザのユーザコードとしてメインメモリ302に格納しておく。
図14のAct203において、ログイン要求を行ったプロセッサ201は、エラーが通知されたか確認する(Act204)。レシートサーバ30からネットワーク200へと送信されたエラー通知を通信インターフェース205で受信すると(Act204にてYES)、プロセッサ201は、Act201の処理へと戻る。すなわちプロセッサ201は、ログイン画面SC1を初期状態とする。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。
エラー通知でなく、トップ画面データを通信インターフェース205で受信すると(Act204にてNO)、図15に示すように、プロセッサ201は、このトップ画面データをメインメモリ202または補助記憶デバイス203へと格納する。そしてプロセッサ201は、受信されたトップ画面データに基づき、タッチパネル204の画面をトップ画面SC2とする(Act205)。
図20に示すように、トップ画面SC2は、バーコードC11と、ボタンB21,B22,B23.B24,B25とを含む。バーコードC11は、ログイン要求に含まれたメールアドレスとパスワードとに関連付けられたユーザコードを表す。ボタンB21は、最新のレシートを閲覧するためにユーザがタッチするものである。
ボタンB22は、トップ画面SC2への移行を指示するためにユーザがタッチするものである。ボタンB23は、簡易レシート情報の一覧画面への移行を指示するためにユーザがタッチするものである。ボタンB24は、栄養分析画面への移行を指示するためにユーザがタッチするものである。ボタンB25は、トップ画面、一覧画面および栄養分析画面とは別の画面への移行を指示するためにユーザがタッチするものである。当該画面は、例えば各種の設定のためのユーザ操作を受け付けるための画面である。ボタンB22,B23,B24,B25は、現在の画面がどの画面であるかを表す指標としての機能も有する。トップ画面SC2の場合、ボタンB22の枠を他のボタンB23、B24、B25に比べて太くしている。
トップ画面SC2を確認したユーザは、そのトップ画面SC2に表示されたバーコードC11を店員に提示する。店員は、会計装置10のI/Oインターフェース105に接続された入出力デバイスの1つであるハンディスキャナにバーコードC11を読み取らせる。会計装置10のプロセッサ101は、ハンディスキャナでバーコードC11が読み取られると、そのバーコードC11によって表されるコードをユーザコードとして受け付ける。
プロセッサ101は、図13のAct102乃至Act104の待ち受け状態において、入力デバイスを介してユーザコードが入力されたことを検知すると(Act103にてYES)、このユーザコードをメインメモリ202または補助記憶デバイス203に格納する(Act106)。ユーザコードを格納した後、プロセッサ101は、Act102乃至Act104の待ち受け状態に戻る。
店員は、ユーザが飲食した商品あるいはユーザが購入した商品を会計装置10に対して指定する操作をすべて終えると、買上登録の締めを指定するべく会計装置10の入力デバイスを操作する。この操作を受けて、Act102乃至Act104の待ち受け状態にあるプロセッサ101は、買上登録の締めが指定されたことを検知する。買上登録の締めが指定されたことを検知すると(Act104にてYES)、プロセッサ101は、商品リストに示された商品の提供または販売に関わる代金の決済のための決済処理を行う(Act107)。この決済処理は、既存のPOS装置などで実施している処理をそのまま利用できる。
決済処理を終えると、プロセッサ101は、メインメモリ202または補助記憶デバイス203にてユーザコードを格納しているか確認する(Act108)。ユーザコードを格納している場合(Act108にてYES)、プロセッサ101は、商品リストに含まれる情報を基にレシートデータを生成する(Act109)。レシートデータは、電子レシートコード311、ユーザコード312、日時データ313、決済データ314及び明細データ315を含む。
レシートデータを生成したプロセッサ101は、紙レシートを発行するか確認する(Act110)。具体的にはプロセッサ101は、紙レシートの発行をユーザが希望するか問い合わせる画面を、I/Oインターフェース105に接続されたタッチパネルに表示する。そしてプロセッサ101は、タッチパネルでの操作により紙レシートを発行しない旨の入力がなされたことを検知したならば(Act110にてNO)、レシートデータをレシートサーバ30へと送信する(Act111)。具体的にはプロセッサ101は、Act109の処理にて生成したレシートデータと、メインメモリ102または補助記憶デバイス103で記憶したユーザコードとを含んだ伝送ファイルを生成する。そしてプロセッサ101は、例えばFTP(file transfer protocol)などのプロトコルを用いて、ネットワーク200を介してレシートサーバ30へと上記の伝送ファイルを通信インターフェース104に送信させる。
これに対し、紙レシートを発行する旨の入力がなされた場合(Act110にてYES)、あるいはユーザコードを格納していない場合には(Act108にてNO)、プロセッサ101は、紙レシートの発行を制御する(Act112)。具体的にはプロセッサ101は、I/Oインターフェース105に接続された入出力デバイスの1つであるプリンタを制御して、紙レシートを発行させる。
レシートデータをレシートサーバ30へと送信するか、紙レシートの発行を終えると、プロセッサ101は、再び商品リストエリアをクリアして(Act101)、それ以降の処理を前述と同様にしてやり直す。
なお、上記の説明では、プロセッサ101は、レシートデータを生成した後に、紙レシートを発行するか確認した。別の実施形態では、紙レシートを発行するか確認することなく、レシートデータとユーザコードとを含む伝送ファイルをレシートサーバ30へと送信してもよい。
ネットワーク200を介して伝送された伝送ファイルは、レシートサーバ30の通信インターフェース304で受信される。レシートサーバ30のプロセッサ301は、図19に示すように、レシートデータとユーザコードとを含む伝送ファイルの受信を待機している(Act321)。そしてプロセッサ301は、伝送ファイルを受信すると(Act321にてYES)、この伝送ファイルに含まれるレシートデータを、同伝送ファイルに含まれるユーザコードと関連づけて、補助記憶デバイス303の電子レシート領域W31に格納する(Act322)。この後、プロセッサ301は、再び伝送ファイルの受信を待ち受ける(Act321)。
かくして、電子レシートサービスを利用したいユーザが店舗で飲食した際のレシートデータあるいは店舗で買い物をした際のレシートデータは、レシートサーバ30の電子レシート領域W31に蓄積される。
さて、会計を終えたユーザは、ユーザ端末装置20のトップ画面SC2に表示されたボタンB21にタッチすることによって、その会計でのレシートを閲覧することができる。
図15のAct205において、タッチパネル204にトップ画面SC2を表示させたプロセッサ201は、最新のレシート画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB21がタッチされたか確認する(Act206)。ボタンB21がタッチされていない場合(Act206にてNO)、プロセッサ201は、レシート一覧画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB23がタッチされたか確認する(Act207)。ボタンB23がタッチされていない場合(Act207にてNO)、プロセッサ201は、栄養分析画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB24がタッチされたか確認する(Act208)。ボタンB24がタッチされていない場合(Act208にてNO)、プロセッサ201は、その他の画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB25がタッチされたか確認する(Act209)。ボタンB25がタッチされていない場合(Act209にてNO)、プロセッサ201は、再び最新のレシート画面への移行が指示されたか確認する(Act206)。
したがってプロセッサ201は、Act206乃至Act209の処理において、トップ画面SC2のボタンB21、B23,B24またはB25がタッチされるのを待ち受ける。なお、ボタンB22は、トップ画面SC2への移行を指示するボタンなので、タッチされてもプロセッサ201は、その入力を無視する。
Act206乃至Act209の待ち受け状態において、タッチパネル204を介してボタンB21がタッチされたことを検知すると(Act206にてYES)、プロセッサ201は、最新レシートを示す画像の表示要求を、通信インターフェース205からレシートサーバ30に宛ててネットワーク200へと送信する(Act210)。この表示要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードが含まれる。
図18のAct305において、トップ画面データを送信したプロセッサ301は、最新レシートを示す画像の表示要求を受信したか確認する(Act306)。受信していない場合、プロセッサ301は、一覧画面の表示要求を受信したか確認する(Act307)。受信していない場合、プロセッサ301は、その他の画像の表示要求を受信したか確認する(Act308)。受信していない場合、プロセッサ301は、再び最新レシートを示す画像の表示要求を受信したか確認する(Act306)。
したがって、トップ画面データを送信したプロセッサ301は、Act306〜Act308の処理により最新レシートを示す画像または一覧画面等の表示要求を待ち受ける。この待ち受け状態において、通信インターフェース304で最新レシートを示す画像の表示要求を受信すると(Act306にてYES)、プロセッサ301は、電子レシート領域W31を検索する。そしてプロセッサ301は、受信した表示要求に含まれるユーザコードに関連付けられて電子レシート領域W31に格納されているレシートデータのうち、日時データが最新のレシートデータを取得する(Act309)。
レシートデータを取得したならば、プロセッサ301は、このレシートデータからレシート画面データを生成する。そしてプロセッサ301は、このレシート画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する(Act310)。レシート画面データは、ユーザ端末装置20のタッチパネル204の画面をレシート画面SC3とするための画像を表す。
図15のAct210において、最新レシートを示す画像の表示要求を送信したプロセッサ201は、この表示要求に応答してレシートサーバ30から送信されるレシート画面データを待ち受ける。そして、通信インターフェース205でレシート画面データを受信したならば、プロセッサ201は、このレシート画面データに基づき、タッチパネル204の画面をレシート画面SC3とする(Act211)。
図20に示すように、レシート画面SC3には、商取引の明細を表すレシートの画像R1が表示される。また、この商取引を特定するための簡易レシートデータ(取引日付、取引時刻、店舗名、取引金額)を示す画像R2もレシート画面SC3に表示される。
レシート画面SC3は、トップ画面SC2と同様のボタンB22,B23,B24,B25を含む。そしてレシート画面SC3は、ボタンB23の枠を他のボタンB22、B24、B25に比べて太くしている。
図15のAct211において、タッチパネル204にレシート画面SC3を表示させたプロセッサ201は、レシート一覧画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB23がタッチされたか確認する(Act212)。ボタンB23がタッチされていない場合(Act212にてNO)、プロセッサ201は、トップ画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB22がタッチされたか確認する(Act213)。ボタンB22がタッチされていない場合(Act213にてNO)、プロセッサ201は、栄養分析画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB24がタッチされたか確認する(Act214)。ボタンB24がタッチされていない場合(Act214にてNO)、プロセッサ201は、その他の画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB25がタッチされたか確認する(Act215)。ボタンB25がタッチされていない場合(Act215にてNO)、プロセッサ201は、再びレシート一覧画面への移行が指示されたか確認する(Act212)。
したがってプロセッサ201は、Act212乃至Act215の処理において、レシート画面SC3のボタンB23、B22,B24またはB25がタッチされるのを待ち受ける。
最新レシートではなく他の会計のレシートを閲覧したいユーザは、トップ画面SC2またはレシート画面SC3において、ボタンB23にタッチする。
Act206乃至Act209の待ち受け状態あるいはAct212乃至Act215の待ち受け状態において、タッチパネル204を介してボタンB23がタッチされたことを検知すると(Act207にてYESあるいはAct212にてYES)、プロセッサ201は、図16に示すように、一覧画面の表示要求を、通信インターフェース205からレシートサーバ30に宛ててネットワーク200へと送信する(Act216)。この表示要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードが含まれる。
図18のAct305において、トップ画面データを送信したプロセッサ301は、Act306〜Act308の処理により一覧画面等の表示要求を待ち受ける。
一方、図18のAct310において、レシート画面データを送信したプロセッサ301は、一覧画面の表示要求を受信したか確認する(Act311)。受信していない場合、プロセッサ301は、トップ画面の表示要求を受信したか確認する(Act312)。受信していない場合、プロセッサ301は、その他の画像の表示要求を受信したか確認する(Act313)。受信していない場合、プロセッサ301は、再び一覧画面の表示要求を受信したか確認する(Act311)。
したがって、レシート画面データを送信したプロセッサ301は、Act311〜Act313の処理により一覧画面またはトップ画面等の表示要求を待ち受ける。
Act306〜Act308またはAct311〜Act313の待ち受け状態において、一覧画面の表示要求を受信すると(Act307またはAct311にてYES)、プロセッサ301は、電子レシート領域W31を検索する。そしてプロセッサ301は、受信した表示要求に含まれるユーザコードに関連付けられて電子レシート領域W31に格納されている全てのレシートデータから簡易レシートデータを取得する(Act314)。簡易レシートデータは、前述したようにそのレシートデータに含まれる取引日付、取引時刻、店舗名及び取引金額からなる。なお、簡易レシートデータは、取引日付、取引時刻、店舗名及び取引金額の4項目に限定されるものではない。他の項目を追加してもよいし、いずれかの項目を削除してもよい。
簡易レシートデータを取得したならば、プロセッサ301は、この簡易レシートデータから一覧画面データを生成する。そしてプロセッサ301は、この一覧画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する(Act315)。一覧画面データは、ユーザ端末装置20のタッチパネル204の画面を一覧画面SC4とするための画像を表す。
図16のAct216において、レシート一覧の表示要求を送信したプロセッサ201は、この表示要求に応答してレシートサーバ30から送信される一覧画面データを待ち受ける。そして、一覧画面データを通信インターフェース205で受信したならば、プロセッサ201は、この一覧画面データに基づき、タッチパネル204の画面を一覧画面SC4とする(Act217)。
図20に示すように、一覧画面SC4には、レシートデータ毎の簡易レシートデータ(取引日付、取引時刻、店舗名、取引金額)を示す画像R2が表示される。また一覧画面SC4は、トップ画面SC2またはレシート画面SC3と同様のボタンB22,B23,B24,B25を含む。
図16のAct217において、タッチパネル204に一覧画面SC4を表示させたプロセッサ201は、この一覧画面SC4からいずれかの簡易レシートデータが指定されたか確認する。すなわちプロセッサ21は、いずれかの簡易レシートデータの画像R2がタッチされたか確認する(Act218)。画像R2がタッチされていない場合(Act218にてNO)、プロセッサ201は、トップ画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB22がタッチされたか確認する(Act219)。ボタンB22がタッチされていない場合(Act219にてNO)、プロセッサ201は、栄養分析画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB24がタッチされたか確認する(Act220)。ボタンB24がタッチされていない場合(Act220にてNO)、プロセッサ201は、その他の画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB25がタッチされたか確認する(Act221)。ボタンB25がタッチされていない場合(Act221にてNO)、プロセッサ201は、再び簡易レシートデータが指定されたか確認する(Act218)。
したがってプロセッサ201は、Act218乃至Act221の処理において、一覧画面SC4の画像R2、またはボタンB22,B24またはB25がタッチされるのを待ち受ける。なお、ボタンB23は、一覧画面SC4への移行を指示するボタンなので、タッチされてもプロセッサ201は、その入力を無視する。
一覧画面SC4を閲覧したユーザは、簡易レシートデータのなかから閲覧したいレシートのデータを探す。そして閲覧したいレシートの簡易レシートデータを見つけたならば、ユーザは、その簡易レシートデータの画像R2にタッチする。
Act218乃至Act221の待ち受け状態において、一覧画面SC4に表示された簡易レシートデータを示す複数の画像R2のうちいずれか1つの画像R2がタッチされたことを検知すると(Act218にてYES)、プロセッサ201は、タッチされた画像R2の簡易レシートデータで特定されるレシートを示す画像の表示要求を、通信インターフェース205からレシートサーバ30に宛ててネットワーク200へと送信する(Act210)。この表示要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、タッチされた画像R2の簡易レシートデータとが含まれる。
図18のAct315において、一覧画面データを送信したプロセッサ301は、簡易レシートデータで特定されるレシートを示す画像の表示要求を受信したか確認する(Act316)。受信していない場合、プロセッサ301は、トップ画面の表示要求を受信したか確認する(Act317)。受信していない場合、プロセッサ301は、その他の画像の表示要求を受信したか確認する(Act318)。受信していない場合、プロセッサ301は、再び簡易レシートデータで特定されるレシートを示す画像の表示要求を受信したか確認する(Act316)。
したがって、一覧画面データを送信したプロセッサ301は、Act316乃至Act318の処理により簡易レシートデータで特定されるレシートを示す画像またはトップ画面等の表示要求を待ち受ける。この待ち受け状態において、簡易レシートデータで特定されるレシートを示す画像の表示要求を通信インターフェース304で受信すると(Act316にてYES)、プロセッサ301は、電子レシート領域W31を検索する。そしてプロセッサ301は、受信した表示要求に含まれるユーザコードに関連付けられて電子レシート領域W31に格納されているレシートデータのうち、簡易レシートデータが一致するレシートデータを取得する(Act309)。
レシートデータを取得したならば、プロセッサ301は、このレシートデータからレシート画面データを生成する。そしてプロセッサ301は、このレシート画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する(Act310)。以後、プロセッサ301は、Act311乃至Act313の待ち受け状態となる。
図15のAct210において、簡易レシートデータで特定されるレシートを示す画像の表示要求を送信したプロセッサ201は、この表示要求に応答してレシートサーバ30から送信されるレシート画面データを待ち受ける。そして、通信インターフェース205でレシート画面データを受信したならば、プロセッサ201は、このレシート画面データに基づき、タッチパネル204の画面をレシート画面SC3とする(Act211)。このときのレシート画面SC3のレイアウトは、最新レシートに対するレシート画面SC3と同一である。
タッチパネル204の画面をレシート画面SC3または一覧画面SC4からトップ画面SC2に戻したいユーザは、ボタンB22にタッチする。
Act212乃至Act215の待ち受け状態あるいはAct218乃至Act221の待ち受け状態において、タッチパネル204を介してボタンB22がタッチされたことを検知すると(Act213にてYESあるいはAct219にてYES)、プロセッサ201は、Act205の処理へと戻る。すなわちプロセッサ201は、タッチパネル204の画面をトップ画面SC2とする。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。
図18のAct310において、レシート画面データを送信したプロセッサ301は、Act311〜Act313の処理によりトップ画面等の表示要求を待ち受ける。同様に、図18のAct315において、一覧画面データを送信したプロセッサ301は、Act316〜Act318の処理によりトップ画面等の表示要求を待ち受ける。
これらの待ち受け状態において、トップ画面の表示要求を受信すると(Act312またはAct317にてYES)、プロセッサ301は、Act305の処理へと戻る。すなわちプロセッサ301は、トップ画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する。以後、プロセッサ301は、それ以降の処理を前述したのと同様に繰り返す。
(健康管理に係る動作説明)
次に、食事毎の献立情報に基づく健康管理に係る動作について説明する。なお、以下に説明する各種の処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。
ユーザ端末装置20にレシートクライアントアプリP21とともに健康アプリP22をインストールしたユーザは、栄養データサーバ40及び健康管理サーバ50の支援の下に、献立情報に基づく健康管理を行うことができる。すなわちユーザは、ユーザ端末装置20を操作して、朝食、昼食、夕食等の食事毎に摂取した飲食物の情報(献立情報)を健康管理サーバ50に登録することができる。そして、献立情報を登録したユーザは、ユーザ端末装置20を利用して、食事毎あるいは一日分の栄養バランスなどを表した栄養分析画面を閲覧することができる。栄養分析画面には、例えば摂取カロリー量と、四群点数法によって求められた栄養バランスの分布画像とが表示される。また、栄養バランスの分布画像に代えて、各国の食事バランスガイドのイラストを表示させることもできる。
献立情報の登録及び栄養分析画面の閲覧のためには、ユーザ端末装置20において、健康アプリP22を起動する必要がある。健康アプリP22は、トップ画面CS、レシート画面SC3または一覧画面SC4に表示されるボタンB23にタッチすることで起動する。すなわちユーザ端末装置20のプロセッサ201は、図15,図16に示すように、Act206〜Act209の待ち受け状態、Act212〜Act215の待ち受け状態、またはAct218〜Act221の待ち受け状態において、ボタンB23がタッチされたことを検知すると(Act208、Act214またはAct220にてYES)、健康アプリP22を起動する(Act231)。
プロセッサ201は、健康アプリP22が終了するまで、この健康アプリP22に基づく情報処理を実行する。この情報処理は、栄養データサーバアプリP41が起動する栄養データサーバ40、及び健康管理アプリP51が起動する健康管理サーバ50によって支援される。
図21乃至図25は、ユーザ端末装置20のプロセッサ201が、健康アプリP22に基づいて実行する情報処理の手順を示す流れ図である。図26乃至図29は、健康管理サーバ50のプロセッサ501が健康管理アプリP51に基づいて実行する情報処理の手順を示す流れ図である。図30乃至図36は、健康アプリP22に基づく情報処理によりユーザ端末装置20のタッチパネル204に表示される画面を示す図である。以下、図21乃至図36を用いて、ユーザ端末装置20におけるプロセッサ201の主要な処理と、健康管理サーバ50におけるプロセッサ501の主要な処理とについて説明する。
図21に示すように、健康アプリP22に基づく情報処理が起動すると、プロセッサ201は、メインメモリ202内に設定する日付エリアと区分エリアとに、それぞれ「本日日付」を表す日付データと「一日」を表す区分データとをセットする(Act241)。日付データは、ユーザ端末装置20が内蔵するシステム時計(クロック)から検出される。区分データは、栄養分析画面に表示されるデータ(摂取カロリー量、栄養バランスの分布画像等)の単位を表す。区分データは、「一日」以外に、「一週間」、「一か月間」、「朝食」、「昼食」、「夕食」、「間食」等がある。
日付データと区分データとをセットしたならば、プロセッサ201は、栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act242)。この栄養分析要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データとが含まれる。したがって、健康アプリP22が起動した段階では、栄養分析要求に含まれる区分データは「一日」である。
図26に示すように、健康管理アプリP51に基づく情報処理が起動したプロセッサ501は、栄養分析要求を待ち受ける(Act500)。ユーザ端末装置20からネットワーク200へと送信された栄養分析要求を通信インターフェース504で受信すると(Act500にてYES)、プロセッサ501は、受信された栄養分析要求に含まれたユーザコード、日付データ及び区分データをメインメモリ502または補助記憶デバイス503で記憶する。さらにプロセッサ501は、記憶したユーザコードで健康管理データ領域W51を検索して、当該ユーザコードが関連付けられた健康管理データを取得する。そしてプロセッサ501は、取得した健康管理データを、メインメモリ502または補助記憶デバイス503で記憶する(Act501)。
次に、プロセッサ501は、記憶した区分データを確認する(Act502)。区分データが「一日」の場合(Act502にてNO)、プロセッサ501は、記憶した健康管理データから、記憶した日付データを含む献立データ512を抽出する。区分データが「一週間」の場合には(Act502にてNO)、プロセッサ501は、記憶した健康管理データから、記憶した日付データを含み過去1週間分の献立データ512を抽出する。区分データが「一か月」の場合には(Act502にてNO)、プロセッサ501は、記憶した健康管理データから、記憶した日付データを含み過去一か月分の献立データ512を抽出する。
プロセッサ501は、抽出した献立データ512をメインメモリ502または補助記憶デバイス503で記憶する。そしてプロセッサ501は、記憶した献立データ512に含まれる品目コードに基づいて、一日分、一週間分または一か月分の栄養分析画面(以下、第1栄養分析画面SC51と称する)を生成する(Act503)。
例えば区分データが「一日」であった場合、プロセッサ301は、健康管理データから記憶した日付データと日付が一致し、かつ、区分が「朝食」、「昼食」、「夕食」及び「間食」の献立データ512を全て抽出する。そしてプロセッサ501は、抽出した献立データ512に含まれる品目コードで特定される飲食物のカロリーデータ及び栄養バランスデータを、栄養データサーバ40に要求する。
この要求を受けた栄養データサーバ40のプロセッサ401は、栄養データサーバアプリP41に従った情報処理により商品栄養データ領域W41または食物栄養データ領域W42を検索して、要求のあった飲食物のカロリーデータ及び栄養バランスデータを収集する。プロセッサ401は、収集したカロリーデータ及び栄養バランスデータを、ネットワーク200を介して健康管理サーバ50に送信する。
健康管理サーバ50のプロセッサ501は、栄養データサーバ40から受け取った飲食物のカロリーデータ及び栄養バランスデータに基づいて、摂取カロリー量を算出し、四群点数法による栄養バランスの分布画像G1を生成する。そしてプロセッサ501は、この摂取カロリー量、栄養バランスの分布画像G1等を用いて一日分の第1栄養分析画面SC51を生成する。
これに対し、区分データが食事別、すなわち「朝食」、「昼食」、「夕食」及び「間食」の場合には(Act502にてYES)、プロセッサ501は、記憶した健康管理データから、記憶した日付データと区分データとを含む献立データ512を抽出する。プロセッサ501は、抽出した献立データ512をメインメモリ502または補助記憶デバイス503で記憶する。そしてプロセッサ501は、この献立データ512に含まれる品目コードに基づいて、食事別の栄養分析画面(以下、第2栄養分析画面SC52と称する)を生成する(Act504)。
例えば区分データが「朝食」であった場合、プロセッサ501は、健康管理データから記憶した日付データと日付が一致し、かつ、区分が「朝食」の献立データ512を抽出する。そしてプロセッサ501は、抽出した献立データ512に含まれる品目コードで特定される飲食物のカロリーデータ及び栄養バランスデータを、栄養データサーバ40に要求する。
この要求に応じて、前述したように栄養データサーバ40から健康管理サーバ50に当該飲食物のカロリーデータ及び栄養バランスデータが送られてくるので、プロセッサ501は、朝食分の第2栄養分析画面SC52を生成する。
第1栄養分析画面SC51と第2栄養分析画面SC52との相違については、後述する。
第1栄養分析画面SC51または第2栄養分析画面SC52のデータを生成したならば、プロセッサ501は、この画面データを通信インターフェース504からユーザ端末装置20に宛ててネットワーク200へと送信する(Act505、Act509)。
図21のAct242において、区分データ「一日」を含む栄養分析要求を行ったプロセッサ201は、この要求に応答して健康管理サーバ50から送信される栄養分析画面のデータを待ち受ける。そして、通信インターフェース205で栄養分析画面のデータを受信したならば、プロセッサ201は、この画面データに基づき、タッチパネル204の画面を、第1栄養分析画面SC51とする(Act243)。
図30は、区分データが「一日」のときの第1栄養分析画面SC51の一例を示す。図30に示すように、第1栄養分析画面SC51には、一日分の摂取カロリー量と栄養バランスの分布画像G1とが表示される。摂取カロリー量は、ユーザの年齢,性別、体重等によって一義的に定まる一日分の標準摂取カロリーと対比させて表示される。
また第1栄養分析画面SC51には、年月日からなる日付が表示される。そして、画面に向かって日付の左右両側には切替マークM51、M52が表示される。プロセッサ201は、切替マークM1がタッチされると、表示されている日付に対して前日が指定されたと認識する。同様にプロセッサ201は、切替マークM2がタッチされると、表示されている日付に対して翌日が指定されたと認識する。なお、表示されている日付が本日の場合、切替マークM2がタッチされてもプロセッサ201は、その入力を無視する。
また第1栄養分析画面SC51は、「今日」、「週間」、「月間」、「一日」、「朝食」、「昼食」、「夕食」及び「間食」の各項目にそれぞれ対応したボタンB51、B52、B53、B54、B55、B56、B57及びB58を含む。各ボタンB51〜B58は、区分データを切り替えるためにユーザがタッチするものである。各ボタンB51〜B58は、現在の画面がどの区分の画面であるかを表す指標としての機能も有する。図30に示す第1栄養分析画面SC51は、本日一日分の栄養分析画面であるから、「今日」を表すボタンB51と「一日」を表すボタンB54との枠を他のボタンB52,B53,B55,B56,B57,B58に比べて太くしている。
さらに第1栄養分析画面SC51は、ボタンB61,B62,B63,B64を含む。ボタンB61は、トップ画面SC2への移行を指示するためにユーザがタッチするものである。ボタンB62は、食事バランス画面への移行を指示するためにユーザがタッチするものである。ボタンB63は、栄養分析画面への移行を指示するためにユーザがタッチするものである。ボタンB64は、トップ画面、食事バランスガイド画面および栄養分析画面とは別の画面への移行を指示するためにユーザがタッチするものである。当該画面は、例えば各種の設定のためのユーザ操作を受け付けるための画面である。ボタンB61,B62,B63,B64は、現在の画面がどの画面であるかを表す指標としての機能も有する。第1栄養分析画面SC51の場合、ボタンB63の枠を他のボタンB61,B62,B64に比べて太くしている。
図21のAct243において、タッチパネル204に第1栄養分析画面SC51を表示させたプロセッサ201は、日付または区分の変更が指定されたか確認する。すなわちプロセッサ201は、第1栄養分析画面SC51のマークM1,M2またはボタンB51〜B58がタッチされたか確認する(Act244)。マークM1,M2またはボタンB51〜B58がタッチされていない場合(Act244にてNO)、プロセッサ201は、食事バランス画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB62がタッチされたか確認する(Act245)。ボタンB62がタッチされていない場合(Act245にてNO)、プロセッサ201は、トップ画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB61がタッチされたか確認する(Act246)。ボタンB61がタッチされていない場合(Act246にてNO)、プロセッサ201は、その他の画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB63がタッチされたか確認する(Act247)。ボタンB63がタッチされていない場合(Act247にてNO)、プロセッサ201は、再び日付または区分の変更が指定されたか確認する(Act244)。
したがってプロセッサ201は、Act244乃至Act247の処理において、第1栄養分析画面SC51のマークM1,M2またはボタンB51〜58、B61、B62、B64がタッチされるのを待ち受ける。なお、ボタンB63は、栄養分析画面への移行を指示するボタンなので、タッチされてもプロセッサ201は、その入力を無視する。
第1栄養分析画面SC51を閲覧したユーザがさらに前日分の栄養分析画面を確認したい場合、ユーザは、マークM1にタッチする。本日の夕食分の栄養分析画面を確認したい場合には、ユーザは、ボタンB57にタッチする。
Act244乃至Act247の待ち受け状態において、タッチパネル204を介してマークM1,M2またはボタンB51〜58がタッチされたことを検知すると(Act244にてYES)、プロセッサ201は、そのタッチされたマークM1,M2またはボタンB51〜58に応じて、日付エリアまたは区分エリアの区分データを変更する(Act248)。例えば、マークM1がタッチされた場合には、プロセッサ201は、日付エリアの日付データを、一日前の日付とする。ボタンB57がタッチされた場合には、区分エリアの区分データを「夕食」とする。
日付エリアまたは区分エリアのデータが変更されると、プロセッサ201は、区分データが食事別であるか確認する(Act249)。区分データが食事別でない、すなわち「一日」、「週間」または「月間」である場合には(Act249にてNO)、プロセッサ201は、Act242の処理へと戻る。すなわちプロセッサ201は、ユーザコードと日付データと区分データとをセットした栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。したがって、タッチパネル204には、日付データと区分データとに基づく第1栄養分析画面SC51が表示される。
一方、区分データが「朝食」、「昼食」、「夕食」または「間食」の食事別の場合には(Act249にてYES)、図22に示すように、プロセッサ201は、栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act250)。この栄養分析要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データとが含まれる。すなわちこの栄養分析要求には、食事別の区分データが含まれる。
図26のAct505において、第1栄養分析画面SC51のデータをユーザ端末装置20に宛てて送信したプロセッサ501は、栄養分析要求を受信したか確認する(Act506)。栄養分析要求を受信していない場合(Act505にてNO)、プロセッサ501は、バランス閲覧要求を受信したか確認する(Act507)。バランス閲覧要求を受信していない場合(Act507にてNO)、プロセッサ501は、栄養分析要求元のユーザ端末装置20から健康アプリP22の終了が指示されたか確認する(Act508)。健康アプリP22の終了が指示されていない場合(Act508にてNO)、プロセッサ501は、再び栄養分析要求を受信したか確認する(Act506)。したがってプロセッサ501は、Act506乃至Act508の処理により、栄養分析要求を受信するか、バランス閲覧要求を受信するか、健康アプリP22が終了するのを待ち受ける。
一方、Act509において、第2栄養分析画面SC52のデータをユーザ端末装置20に宛てて送信したプロセッサ501は、栄養分析要求を受信したか確認する(Act510)。栄養分析要求を受信していない場合(Act510にてNO)、プロセッサ501は、レシートからの登録要求を受信したか確認する(Act511)。レシートからの登録要求を受信していない場合(Act511にてNO)、プロセッサ501は、手入力による登録要求を受信したか確認する(Act512)。手入力による登録要求を受信していない場合(Act512にてNO)、プロセッサ501は、バランス閲覧要求を受信したか確認する(Act513)。バランス閲覧要求を受信していない場合(Act513にてNO)、プロセッサ501は、栄養分析要求元のユーザ端末装置20から健康アプリP22の終了が指示されたか確認する(Act514)。健康アプリP22の終了が指示されていない場合(Act514にてNO)、プロセッサ501は、再び栄養分析要求を受信したか確認する(Act510)。したがってプロセッサ501は、Act510乃至Act514の処理により、栄養分析要求を受信するか、レシートからの登録要求または手入力による登録要求を受信するか、バランス閲覧要求を受信するか、健康アプリP22が終了するのを待ち受ける。なお、レシートからの登録要求、手入力による登録要求及びバランス閲覧要求については後述する。
Act506乃至Act508の待ち受け状態またはAct510乃至Act514の待ち受け状態において、栄養分析要求を受信した場合(Act506またはAct510にてYES)、プロセッサ501は、Act501の処理へと戻る。すなわちプロセッサ501は、受信された栄養分析要求に含まれたユーザコード、日付データ及び区分データをメインメモリ502または補助記憶デバイス503で記憶する。このときプロセッサ501は、前回のAct501の処理で記憶したユーザコード、日付データ及び区分データに対して上書きする。プロセッサ501は、記憶したユーザコードで健康管理データ領域W51を検索して、当該ユーザコードが関連付けられた健康管理データを取得する。
食事別の区分データが含まれた栄養分析要求を受信した場合、プロセッサ501は、第2栄養分析画面SC52のデータを作成する(Act504)。そしてプロセッサ501は、この画面データを通信インターフェース504からユーザ端末装置20に宛ててネットワーク200へと送信する(Act509)。
図22のAct250において、食事別の区分データを含む栄養分析要求を行ったプロセッサ201は、この要求に応答して健康管理サーバ50から送信される栄養分析画面のデータを待ち受ける。そして、通信インターフェース205で栄養分析画面のデータを受信したならば、プロセッサ201は、この画面データに基づき、タッチパネル204の画面を、第2栄養分析画面SC52とする(Act251)。
図31は、区分データが「夕食」のときの第2栄養分析画面SC52の一例を示す。図31に示すように、第2栄養分析画面SC52には、一食分の摂取カロリー量と栄養バランスの分布画像G1とが表示される。摂取カロリー量に対して標準摂取カロリーは表示されない。
また第2栄養分析画面SC52には、第1栄養分析画面SC51と同様に、日付と、マークM1,M2と、ボタンB51〜B58と、ボタンB61〜B64とが表示される。さらに、第2栄養分析画面SC52には、ボタンB71,B72が表示される。ボタンB71は、献立情報をレシートデータから登録するためにユーザがタッチするものである。ボタンB72は、献立情報を手入力で登録するためにユーザがタッチするものである。
図22のAct251において、タッチパネル204に第2栄養分析画面SC52を表示させたプロセッサ201は、日付または区分の変更が指定されたか確認する。すなわちプロセッサ201は、第2栄養分析画面SC52のマークM1,M2またはボタンB51〜B58がタッチされたか確認する(Act252)。マークM1,M2またはボタンB51〜B58がタッチされていない場合(Act252にてNO)、プロセッサ201は、レシートからの登録が指定されたか確認する。すなわちプロセッサ201は、ボタンB71がタッチされたか確認する(Act253)。ボタンB71がタッチされていない場合(Act253にてNO)、プロセッサ201は、手入力による登録が指定されたか確認する。すなわちプロセッサ201は、ボタンB72がタッチされたか確認する(Act254)。ボタンB72がタッチされていない場合(Act254にてNO)、プロセッサ201は、食事バランス画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB62がタッチされたか確認する(Act255)。ボタンB62がタッチされていない場合(Act255にてNO)、プロセッサ201は、トップ画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB22がタッチされたか確認する(Act256)。ボタンB22がタッチされていない場合(Act256にてNO)、プロセッサ201は、その他の画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB25がタッチされたか確認する(Act257)。ボタンB25がタッチされていない場合(Act257にてNO)、プロセッサ201は、再び日付または区分の変更が指定されたか確認する(Act252)。
したがってプロセッサ201は、Act252乃至Act257の処理において、第2栄養分析画面SC52のマークM1,M2またはボタンB51〜58、B61、B62、B64、B71、B72がタッチされるのを待ち受ける。なお、ボタンB63は、栄養分析画面への移行を指示するボタンなので、タッチされてもプロセッサ201は、その入力を無視する。
第2栄養分析画面SC52を閲覧したユーザがさらに前日の夕食分の栄養分析画面を確認したい場合、ユーザは、マークM1にタッチする。当日の朝食分の栄養分析画面を確認したい場合には、ユーザは、ボタンB55にタッチする。
Act252乃至Act257の待ち受け状態において、タッチパネル204を介してマークM1,M2またはボタンB51〜58がタッチされたことを検知すると(Act252にてYES)、プロセッサ201は、そのタッチされたマークM1,M2またはボタンB51〜58に応じて、日付エリアまたは区分エリアの区分データを変更する(Act258)。例えば、マークM1がタッチされた場合には、プロセッサ201は、日付エリアの日付データを、一日前の日付とする。ボタンB55がタッチされた場合には、区分エリアの区分データを「朝食」とする。
日付エリアまたは区分エリアのデータを変更すると、プロセッサ201は、区分データが食事別であるか確認する(Act259)。区分データが食事別でない、すなわち「一日」、「週間」または「月間」である場合には場合(Act259にてNO)、プロセッサ201は、Act242の処理へと戻る。すなわちプロセッサ201は、ユーザコードと日付データと区分データとをセットした栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。したがって、タッチパネル204には、日付データと区分データとに基づく第1栄養分析画面SC51が表示される。
一方、区分データが「朝食」、「昼食」、「夕食」または「間食」の食事別の場合には(Act259にてYES)、プロセッサ201は、Act250の処理へと戻る。すなわちプロセッサ201は、ユーザコードと日付データと区分データとをセットした栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。したがって、タッチパネル204には、日付データと区分データとに基づく第2栄養分析画面SC52が表示される。
第1栄養分析画面SC51または第2栄養分析画面SC52を確認し終え、健康アプリP22を終了させる場合、ユーザは、トップ画面SC2に戻すためにボタンB61にタッチする。
ユーザ端末装置20のプロセッサ201は、Act244乃至Act247の待ち受け状態、またはAct252乃至Act257の待ち受け状態において、ボタンB61がタッチされたことを検知すると(Act246またはAct256にてYES)、健康管理サーバ50に対して健康アプリP22の終了を指令する(Act260またはAct261)。この後、健康アプリP22は終了する。
図15のAct231において健康アプリP22を起動させた後、プロセッサ201は、この健康アプリP22が終了するのを待ち受ける(Act232)。そして健康アプリP22が終了したならば(Act232にてYES)、プロセッサ201は、Act205の処理へと戻る。すなわちプロセッサ201は、タッチパネル204の画面をトップ画面SC2とする。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。
健康管理サーバ50のプロセッサ501は、図26に示すAct506乃至Act508の待ち受け状態、またはAct510乃至Act514の待ち受け状態において、通信インターフェース504を介してユーザ端末装置20から健康アプリP22の終了指令を受けると(Act508またはAct514にてYES)、Act500の処理へと戻る。そしてプロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
次に、献立情報の登録について説明する。献立情報の登録方法としては、手入力により登録する方法と、電子化されたレシートデータを使用して登録する方法とがある。
献立情報を登録するユーザは、ユーザ端末装置20において、健康アプリP22を起動する。すなわちユーザは、タッチパネル204に表示されたトップ画面CS、レシート画面SC3または一覧画面SC4から、ボタンB23にタッチする。
健康アプリP22が起動すると、前述したように、タッチパネル204には第1栄養分析画面SC51が表示されるので、ユーザは、マークM1,M2またはボタンB55〜B58を適宜操作して、献立情報を登録する日付と食事とを指定する。例えば本日の朝食分を登録する場合、ユーザは、ボタンB55にタッチする。日付と食事とを指定し終えると、その指定された日付と食事とに対する第2栄養分析画面SC52がタッチパネル204に表示される。
因みに、この指定された日付と食事とに対して献立情報が未登録の場合、第2栄養分析画面SC52に表示される摂取カロリー量は0kcalである。また、栄養バランスの分布画像G1には、栄養バランスを示す情報が表示されない。そこで、献立情報が未登録の場合、摂取カロリー量と栄養バランスの分布画像G1とが表示されず、レシートからの登録を指定するためにユーザがタッチするボタンB71と、手入力による登録を指定するためにユーザがタッチするボタンB72とが表示された画面をタッチパネル204に表示させてもよい。
第2栄養分析画面SC52を閲覧したユーザは、その食事に対する献立情報をレシートデータから登録する場合、ボタンB71にタッチする。手入力により登録する場合には、ユーザは、ボタンB72にタッチする。
図22のAct251において、タッチパネル204に第2栄養分析画面SC52を表示させたプロセッサ201は、Act252乃至Act257の待ち受け状態となる。この待ち受け状態において、タッチパネル204でボタンB71がタッチされたことを検知すると(Act253にてYES)、プロセッサ201は、図23に示すように、レシートからの登録要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act271)。この登録要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データとが含まれる。
図26のAct509において、ユーザ端末装置20に対して第2栄養分析画面データを送信したプロセッサ501は、Act510乃至Act514の待ち受け状態となる。この待ち受け状態において、レシートからの登録要求を通信インターフェース504で受信すると(Act511にてYES)、プロセッサ501は、図27に示すように、レシートサーバ30にアクセスする。そしてプロセッサ501は、登録要求に含まれるユーザコードに関連付けられて電子レシート領域W31に格納されている全てのレシートデータを取得する(Act514)。
レシートデータを取得したならば、プロセッサ501は、そのレシートデータに含まれる簡易レシートデータにより一覧画面データを生成する。そしてプロセッサ501は、この一覧画面データを通信インターフェース504からユーザ端末装置20に宛ててネットワーク200へと送信する(Act515)。一覧画面データは、図20に示した一覧画面SC4と同一の画像を表す。
図23のAct271において、レシートからの登録要求を送信したプロセッサ201は、この登録要求に応答して健康管理サーバ50から送信される一覧画面データを待ち受ける。そして、一覧画面データを通信インターフェース205で受信したならば、プロセッサ201は、この一覧画面データに基づき、タッチパネル204の画面を一覧画面SC4とする(Act272)。
タッチパネル204の画面を一覧画面SC4としたプロセッサ201は、この一覧画面SC4からいずれかの簡易レシートデータが指定されたか確認する。すなわちプロセッサ21は、いずれかの簡易レシートデータの画像R2がタッチされたか確認する(Act273)。画像R2がタッチされていない場合(Act273にてNO)、プロセッサ201は、トップ画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB22がタッチされたか確認する(Act274)。ボタンB22がタッチされていない場合(Act274にてNO)、プロセッサ201は、再び簡易レシートデータが指定されたか確認する(Act273)。
したがってプロセッサ201は、Act273及びAct274の処理において、一覧画面SC4の画像R2、またはボタンB22がタッチされるのを待ち受ける。なお、他のボタンB23,B24,B25については、タッチされてもプロセッサ201は、その入力を無視する。あるいは、Act272の処理にて表示される一覧画面SC4からは、ボタンB23,B24,B25が省略されていてもよい。
一覧画面SC4を閲覧したユーザは、簡易レシートデータのなかから献立情報の登録に使用したいレシートのデータを探す。そして献立情報の登録に使用したいレシートの簡易レシートデータを見つけたならば、ユーザは、その簡易レシートデータの画像R2にタッチする。
Act273及びAct274の待ち受け状態において、画像R2がタッチされたことを検知すると(Act273にてYES)、プロセッサ201は、商品リストの表示要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act275)。この表示要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、タッチされた画像R2の簡易レシートデータとが含まれる。
図27のAct515において、一覧画面データを送信したプロセッサ501は、ユーザ端末装置20から商品リストの表示要求を受信したか(Act516)。受信していない場合、ユーザ端末装置20から健康アプリP22の終了が指示されたか確認する(Act517)。健康アプリP22の終了が指示されていない場合(Act517にてNO)、プロセッサ501は、再びユーザ端末装置20から商品リストの表示要求を受信したか確認する(Act516)。したがって、プロセッサ501は、Act516及びAct517の処理により、商品リストの表示要求か健康アプリP22の終了指示を待ち受ける。
ユーザ端末装置20から商品リストの表示要求を受信した場合(Act516にてYES)、プロセッサ501は、この表示要求に含まれる簡易レシートデータによって決定されるレシートデータの明細データ315を基に商品リストを生成する。商品リストは、店舗で商品として提供または販売された商品に関する情報(店舗コード、商品コード、商品名等)のリストである。プロセッサ501は、この商品リストの画面データを通信インターフェース504からユーザ端末装置20に宛ててネットワーク200へと送信する(Act518)。
図23のAct275において、商品リストの表示要求を行ったプロセッサ201は、この要求に応答して健康管理サーバ50から送信される商品リストの画面データを待ち受ける。そして、通信インターフェース205で商品リストの画面データを受信したならば、プロセッサ201は、この画面データに基づき、タッチパネル204の画面を、商品リスト画面SC6とする(Act267)。
図32は、商品リスト画面SC6の一例を示す。商品リスト画面SC6には、レシートデータの明細データ315に含まれる商品の名称リストL1が表示される。また商品リスト画面SC6は、ボタンB61、B62、B63、B81及びB82を含む。ボタンB61は、トップ画面SC2への移行を指示するためにユーザがタッチするものである。ボタンB62は、栄養分析画面への移行を指示するためにユーザがタッチするものである。ボタンB63は、トップ画面および栄養分析画面とは別の画面への移行を指示するためにユーザがタッチするものである。ボタンB81は、他のレシートの商品リストL1を見るためにユーザがタッチするものである。ボタンB82は、名称リストL1から選択した商品を献立情報として登録するためにユーザがタッチするものである。
商品リストL1には、店舗で商品として提供または販売される飲食物の名称がラジオボタンと関連付けて表示される。飲食物以外の商品が商品リストL1に表示されてもよい。飲食物とともに飲食物以外の商品を店舗で購入した際のレシートデータに対して、飲食物だけが抽出されて商品リストL1に表示されてもよい。
商品リスト画面SC6を確認したが、献立情報として登録する飲食物の名称が商品リストL1に表示されておらず、他のレシートを見る場合、ユーザは、ボタンB81にタッチする。献立情報として登録する飲食物の名称が商品リストL1に表示されている場合には、ユーザは、その名称にタッチする。名称がタッチされると、対応するラジオボタンが選択状態を表す。登録する飲食物の名称を全て選択状態としたならば、ユーザは、ボタンB82にタッチする。
図23のAct276において、タッチパネル204の画面を商品リスト画面SC6としたプロセッサ201は、名称リストL1から選択した商品を献立情報として登録する旨が指定されたか確認する。すなわちプロセッサ201は、ボタンB82がタッチされたか確認する(Act277)。ボタンB82がタッチされていない場合(Act277にてNO)、プロセッサ201は、他のレシートを見る旨が指定されたか確認する。すなわちプロセッサ201は、ボタンB81がタッチされたか確認する(Act278)。ボタンB81がタッチされていない場合(Act278にてNO)、プロセッサ201は、トップ画面に戻る旨が指定されたか確認する。すなわちプロセッサ201は、ボタンB61がタッチされたか確認する(Act279)。ボタンB61がタッチされていない場合(Act279にてNO)、プロセッサ201は、再び名称リストL1から選択した商品を献立情報として登録する旨が指定されたか確認する。(Act277)。したがってプロセッサ201は、Act277乃至Act279の処理により、ボタンB82,B81,B61のいずれかがタッチされるのを待ち受ける。
Act277乃至Act279の待ち受け状態において、ボタンB81がタッチされたことを検知すると(Act278にてYES)、プロセッサ201は、Act272の処理へと戻る。すなわちプロセッサ201は、タッチパネル204の画面を一覧画面SC4に戻す。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。
Act277乃至Act279の待ち受け状態において、ボタンB82がタッチされたことを検知すると(Act277にてYES)、プロセッサ201は、商品リストL1のなかから選択状態にある商品(飲食物の名称)の有無を判別する(Act280)。選択状態にある商品がある場合(Act280にYES)、プロセッサ201は、その選択状態にある商品を献立情報として登録する旨を通知する選択商品データを、通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act281)。この選択商品データは、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データと、選択状態にある商品に関する情報である店舗コードと商品コードとの対データとを含む。
選択商品データを送信した後、あるいは選択状態にある商品がない場合(Act270にてNO)、プロセッサ201は、Act250の処理へと戻る。すなわちプロセッサ201は、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データとを含む栄養分析要求を、通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。したがって、日付データと区分データとに基づく第2栄養分析画面SC52がタッチパネル204に表示される。
図27のAct518において、ユーザ端末装置20に宛てて商品リストの画面データを送信したプロセッサ501は、ユーザ端末装置20から選択商品データを受信したか確認する(Act519)。受信していない場合(Act519にてNO)、プロセッサ501は、そのユーザ端末装置20から栄養分析要求を受信したか確認する(Act520)。受信していない場合(Act520にてNO)、プロセッサ501は、そのユーザ端末装置20から健康アプリP22の終了が指示されたか確認する(Act521)。健康アプリP22の終了が指示されていない場合(Act521にてNO)、プロセッサ501は、再び選択商品データを受信したか確認する(Act519)。したがってプロセッサ501は、Act519乃至Act521の処理により、選択商品データを受信するか、栄養分析要求を受信するか、健康アプリP22の終了指示を待ち受ける。
栄養分析要求を受信した場合(Act520にてYES)、プロセッサ501は、Act501の処理へと戻る。以後、プロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
選択商品データを受信した場合(Act519にてYES)、プロセッサ501は、その選択商品データに含まれるユーザコードに関連付けられた献立データ512の中から、選択商品データに含まれる日付データと区分データとが一致する献立データ512を検出する。このとき、該当する献立データが健康管理データ領域W51に存在しない場合には、プロセッサ501は、選択商品データに含まれる日付データと区分データとをセットした献立データ512を、選択商品データに含まれるユーザコードに関連付けられたデータとして健康管理データ領域W51に追加する。プロセッサ501は、選択商品データに含まれる日付データと区分データとが一致する献立データ512に、選択商品データに含まれる店舗コードと商品コードとの対データを追加する(Act522)。
ここに、プログラムに従いAct514乃至Act522の処理を実行するプロセッサ501を含むコンピュータは、取得手段及び登録手段として機能する。
選択商品データに含まれる店舗コードと商品コードとの対データを健康管理データ領域W51に追加した後、プロセッサ501は、Act500の処理へと戻る。そしてプロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
ユーザ端末装置20のプロセッサ201は、Act252乃至Act257の待ち受け状態において、ボタンB72がタッチされたことを検知すると(Act254にてYES)、図24に示すように、手入力による登録要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act291)。この登録要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データとが含まれる。
健康管理サーバ50のプロセッサ501は、Act510乃至Act514の待ち受け状態において、手入力による登録要求を通信インターフェース504で受信すると(Act512にてYES)、図28に示すように、補助記憶デバイス503に記憶されている食物入力画面データを取得する(Act531)。食物入力画面データは、ユーザ端末装置20のタッチパネル204を食物入力画面SC7とするための画像を表す。プロセッサ501は、食物入力画面データを通信インターフェース504からユーザ端末装置20に宛ててネットワーク200閲覧したユーザへと送信する(Act532)。
図24のAct291において、手入力による登録要求を行ったプロセッサ201は、この要求に応答して健康管理サーバ50から送信される食物入力画面データを待ち受ける。そして、通信インターフェース205で食物入力画面データを受信したならば、プロセッサ201は、この画面データに基づき、タッチパネル204の画面を、食物入力画面SC7とする(Act292)。
図33は、食物入力画面SC7の一例を示す。食物入力画面SC7は、献立ボタンB91と、カテゴリボタンB92と、定番メニューボタンB93と、完了ボタンB94とを含む。献立ボタンB91とカテゴリボタンB92とについては、複数のボタンがマトリクス状に配置されている。定番メニューボタンB93については、複数のボタンが一列に配置されている。
カテゴリボタンB92は、ごはん類、パン類、麺類、野菜料理、肉料理、魚介料理等の飲食物に係るカテゴリを選択するためにユーザがタッチするものである。
献立ボタンB91は、カテゴリボタンB92によって選択されたカテゴリで分類される飲食物を選択するためにユーザがタッチするものである。献立ボタン91には、栄養データサーバ40の食物栄養データ領域W42に設定されている各飲食物の食物コードとアイコンとが個々に割り当てられて設定される。そして献立ボタン91には、そのボタンに設定されたアイコンが表示される。
定番メニューボタンB93は、ユーザにとって定番となる飲食物を選択するためにユーザがタッチするものである。定番メニューボタンB93には、ユーザが所望の飲食物を定番メニューとして任意に設定することができる。例えば朝食として略毎日、「トースト」と「ミルク」とを飲食するユーザは、いずれかの定番メニューボタンB93に「トースト」と「ミルク」の飲食コードを定番メニューコードとして設定する。同様に、例えば昼食として略毎日、飲食店の「天ぷらそば」を飲食するユーザは、いずれかの定番メニューボタンB93に「天ぷらそば」の店舗コードと商品コードとを定番メニューコードとして設定する。
食物入力画面SC7を閲覧したユーザは、例えばごはん類の飲食物を登録する場合、ごはん類が割り当てられたカテゴリボタンB92にタッチする。そうすると、献立ボタンB91には、ごはん類に属する飲食物が割り当てられるので、ユーザは献立情報として登録する飲食物のアイコンが表示された献立ボタンB91にタッチする。同様に、例えば麺類の飲食物を登録する場合、麺類が割り当てられたカテゴリボタンB92にタッチする。そうすると、献立ボタンB91には、麺類に属する飲食物が割り当てられるので、ユーザは献立情報として登録する飲食物のアイコンが表示された献立ボタンB91にタッチする。また、定番メニューボタンB93に割り当てられた飲食物を登録する場合には、ユーザはその定番メニューボタンB93にタッチする。こうして、手入力により登録する飲食物の選択を終了したならば、ユーザは、完了ボタンB94にタッチする。
タッチパネル204の画面を食物入力画面SC7としたならば、プロセッサ201は、食物入力の完了が指定されたか確認する。すなわちプロセッサ201は、完了ボタンB94がタッチされるのを待ち受ける(Act293)。完了ボタンB94のタッチされたことを検知すると(Act293にてYES)、プロセッサ201は、献立情報として登録する飲食物が選択されているか確認する(Act294)。カテゴリボタンB92と献立ボタンB91とのタッチ操作あるいは定番メニューボタンB93のタッチ操作により飲食物が選択されている場合(Act294にてYES)、プロセッサ201は、その飲食物の食物コードを含む選択食物データを通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act295)。この選択食物データには、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データとが含まれる。
選択食物データを送信するか、献立情報として登録する飲食物が選択されていない場合(Act294にてNO)、プロセッサ201は、Act250の処理に戻る。すなわちプロセッサ201は、ユーザコードと日付データと区分データとをセットした栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。以後、プロセッサ201は、それ以降の処理を前述したのと同様に繰り返す。
図28のAct532において、食物入力画面データをユーザ端末装置20に宛てて送信したプロセッサ501は、そのユーザ端末装置20から選択食物データを受信したか確認する(Act533)。受信していない場合(Act533にてNO)、プロセッサ501は、そのユーザ端末装置20から栄養分析要求を受信したか確認する(Act534)。受信していない場合(Act534にてNO)、プロセッサ501は、再び選択食物データを受信したか確認する(Act533)。
したがって、プロセッサ501は、Act533及びAct534の処理により、選択食物データを受信するか、栄養分析要求を受信するのを待ち受ける。この待ち受け状態において、栄養分析要求を受信した場合(Act534にてYES)、プロセッサ501は、Act501の処理へと戻る。以後、プロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
選択食物データを受信した場合には(Act533にてYES)、プロセッサ501は、その選択食物データに含まれるユーザコードに関連付けられた献立データ512の中から、選択食物データに含まれる日付データと区分データとが一致する献立データ512を検出する。なお、該当する献立データが健康管理データ領域W51に存在しない場合には、プロセッサは、選択食物データに含まれる日付データと区分データとをセットした献立データ512を、選択食物データに含まれるユーザコードに関連付けられたデータとして健康管理データ領域W51に追加する。プロセッサ501は、選択食物データに含まれる日付データと区分データとが一致する献立データ512に、選択食物データに含まれる食物コードを追加する(Act535)。
選択食物データに含まれる食物コードを健康管理データ領域W51に追加した後、プロセッサ501は、Act500の処理へと戻る。そしてプロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
ところで、栄養分析画面SC51,SC52に表示される栄養バランスの分布画像G1は、食事バランスガイドのイラストに置換することが可能である。栄養バランスの分布画像G1を食事バランスガイドに置換する場合、ユーザは、ボタンB62にタッチする。
図21のAct244乃至Act247の待ち受け状態、または図22のAct252乃至Act257の待ち受け状態において、ボタンB62タッチされたことを検知すると(Act245またはAct513にてYES)、プロセッサ201は、図25に示すように、メインメモリ202内に設定する国コードエリアにデフォルト値“0”をセットする(Act2001)。デフォルト値“0”は、食事バランスガイド領域に格納されている食事バランスデータにおいて、国コードとしては未使用のコードである。なお、デフォルト値は“0”に限定されるものではない。食事バランスデータにおいて、国コードとしては未使用のコードであればよい。
国データをセットしたならば、プロセッサ201は、バランス閲覧要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act2002)。このバランス閲覧要求には、メインメモリ202または補助記憶デバイス203で記憶したユーザコードと、日付エリア及び区分エリアにセットされた日付データ及び区分データと、国コードエリアにセットされた国コードとが含まれる。
図26のAct506乃至Act508の待ち受け状態(第1栄養分析画面データを送信した後の待ち受け状態)、またはAct510乃至Act514の待ち受け状態(第2栄養分析画面データを送信した後の待ち受け状態)において、バランス閲覧要求を受信すると(Act507にてYES、またはAct513にてYES)、プロセッサ501は、図29に示すように、そのバランス閲覧要求に含まれる国コードがデフォルト値“0”であるか確認する(Act541)。
国コードが“0”である場合(Act541にてYES)、プロセッサ501は、レシートサーバ30にアクセスする。そしてプロセッサ501は、国コード領域W32に格納されている国コードを取得して、メインメモリ502または補助記憶デバイス503で記憶する(Act514)。国コードが“0”でない場合、すなわち、いずれかの国または地域の国コードが含まれている場合には(Act541にてNO)、プロセッサ501は、レシートサーバ30にアクセスしない。プロセッサ501は、バランス閲覧要求に含まれる国コードをメインメモリ502または補助記憶デバイス503で記憶する。
国コードをメインメモリ502または補助記憶デバイス503で記憶したならば、プロセッサ501は、食事バランスガイド領域W52を検索する。そしてプロセッサ501は、記憶した国コードを含む食事バランスデータを取得する(Act543)。
食事バランスガイドデータを取得したならば、プロセッサ501は、その食事バランスデータに含まれる分類データ524に従い、飲食物のカロリーデータ及び栄養バランスデータを分類する。分類対象となるカロリーデータ及び栄養バランスデータは、Act503またはAct504の処理において、記憶した献立データ512に含まれる品目コードに基づき栄養データサーバ40から取得されたデータである。
プロセッサ501は、分類データ524に従い分類された飲食物のカロリーデータ及び栄養バランスデータと、食事バランスデータのイラストデータ523とに基づいて、食事バランス画面データを編集する(Act544)。そしてプロセッサ501は、食事バランス画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する(Act545)。食事バランス画面データは、ユーザ端末装置20のタッチパネル204の画面を食事バランス画面SC7とするための画像を表す。
ここに、プログラムに従いAct541乃至Act544の処理を実行するプロセッサ501を含むコンピュータは、生成手段として機能する。
また、プログラムに従いAct545の処理を実行するプロセッサ501を含むコンピュータは、提示手段として機能する。
図25のAct2002において、バランス閲覧要求を健康管理サーバ50に宛てて送信したプロセッサ201は、食事バランス画面データを待ち受ける(Act2003)。通信インターフェース205で食事バランス画面データを受信すると(Act2003にてYES)、プロセッサ201は、この食事バランス画面データに基づきタッチパネル204の画面を食事バランス画面SC81とする(Act2004)。
図34は、食事バランス画面SC81の一例を示す。図30の栄養バランス画面SC61において、ユーザがボタンB62にタッチすると、図34の食事バランス画面SC81が表示される。食事バランス画面SC81は、栄養バランス画面SC61に表示されていた栄養バランスの分布画像G1を、食事バランスガイドのイラストG2に置換したものであり、その他の摂取カロリー表示、日付表示、各ボタンB51〜B58、B61〜B64の表示は、栄養バランス画面SC61と等しい。ただし、トップ画面SC2への移行を指示するためのボタンB61が、食事バランスガイドの国を指定するためのボタンB61に代わっている。
なお、図31の栄養バランス画面SC62において、ユーザがボタンB62にタッチした場合に表示される食事バランス画面も同様である。すなわち、栄養バランス画面SC61に表示される栄養バランスの分布画像G1が、食事バランスガイドのイラストG2に置き換わる。また、トップ画面SC2への移行を指示するためのボタンB61が、食事バランスガイドの国を指定するためのボタンB61となる。その他は、栄養バランス画面SC62と変わらない。
さて、ユーザが栄養バランス画面SC61またはSC2のボタンB62にタッチした段階では、国コードはデフォルト値“0”である。したがって、食事バランス画面SC81に表示される食事バランスガイドのイラストG2は、レシートサーバ30の国コード領域W32にセットされている国コードで決定される国または地域で策定されたイラストとなる。因みに、図34の食事バランス画面SC81は、レシートサーバ30の国コード領域W32にセットされている国コードが日本のコードである場合を示している。国コードが日本のコードであるため、食事バランス画面SC81のイラストは、日本が策定した食事バランスガイドで用いられるコマ型のイラストG2となっている。
しかしながら、ユーザの中には、別の国または地域で策定された食事バランスガイドで健康管理をしたいという要望がある。その場合、ユーザは、ボタンB61にタッチする。
図25のAct2004において、タッチパネル204の画面を食事バランス画面SC81としたプロセッサ201は、国指定がなされたか確認する。すなわちボタンB61がタッチされたか確認する(Act2005)。ボタンB61がタッチされていない場合、プロセッサ201は、栄養分析画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB63がタッチされたか確認する(Act2006)。ボタンB63がタッチされていない場合(Act2006にてNO)、プロセッサ201は、その他の画面への移行が指示されたか確認する。すなわちプロセッサ201は、ボタンB64がタッチされたか確認する(Act2007)。ボタンB64がタッチされていない場合(Act2007にてNO)、プロセッサ201は、再び国指定がなされたか確認する(Act2005)。
したがって、プロセッサ201は、Act2005乃至Act2007の処理により、国指定がなされるか、栄養分析画面への移行が指示されるか、その他の画面への移行が指示されるのを待ち受ける。この待ち受け状態において、タッチパネル204を介してボタンB61がタッチされたことを検知すると(Act2005にてYES)、プロセッサ201は、国指定要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する(Act2008)。
図Act545において、食事バランス画面データをユーザ端末装置20に宛てて送信したプロセッサ501は、国指定要求を受信したか確認する(Act546)。国指定要求を受信していない場合(Act546にてNO)、プロセッサ501は、栄養分析要求を受信したか確認する(Act547)。栄養分析要求を受信していない場合(Act547にてNO)、プロセッサ501は、再び国指定要求を受信したか確認する(Act546)。
したがって、プロセッサ501は、Act546及びAct547の処理により、国指定要求を受信するか栄養分析要求を受信するのを待ち受ける。この待ち受け状態において、通信インターフェース504で国指定要求を受信すると(Act546にてYES)、プロセッサ501は、補助記憶デバイス503に記憶されている国指定画面データを取得する(Act2008)。国指定画面データは、ユーザ端末装置20のタッチパネル204を国指定画面SC9とするための画像を表す。プロセッサ501は、国指定画面データを通信インターフェース504からユーザ端末装置20に宛ててネットワーク200へと送信する(Act548)。
図25のAct2008において、国指定要求を送信したプロセッサ201は、この要求に応答して健康管理サーバ50から送信される国指定画面データを待ち受ける。そして、通信インターフェース205で国指定画面データを受信したならば、プロセッサ201は、この画面データに基づき、タッチパネル204の画面を、国指定画面SC9とする(Act2009)。
図35は、国指定画面SC9の一例を示す。国指定画面SC9は、複数の国選択ボタンB81を含む。各国選択ボタンB81には、食事バランスガイド領域W52に記憶された食事バランスデータの国コード521と国名データ522とが割り当てられて設定される。
国指定画面SC9を閲覧したユーザは、食事バランスガイドを確認したい国または地域の国名が表示された国選択ボタンB81にタッチする。
Act2009において、タッチパネル204の画面を国指定画面SC9としたプロセッサ201は、いずれかの国選択ボタンB81がタッチされるのを待ち受ける(Act2010)。タッチパネル204を介して国選択ボタンB81がタッチされたことを検知すると(Act2010にてYES)、プロセッサ201は、メインメモリ202内に設定する国コードエリアの国コードを、タッチされた国選択ボタンB81に設定された国コードに書き換える(Act2011)。そしてプロセッサ201は、Act2002の処理に戻る。すなわちプロセッサ201は、国コードエリアにセットされた国コードを含むバランス閲覧要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。
図29のAct548において、国指定画面データをユーザ端末装置20に宛てて送信したプロセッサ501は、そのユーザ端末装置20からのバランス閲覧要求を待ち受ける(Act549)。通信インターフェース504でバランス閲覧要求を受信すると(Act549にてYES)、プロセッサ501は、Act541の処理に戻る。プロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
ここに、プログラムに従いAct548及びAct549の処理を実行するプロセッサ501を含むコンピュータは、受付手段として機能する。
Act548の待ち受け状態において受信するバランス閲覧要求は、国選択ボタンB81で選択された国または地域の国コードを含む。したがって、Act543の処理において食事バランスガイド領域W52から取得される食事バランスデータは、国選択ボタンB81で選択された国または地域の国コードで識別されるデータとなる。その結果、食事バランス画面に表示される食事バランスガイドのイラストは、国コードで決定される国または地域で策定された食事バランスガイドのイラストとなる。
図34の食事バランス画面SC81を閲覧したユーザが、アメリカ対応の食事バランスガイドのイラストを閲覧したい場合、ユーザは、国指定画面SC9において、国名「アメリカ」が設定されたボタンB82にタッチする。そうすると、食事バランス画面SC81が図35に示す食事バランス画面SC82に変化する。すなわち、アメリカで策定された食事バランスガイドのイラストG3が、食事バランス画面SC82に表示される。
さて、食事バランスガイドを閲覧し終えたユーザは、ボタンB63にタッチする。
プロセッサ201は、図25のAct2005乃至Act2007の待ち受け状態において、ボタンB63がタッチされたことを検知すると(Act2006にてYES)、区分エリアにセットされている区分データを確認する(Act2012)。
区分データが食事別でない場合、すなわち「一日」、「一週間」及び「一か月」の場合には(Act2012にてNO)、プロセッサ201は、Act242の処理に戻る。すなわちプロセッサ201は、栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。これに対し、区分データが食事別の場合、すなわち「朝食」、「昼食」、「夕食」及び「間食」の場合には(Act2012にてYES)、プロセッサ201は、Act250の処理に戻る。すなわちプロセッサ201は、栄養分析要求を通信インターフェース205から健康管理サーバ50に宛ててネットワーク200へと送信する。
図29のAct545において、食事バランス画面データをユーザ端末装置20に宛てて送信したプロセッサ501は、Act546及びAct547の待ち受け状態となる。この待ち受け状態において、ユーザ端末装置20から栄養分析要求を受信すると(Act547にてYES)、プロセッサ501は、Act501の処理に戻る。以後、プロセッサ501は、それ以降の処理を前述したのと同様に繰り返す。
したがって、ユーザ端末装置20の区分エリアにセットされている区分データが食事別でない場合、タッチパネル204の画面は、第1栄養分析画面SC62となる。区分データが食事別の場合には、タッチパネル204の画面は、第2栄養分析画面SC62となる。
このように本実施形態の健康管理システム100によれば、スマートフォン、携帯電話、あるいはタブレット端末等のような携帯型のユーザ端末装置20に、レシートクライアントアプリP21と健康アプリP22とをインストールすることによって、ユーザは、以下のようなサービスを受けることができる。
A.ユーザは、会計装置10が設置された飲食店、小売店等で会計の際に発行されるレシートを紙媒体で受け取るのではなく、電子レシートとしてユーザ端末装置20に表示させて閲覧することができる。
B.ユーザは、レシートサーバ30に蓄積された電子レシートの商品情報を利用して、ユーザが朝食,昼食,夕食等の食事毎に摂取した献立情報を健康管理サーバ50の健康管理データ領域W51に登録することができる。
C.ユーザは、電子レシートの情報からは補えない献立情報については、ユーザ端末装置20を利用して手入力により登録することができる。
D.ユーザは、ユーザ端末装置20のタッチパネル204に表示される画面から、健康管理データ領域W51においてユーザ別に蓄積された食事別の献立情報に基づき、食事毎、一日分、一週間分、一か月分などの単位に、摂取カロリー量と栄養バランスの分布画像G1とを閲覧することができる。
E.ユーザは、栄養バランスの指標となる画像を、栄養バランスの分布画像G1だけでなく、食事バランスガイドのイラストでも閲覧することができる。
F.食事バランスガイドのイラストは、レシートサーバ30に設定されている国コードで設定される国または地域で策定されたものである。レシートサーバ30には、健康管理システム100が構築された国または地域の国コードが設定される。したがって、多くのユーザは、自国で策定された食事バランスガイドで健康管理を行うことができる。
G.食事バランスガイドのイラストは、簡単な操作で、他の国または地域で策定された食事バランスガイドのイラストに置換することができる。したがってユーザは、健康管理システム100が構築された国または地域以外で策定された食事バランスガイドでも健康管理を行うことができる。
H.他の国または地域の食事バランスガイドを使用可能とするためには、食事バランスガイド領域W52に食事バランスデータを追加すればよい。したがって、食事バランスガイドの拡張を容易にはかることができる。
以上のことから、健康管理システム100によれば、ユーザにとって好適な分類の指標で栄養データを提示できる効果を奏する。
この他、本実施形態の構成及び動作から、種々の作用効果を奏することは言うまでもないことである。
なお、前記実施形態では、レシートサーバ30、栄養データサーバ40及び健康管理サーバ50をそれぞれ別個のサーバとして説明したが、これらのサーバのうち少なくとも2つを1つのサーバで実現してもよい。あるいは、レシートサーバ30、栄養データサーバ40及び健康管理サーバ50を1つのサーバだけで実現することも可能である。
また、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。