(57)【要約】  サーバ１０は、設定端末７０から集計条件を示す条件データを取得し（Ｓ４０）、メモリに格納する（Ｓ４２）。そして、サーバ１０は、デバイス６０からデバイスデータを取得する毎に、取得されたデバイスデータをメモリに格納する（Ｓ５０〜Ｓ５６、Ｓ６４、Ｓ６６）。サーバ１０は、メモリに格納されたデバイスデータと、条件データが示す集計条件とに従って部分集計を行い、部分集計データを生成する（Ｓ６０、Ｓ７０）。サーバ１０は、生成された部分集計データをメモリに格納する（Ｓ６２、Ｓ７２）。サーバ１０は、閲覧端末から閲覧要求が取得される場合に、メモリ内の部分集計データを使用して閲覧データを生成し、閲覧端末に供給する。
2017037905.tif 000002
【特許請求の範囲】
【請求項１】
複数個のデバイスのそれぞれからデバイスデータを取得してメモリに格納するサーバであって、
前記複数個のデバイスのそれぞれから前記デバイスデータを取得するデバイスデータ取得部であって、各デバイスデータは、当該デバイスデータの供給元であるデバイスを特定するためのデバイス特定情報を含む、前記デバイスデータ取得部と、
取得された前記デバイスデータを、所定の様式に従って前記メモリに格納するデバイスデータ格納部であって、前記所定の様式は、前記複数個のデバイスの配置場所に関係する拠点情報と、前記複数個のデバイスの稼働期間に関係する期間情報と、を含む、前記デバイスデータ格納部と、
前記複数個のデバイスから取得されて前記メモリに格納された格納済データのうちの一部を予め設定された集計条件に従って集計して部分集計データを生成する部分集計部と、
生成された前記部分集計データを前記メモリに格納する部分集計データ格納部と、
前記端末装置から閲覧要求を取得する要求取得部と、
前記閲覧要求が取得される場合に、前記メモリ内の前記部分集計データを利用して、前記複数個のデバイスにおける稼働状況を示す閲覧データを生成する閲覧データ生成部と、
生成された前記閲覧データを前記端末装置に供給する、閲覧データ供給部と、
を備えるサーバ。
【請求項２】
前記部分集計部は、さらに、特定のタイミング毎に、前記拠点情報に対応する複数個の拠点のそれぞれと、前記期間情報に対応する複数個の期間区分のそれぞれと、それらの組合せについて、対応するデバイスに関係するデータを集計して前記部分集計データを生成する、請求項１に記載のサーバ。
【請求項３】
前記集計条件は、前記拠点情報に対応する複数個の拠点のうち、ユーザによって特定された特定拠点を示す情報を含み、
前記部分集計部は、前記格納済データのうち、前記特定拠点に配置される１以上のデバイスに関係するデータを集計して前記部分集計データを生成する、請求項１又は２に記載のサーバ。
【請求項４】
前記サーバは、さらに、
前記端末装置に、前記集計条件を設定するための設定画面を表示するための設定画面データを供給する、画面データ供給部と、
前記設定画面データによって表される前記設定画面に従って設定された前記集計条件を示す条件データを前記端末装置から取得する、条件データ取得部と、
取得された前記条件データを前記メモリに格納する、条件データ格納部と、
を備え、
前記部分集計部は、前記メモリに格納された前記条件データによって示される前記集計条件に従って、前記部分集計データを生成する、請求項１から３のいずれか一項に記載のサーバ。
【請求項５】
前記集計条件は、集計の必要がない条件を示す除外条件を含み、
前記部分集計部は、前記部分集計データを生成する際に、前記格納済データのうち前記除外条件に対応するデータを除外して前記部分集計データを生成する、請求項１から４のいずれか一項に記載のサーバ。
【請求項６】
前記閲覧要求は、ユーザによって特定された閲覧条件を含み、
前記閲覧データ生成部は、前記閲覧要求が取得される場合に、前記メモリ内の前記部分集計データを利用して、前記閲覧要求に含まれる前記閲覧条件に従った前記閲覧データを生成する、請求項１から５のいずれか一項に記載のサーバ。
【請求項７】
前記要求取得部は、前記ユーザが第１の閲覧条件を特定する場合に、前記端末装置から前記第１の閲覧条件を含む第１の閲覧要求を取得し、
前記閲覧データ生成部は、前記第１の閲覧要求が取得される場合に、前記第１の閲覧条件に従った第１の閲覧データを生成し、
前記要求取得部は、前記ユーザが前記第１の閲覧条件を特定した後に、さらに、前記第１の閲覧条件とは異なる第２の閲覧条件を特定する場合に、前記端末装置から前記第２の閲覧条件を含む第２の閲覧要求を取得し、
前記閲覧データ生成部は、前記第２の閲覧要求が取得される場合に、前記第２の閲覧条件に従った第２の閲覧データを生成する、
請求項６に記載のサーバ。
【請求項８】
複数個のデバイスのそれぞれからデバイスデータを取得してメモリに格納するサーバのためのコンピュータプログラムであって、
前記サーバは、コンピュータを備え、
前記コンピュータプログラムは、前記コンピュータに、以下の各処理、即ち、
前記複数個のデバイスのそれぞれから前記デバイスデータを取得するデバイスデータ取得処理であって、各デバイスデータは、当該デバイスデータの供給元であるデバイスを特定するためのデバイス特定情報を含む、前記デバイスデータ取得処理と、
取得された前記デバイスデータを、所定の様式に従って前記メモリに格納するデバイスデータ格納処理であって、前記所定の様式は、前記複数個のデバイスの配置場所に関係する拠点情報と、前記複数個のデバイスの稼働期間に関係する期間情報と、を含む、前記デバイスデータ格納処理と、
前記複数個のデバイスから取得されて前記メモリに格納された格納済データのうちの一部を予め設定された集計条件に従って集計して部分集計データを生成する部分集計処理と、
生成された前記部分集計データを前記メモリに格納する部分集計データ格納処理と、
前記端末装置から閲覧要求を取得する要求取得処理と、
前記閲覧要求が取得される場合に、前記メモリ内の前記部分集計データを利用して、前記複数個のデバイスにおける稼働状況を示す閲覧データを生成する閲覧データ生成処理と、
生成された前記閲覧データを前記端末装置に供給する、閲覧データ供給処理と、
を実行させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書によって開示される技術は、デバイスからデータを取得し、取得されたデータに基づいて閲覧データを生成して供給するサーバに関する。
【背景技術】
【０００２】
例えば、日経エレクトロニクス１−６−２０１４「Ｍ２Ｍ再発見」（以下、非特許文献１という）には、Ｍ２Ｍ（Machine To Machineの略）通信を利用したシステムの例として、建設機械の稼働状況を監視するシステム、エレベータの稼働状況を監視するシステム、自動販売機等の販売実績情報を収集するシステム等が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
非特許文献１の各システムでは、デバイス（建設機械、エレベータ、自動販売機、等）が、稼働状況を示す情報をサーバに供給する。サーバは、各デバイスから集めたデータを用いてデータベースを作成する。サーバは、各デバイスを管理する管理装置の要求に応じて、データベース内のデータを用いて閲覧用の閲覧データを生成し、生成された閲覧データを管理装置に供給する。これにより、管理装置のユーザ（例えば、システムの管理者）は、各デバイスの稼働状況等を把握することができる。【０００４】
このようなシステムでは、管理対象のデバイス数が多くなると、閲覧データを生成する際のサーバの負担が大きくなり、閲覧データの生成に長時間を要する場合がある。【０００５】
本明細書では、閲覧データを短時間で生成することができるとともに、サーバの負担を軽減し得る技術を提供する。【０００６】
本明細書によって開示される一つの技術は、複数個のデバイスのそれぞれからデバイスデータを取得してメモリに格納するサーバに関する。サーバは、デバイスデータ取得部と、デバイスデータ格納部と、部分集計部と、部分集計データ格納部と、要求取得部と、閲覧データ生成部と、閲覧データ供給部と、を備える。デバイスデータ取得部は、複数個のデバイスのそれぞれからデバイスデータを取得する。各デバイスデータは、当該デバイスデータの供給元であるデバイスを特定するためのデバイス特定情報を含む。デバイスデータ格納部は、取得されたデバイスデータを、所定の様式に従ってメモリに格納する。所定の様式は、複数個のデバイスの配置場所に関係する拠点情報と、複数個のデバイスの稼働期間に関係する期間情報と、を含む。部分集計部は、複数個のデバイスから取得されてメモリに格納された格納済データのうちの一部を予め設定された集計条件に従って集計して部分集計データを生成する。部分集計データ格納部は、生成された部分集計データをメモリに格納する。要求取得部は、端末装置から閲覧要求を取得する。閲覧データ生成部は、閲覧要求が取得される場合に、メモリ内の部分集計データを利用して、複数個のデバイスにおける各イベントの発生状況を示す閲覧データを生成する。閲覧データ供給部は、生成された閲覧データを端末装置に供給する。【０００７】
ここで、「端末装置」は、ユーザがフォームデータを生成するための設定端末と、ユーザが閲覧データを閲覧するための閲覧端末と、を含む。また、「デバイス特定情報」は、デバイスを特定するためのデバイス固有の情報に限られず、デバイスを一意に特定し得る他の任意の情報を含む。また、「所定の様式」は、予め設定された様式と、ユーザによって設定された様式と、のどちらも含む。また、「予め設定された集計条件」は、どのようなタイミングで、誰によって設定されるものも含む。例えば、集計条件は、デバイスの状況に応じて自動的に設定されてもよい。「メモリ」、「サーバ」、「端末装置」は、それぞれ、一体の装置として構成されたものであっても、別体に構成されたものであってもよい。「メモリ」、「サーバ」、「端末装置」が別体に構成されるものである場合、少なくとも一つが、通信回線等を通じて通信可能に接続されるものであってもよい。「閲覧データ」は、部分集計データを利用して生成されるデータであれば、どのようなデータを含んでもよく、画像情報に限られない。画像情報は、閲覧データを受信した端末装置によって生成されてもよい。【０００８】
上記の構成によると、サーバは、予め設定された集計条件に従った部分集計データを生成し、端末装置から閲覧要求を取得すると、メモリ内の部分集計データを利用して閲覧データを生成し、生成された閲覧データを端末装置に供給する。即ち、サーバは、予め設定された集計条件に従った部分集計データを生成しておけば、閲覧データの生成の際に、部分集計データを利用して閲覧データを生成すれば済む。そのため、閲覧データを生成する際の負担が少なく済む。そのため、サーバは、端末装置に閲覧データを短時間で供給し得る。従って、上記のサーバによると、閲覧データを短時間で生成することができるとともに、サーバの負担を軽減し得る。【０００９】
なお、上記のサーバを実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。また、上記のサーバと、複数個のデバイスと、端末装置と、を含む通信システムも、新規で有用である。
【図面の簡単な説明】
【００１０】
【図１】通信システムの構成を示す。
【図２】通信システムの動作概要のシーケンスチャート（１）を示す。
【図３】通信システムの動作概要のシーケンスチャート（２）を示す。
【図４】デバイスデータの生成手法の例を示す。
【図５】デバイスデータの例を示す。
【図６】テンプレートデータ表示画面の例を示す。
【図７】設定画面の例を示す。
【図８】入力済テンプレートデータの例を示す。
【図９】入力済テンプレートデータの例の続きを示す。
【図１０】厨房機器種類の対応表を示す。
【図１１】厨房機器の対応表を示す。
【図１２】企業マスタの対応表を示す。
【図１３】店舗グループマスタの対応表を示す。
【図１４】店舗マスタの対応表を示す。
【図１５】店の対応表を示す。
【図１６】設置機器の対応表を示す。
【図１７】各機器収集データの対応表を示す。
【図１８】集計条件設定画面の例を示す。
【図１９】条件データの例を示す。
【図２０】データ閲覧画面の例を示す。
【００１１】
以下に説明する実施例の主要な特徴を列記しておく。なお、以下に記載する技術要素は、それぞれ独立した技術要素であって、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。【００１２】
（特徴１）部分集計部は、さらに、特定のタイミング毎に、拠点情報に対応する複数個の拠点のそれぞれと、期間情報に対応する複数個の期間区分のそれぞれと、それらの組合せについて、対応するデバイスに関係するデータを集計して部分集計データを生成してもよい。【００１３】
上記の構成によると、サーバは、特定のタイミング毎に、複数個の拠点のそれぞれと、複数個の期間区分のそれぞれと、それらの組合せについて、部分集計データを生成する。そのため、サーバは、例えば集計条件が変更された場合等、新たな集計条件が設定された場合であっても、短時間で、当該新たな集計条件に従った部分集計データを生成することができる。【００１４】
（特徴２）集計条件は、拠点情報に対応する複数個の拠点のうち、ユーザによって特定された特定拠点を示す情報を含んでもよい。部分集計部は、格納済データのうち、特定拠点に配置される１以上のデバイスに関係するデータを集計して部分集計データを生成してもよい。【００１５】
上記の構成によると、サーバは、特定拠点に配置される１以上のデバイスに関係するデータを集計した部分集計データを生成する。サーバは、特定拠点に関係する閲覧データを短時間で生成することができる。【００１６】
（特徴３）サーバは、さらに、端末装置に、集計条件を設定するための設定画面を表示するための設定画面データを供給する画面データ供給部と、設定画面データによって表される設定画面に従って設定された集計条件を示す条件データを端末装置から取得する条件データ取得部と、取得された条件データをメモリに格納する条件データ格納部と、を備えていてもよい。部分集計部は、メモリに格納された条件データによって示される集計条件に従って、部分集計データを生成してもよい。【００１７】
上記の構成によると、ユーザは、設定画面に従って集計条件を設定することができる。そのため、ユーザは比較的容易に集計条件を設定し得る。【００１８】
（特徴４）集計条件は、集計の必要がない条件を示す除外条件を含んでもよい。部分集計部は、部分集計データを生成する際に、格納済データのうち除外条件に対応するデータを除外して部分集計データを生成してもよい。【００１９】
上記の構成によると、サーバは、集計の必要がない除外条件に対応するデータを除外して部分集計データを生成する。そのため、サーバが無駄なデータの集計をする必要がない。サーバの負荷をさらに軽減することができる。【００２０】
（特徴５）閲覧要求は、ユーザによって特定された閲覧条件を含んでもよい。閲覧データ生成部は、閲覧要求が取得される場合に、メモリ内の部分集計データを利用して、閲覧要求に含まれる閲覧条件に従った閲覧データを生成してもよい。【００２１】
上記の構成によると、サーバは、メモリ内の部分集計データを利用して、閲覧要求に含まれる閲覧条件に従った閲覧データを生成する。即ち、サーバは、短時間で、ユーザが所望する閲覧条件に従った閲覧データを端末装置に供給し得る。【００２２】
（特徴６）要求取得部は、ユーザが第１の閲覧条件を特定する場合に、端末装置から第１の閲覧条件を含む第１の閲覧要求を取得してもよい。閲覧データ生成部は、第１の閲覧要求が取得される場合に、第１の閲覧条件に従った第１の閲覧データを生成してもよい。要求取得部は、ユーザが第１の閲覧条件を特定した後に、さらに、第１の閲覧条件とは異なる第２の閲覧条件を特定する場合に、端末装置から第２の閲覧条件を含む第２の閲覧要求を取得してもよい。閲覧データ生成部は、第２の閲覧要求が取得される場合に、第２の閲覧条件に従った第２の閲覧データを生成してもよい。【００２３】
上記の構成によると、サーバは、ユーザが特定する閲覧条件が変更される場合であっても、変更された新たな閲覧条件に応じた新たな閲覧データを生成して端末装置に供給し得る。【００２４】
（実施例）
（通信システム２の構成；図１）
図１に示すように、通信システム２は、サーバ１０と、複数個のデバイス６０と、設定端末７０と、閲覧端末８０と、を備える。複数個のデバイス６０、設定端末７０、閲覧端末８０は、それぞれ、サーバ１０と通信可能に備えられている。図１の例では、複数個のデバイス６０は、例えば、電子レンジ６０ａと、オーブン６０ｂと、食器洗浄機６０ｃと、を含む。本実施例では、複数個のデバイス６０は、例えば、特定のユーザに属する。特定のユーザは、複数個のデバイス６０のベンダである厨房機器メーカーである。【００２５】
また、図示しないが、通信システム２は、特定のユーザとは異なるユーザ（以下では「他のユーザ」と呼ぶ）に属する複数個のデバイスと、設定端末と、閲覧端末と、をさらに備えている。これらの他のユーザに属するデバイス、設定端末、及び、閲覧端末も、サーバ１０と通信可能に備えられている。即ち、本実施例の通信システム２は、特定のユーザが、サーバ１０を利用して複数個のデバイス６０を管理するための第１のシステムを含むと共に、他のユーザが、サーバ１０を利用して他のユーザに属する複数個のデバイスを管理するための第２のシステムを含む、と言うことができる。この場合、第１のシステムは、複数個のデバイス６０と、サーバ１０と、設定端末７０と、閲覧端末８０とを含む。第２のシステムは、他のユーザに属する複数個のデバイス（図示しない）と、サーバ１０と、他のユーザに属する設定端末及び閲覧端末（図示しない）を含む。【００２６】
（複数個のデバイス６０）
上記の通り、複数個のデバイス６０は、電子レンジ６０ａと、オーブン６０ｂと、食器洗浄機６０ｃと、を含む。複数個のデバイス６０は、これら以外の図示しないデバイスも含んでいる。以下では、複数個のデバイス６０に含まれる各デバイス（例えば電子レンジ６０ａ等）のことを単に「デバイス６０」と呼ぶ場合がある。複数個のデバイス６０のそれぞれは、デバイスを特定するための機器固有番号を記憶している。また、複数個のデバイス６０のそれぞれは、サーバ１０に、デバイスデータを供給することができる。ここで、「デバイスデータ」は、当該デバイスデータの供給元であるデバイス（以下、特定デバイスと呼ぶ）を特定するためのデバイス特定情報（即ち、機器固有番号）と、特定デバイスで発生するイベントの種類を示す種類情報と、特定デバイスで発生するイベントの発生時間を示す時間情報とを含むデータである。【００２７】
（サーバ１０）
サーバ１０は、通信インターフェース（以下では「通信Ｉ／Ｆ」と呼ぶ）１２と、制御部１４とを有している。通信Ｉ／Ｆ１２は、外部の装置（例えば、複数個のデバイス６０、設定端末７０、閲覧端末８０）と通信を行うためのインターフェースである。制御部１４は、ＣＰＵ２０と、メモリ２２と、を有する。ＣＰＵ２０は、メモリ２２に格納されているプログラム２４に従って、様々な処理を実行する。メモリ２２は、ＲＯＭ、ＲＡＭ、ハードディスク等によって構成される。【００２８】
メモリ２２は、上記のプログラム２４と、テンプレートデータ２６と、ユーザデータ２８とを格納する。【００２９】
テンプレートデータ２６は、サーバ１０を利用するユーザ（例えば、特定のユーザ）のデバイス（例えば、デバイス６０）からサーバ１０が取得するデバイスデータを、サーバ１０のメモリ２２に格納する様式を設定するためのデータである。テンプレートデータは、デバイスで発生する各イベントに関するメタデータを入力するためのデータである、と言い換えてもよい。サーバ１０を利用するユーザは、サーバ１０にアクセスし、テンプレートデータ２６に従って情報を入力することにより、上記デバイスデータをサーバ１０のメモリ２２に格納する際の様式を設定することができる（即ち、フォームデータをメモリ２２に格納させることができる）。テンプレートデータ２６の詳しい内容、及び、フォームデータの詳しい内容については後で詳しく説明する。【００３０】
ユーザデータ２８は、特定のユーザが複数個のデバイス６０を管理することに関係する様々なデータを含む。なお、図示していないが、メモリ２２には、他のユーザが他のユーザに属するデバイスを管理することに関する他のユーザデータも格納されている。ただし、以下では、特定のユーザに関係するユーザデータ２８についてのみ説明する。【００３１】
ユーザデータ２８は、フォームデータ３２と、デバイスデータ３８と、部分集計データ３９と、条件データ４０とを含む。フォームデータ３２は、入力済テンプレートデータ３４とマスタデータ３６とを含む。【００３２】
フォームデータ３２（即ち、入力済テンプレートデータ３４及びマスタデータ３６）は、設定端末７０から取得されるデータである。即ち、特定のユーザは、設定端末７０を用いてサーバ１０にアクセスし、上述のテンプレートデータ２６に従って情報を入力することにより、入力済テンプレートデータ３４及びマスタデータ３６を生成することができる。入力済テンプレートデータ３４は、複数個のデバイス６０の配置場所に関係する拠点構造を示す情報（即ち、拠点情報）を含む。マスタデータ３６は、拠点情報が示す複数個の拠点のそれぞれに配置されるデバイスに関係する情報を含む。入力済テンプレートデータ３４の例（図８、図９参照）、及び、マスタデータ３６の例（図１０〜図１７参照）については、後で詳しく説明する。上記のフォームデータ３２は、複数個のデバイス６０から取得されるデバイスデータをメモリ２２に格納する際の様式を示している。また、フォームデータ３２によって示される様式は、複数個のデバイス６０から取得されるデバイスデータを閲覧する際の階層構造も示している。サーバ１０のＣＰＵ２０は、設定端末７０から上記のフォームデータ３２を取得すると、取得されたフォームデータ３２をメモリ２２内に格納する。【００３３】
デバイスデータ３８は、複数個のデバイス６０から通信Ｉ／Ｆ１２を介して取得された各デバイスデータを、フォームデータ３２によって示される様式に従ってメモリ２２に格納させた結果として形成されるデータである。図１のデバイスデータ３８には、多数のデバイスデータが含まれ得る。図１のデバイスデータ３８は、複数個のデバイス６０から取得された各デバイスデータの集合体と言い換えることもできる。【００３４】
部分集計データ３９は、メモリ２２内のデバイスデータ３８の一部を、後述の条件データ４０に従って部分集計した結果として形成されるデータである。部分集計データ３９には、多数の部分集計データが含まれ得る。図１の部分集合データ３９は、ＣＰＵ２０によって生成された複数個の部分集計データの集合体と言い換えることもできる。【００３５】
条件データ４０は、設定端末７０から取得されるデータである。特定のユーザは、設定端末７０を用いてサーバ１０にアクセスし、設定端末７０に表示される設定画面（図１８参照）に従って所望の集計条件を特定することにより、ユーザによって特定された集計条件を示す条件データ４０を生成することができる。ここで、集計条件とは、デバイスデータ３８の一部を部分集計する際の条件のことである。条件データ４０には、複数個の条件データが含まれ得る。図１の条件データ４０は、設定端末７０から取得される複数個の条件データの集合体と言い換えることもできる。【００３６】
（設定端末７０、閲覧端末８０）
設定端末７０は、例えば、特定のユーザのＰＣ等の端末装置である。閲覧端末８０は、例えば、特定のユーザのタブレット端末等の端末装置である。設定端末７０、閲覧端末８０は、いずれも、図示しない操作部、表示部、制御部を有している。設定端末７０、閲覧端末８０は、それぞれ、図示しないネットワークを介して、サーバ１０と通信可能に備えられている。本実施例では、設定端末７０と閲覧端末８０が別個の端末として構成されている。これに限られず、変形例では、設定端末７０と閲覧端末８０とが１個の端末として構成されていてもよい。【００３７】
（通信システム２の動作の概要；図２、図３）
続いて、図２、図３を参照して、通信システム２における各構成要素の動作の概要を説明する。【００３８】
図２は、サーバ１０が、設定端末７０からフォームデータと条件データを取得し、その後、デバイス６０からデバイスデータを取得する場合における各構成要素の動作の概要を示す。【００３９】
設定端末７０は、特定のユーザの指示に従ってサーバ１０にアクセスし、サーバ１０にテンプレート要求を供給する（Ｓ１０）。【００４０】
サーバ１０のＣＰＵ２０は、設定端末７０からテンプレート要求を取得すると、メモリ２２内のテンプレートデータ２６を設定端末７０に供給する（Ｓ１２）。【００４１】
設定端末７０は、サーバ１０からテンプレートデータを取得すると、テンプレートデータ表示画面を表示部に表示させる（Ｓ１４）。テンプレートデータ表示画面の内容については後で詳しく説明する（図６参照）。特定のユーザは、設定端末７０の操作部を操作して、テンプレートデータに従って情報を入力する（Ｓ１６）。この結果、入力済テンプレートデータ（図８、図９参照）、及び、マスタデータ（図１０〜図１７参照）が生成される。設定端末７０は、生成された入力済テンプレートデータ及びマスタデータ（即ち、フォームデータ）を、サーバ１０に供給する（Ｓ１８）。【００４２】
サーバ１０のＣＰＵ２０は、設定端末７０からフォームデータを取得すると、取得されたフォームデータをメモリ２２に格納する（Ｓ２０）（図１の符号３２参照）。【００４３】
その後、設定端末７０は、特定のユーザの指示に従ってサーバ１０にアクセスし、集計条件設定画面（図１８参照）を表示するための設定画面要求をサーバ１０に供給する（Ｓ３０）。【００４４】
サーバ１０のＣＰＵ２０は、設定端末７０から設定画面要求を取得すると、メモリ２２内の入力済テンプレートデータ３４を利用して設定画面データを生成する（Ｓ３２）。即ち、Ｓ３２で生成される設定画面データの内容は、入力済テンプレートデータ３４の内容によって変化する。ＣＰＵ２０は、生成された設定画面データを設定端末７０に供給する（Ｓ３４）。【００４５】
設定端末７０は、サーバ１０から設定画面データを取得すると、集計条件設定画面（図１８参照）を表示部に表示させる（Ｓ３６）。集計条件設定画面の内容については後で詳しく説明する。特定のユーザは、集計条件設定画面に従って集計条件を設定する（Ｓ３８）。この結果、特定のユーザによって設定された集計条件を含む条件データが生成される。設定端末７０は、生成された条件データをサーバ１０に供給する（Ｓ４０）。【００４６】
サーバ１０のＣＰＵ２０は、設定端末７０から条件データを取得すると、取得された条件データをメモリ２２に格納する（Ｓ４２）。これにより、メモリ２２内に図１の条件データ４０が構築される。【００４７】
その後、デバイス６０は、当該デバイス６０でイベント（例えば、電源ＯＮ、加熱開始、異常動作、等）が発生する毎に、デバイスデータをサーバ１０に供給する（Ｓ５０、Ｓ５４）。上記の通り、デバイスデータは、デバイス６０を特定するための機器固有番号と、発生したイベントの種類を示す種類情報と、発生したイベントの発生時間を示す時間情報とを含む。デバイス６０がデバイスデータを生成する手法、及び、デバイスデータの内容は、図４、図５を参照して後で詳しく説明する。【００４８】
サーバ１０のＣＰＵ２０は、デバイス６０からデバイスデータを取得する毎に、取得されたデバイスデータをメモリ２２に格納する（Ｓ５２、Ｓ５６）。ＣＰＵ２０は、取得されたデバイスデータをメモリ２２に格納する際、メモリ２２に格納されているフォームデータ３２が示す様式に従って格納する。これにより、メモリ２２内に図１のデバイスデータ３８が構築される。【００４９】
さらに、サーバ１０のＣＰＵ２０は、１時間毎に、メモリ２２内の条件データ４０が示す集計条件に従って、デバイスデータ３８内のデバイスデータを集計する（Ｓ６０）。これにより、集計条件に従った部分集計データが生成される。なお以下では、Ｓ６０で行われるデバイスデータの集計（即ち、集計条件に従って１時間毎に行われるデバイスデータの集計）のことを部分集計と呼ぶ場合がある。また、Ｓ６０では、メモリ２２内に複数個の条件データ４０が格納されている場合、ＣＰＵ２０は、各条件データが示す集計条件に従って部分集計を行う。この場合、複数個の部分集計データが生成される。ＣＰＵ２０は、生成された部分集計データをメモリ２２に格納する（Ｓ６２）。これにより、メモリ２２内に図１の部分集計データ３９が構築される。【００５０】
その後、再び１時間が経過するまでの間にも、デバイス６０は、当該デバイス６０でイベントが発生する毎にデバイスデータをサーバ１０に供給する（Ｓ６４）。【００５１】
サーバ１０のＣＰＵ２０は、デバイス６０からデバイスデータを取得する毎に、取得されたデバイスデータをメモリ２２に格納する（Ｓ６６）。【００５２】
その後、前回の部分集計（Ｓ６０）から１時間が経過すると、サーバ１０のＣＰＵ２０は、再びＳ６０と同様の部分集計を行う（Ｓ７０）。これにより、メモリ２２内の条件データ４０が示す集計条件に従った部分集計データが生成される（更新されていく）。ＣＰＵ２０は、生成された部分集計データをメモリ２２に格納する（Ｓ６２）。【００５３】
さらに、サーバ１０のＣＰＵ２０は、１日毎（２４時間毎）に、入力済テンプレートデータ３４に含まれる全ての期間区分、全ての拠点、及びそれらの組合せについて、デバイスデータ３８に含まれる各デバイスデータを集計する（Ｓ８０）。即ち、Ｓ８０では、ＣＰＵ２０は、入力済テンプレートデータ３４に含まれる期間区分、拠点、及び、それらの組合せの全てのパターンについて、部分集計を行う。期間区分、拠点、及び、それらの組合せのことを、「階層」と呼び換えてもよい。以下では、Ｓ８０で行われる集計（即ち、入力済テンプレートデータ３４に含まれる期間区分、拠点、及び、それらの組合せの全てのパターンについての部分集計）のことを、全集計と呼ぶ。Ｓ８０で全集計が行われることにより、入力済テンプレートデータ３４に含まれる期間区分、拠点、及び、それらの組合せの全てのパターン（即ち全階層）に対応する部分集計データが生成される。ＣＰＵ２０は、生成された部分集計データをメモリ２２に格納する（Ｓ８２）。【００５４】
上記の通り、本実施例では、メモリ２２内の条件データ４０が示す集計条件に従った部分集計データは、１時間毎に作成される。一方、全階層に対応する部分集計データは、１日毎に作成される。【００５５】
続いて、図３を参照して、サーバ１０が、閲覧端末８０から閲覧要求を取得し、閲覧データを閲覧端末８０に供給する場合における各構成要素の動作の概要を示す。以下の例では、図２の各処理の終了後に、図３の各処理が行われる場合の例を説明する。【００５６】
閲覧端末８０は、特定のユーザの指示に従って、サーバ１０にアクセスし、サーバ１０に閲覧要求を送信する（Ｓ１００）。閲覧要求は、閲覧端末８０がデータの閲覧を要求する閲覧条件（例えば、デバイス６０の稼働期間の期間区分（即ち年、月、週等）、デバイス６０の拠点（即ち設置地区、店舗等）、それらの組合せ）を示す情報を含む。【００５７】
サーバ１０のＣＰＵ２０は、閲覧端末８０から閲覧要求を取得すると、メモリ２２内のデバイスデータ３８（図１参照）に含まれている各デバイスデータと、フォームデータ３２と、取得された閲覧要求に含まれる閲覧条件と、に基づいて、デバイス６０における各イベントの発生状況を示す閲覧データを生成する（Ｓ１０２）。この際、ＣＰＵ２０は、閲覧条件が示す階層に対応するイベントの発生状況（例えば、設置地区ごとのイベントの発生状況）を示す閲覧データを生成する。また、ＣＰＵ２０は、閲覧データを生成する際、予め生成されている部分集計データ（即ち部分集計データ３９）を利用する。ＣＰＵ２０は、既に生成されている部分集計データを利用して閲覧データを生成するため、閲覧要求が取得された後に、データの集計を行った上で閲覧データを生成する必要がない。そのため、ＣＰＵ２０が閲覧データを生成する際の負担は小さく済む。さらに、ＣＰＵ２０は、閲覧端末８０から閲覧要求を取得した後、短時間で閲覧データを生成して閲覧端末８０に供給することができる。特定のユーザを長時間待たせることもない。【００５８】
閲覧データにどのような情報が含まれるかは、デバイスデータ３８に含まれるデバイスデータの内容と、フォームデータ３２の内容と、閲覧要求の内容と、によって変わる。例えば、ＣＰＵ２０によって生成される閲覧データが、デバイス６０において、第１のイベント（例えば、加熱開始運転）が発生してから第１のイベントが再び発生するまでの間に発生した第２のイベント（例えば、温度センサの値が１００℃以上）の数を含んでいてもよい。【００５９】
ＣＰＵ２０は、閲覧データを生成すると、生成された閲覧データを閲覧端末８０に供給する（Ｓ１０４）。【００６０】
閲覧端末８０は、サーバ１０から閲覧データを取得すると、取得された閲覧データに従って、データ閲覧画面（図２０参照）を表示部に表示させる（Ｓ１０６）。特定のユーザは、データ閲覧画面において、閲覧条件（例えば、データを閲覧する拠点）を変更して、新たな閲覧要求操作を行うことができる。その場合、閲覧端末８０は、新たな閲覧条件を含む閲覧要求をサーバ１０に供給する（Ｓ１１０）。【００６１】
サーバ１０のＣＰＵ２０は、閲覧端末８０から新たな閲覧要求を取得すると、デバイスデータ３８に含まれているデバイスデータと、フォームデータ３２と、取得された閲覧要求に含まれる新たな閲覧条件と、に基づいて、新たな閲覧データを生成する（Ｓ１１２）。ＣＰＵ２０は、生成された閲覧データを閲覧端末８０に供給する（Ｓ１１４）。【００６２】
閲覧端末８０は、サーバ１０から閲覧データを取得すると、取得された閲覧データに従って、データ閲覧画面を表示部に表示させる（Ｓ１１６）。このように、閲覧端末８０は、閲覧要求に対応する閲覧データをサーバ１０から取得し、表示部に表示させることができる（Ｓ１０６、Ｓ１１６）。特定のユーザは、閲覧データに基づいて表示されるデータ閲覧画面を見ることにより、デバイス６０における各イベントの発生状況を知ることができる。また、閲覧条件（即ち、階層）を変えて閲覧要求をサーバ１０に供給することにより、様々な条件における各イベントの発生状況を知ることができる。その結果、特定のユーザは、デバイス６０を適切に管理することができる。【００６３】
（デバイスデータの生成手法；図４、図５）
図４を参照して、デバイス６０がデバイスデータを生成する手法について説明する。図４では、デバイス６０において、種類Ａと種類Ｂの２種類のイベントが発生する例を示している。図４に示すように、デバイス６０は、特定のイベント（図４のＡ１）が発生した場合に、その特定のイベントの種類（Ａ）と、その特定のイベントの発生時（ｔ１）と、を特定する。デバイス６０は、自機の機器固有番号（１００１）と、特定のイベントの種類を示す種類情報と、特定のイベントの発生時を示す時間情報とを対応付ける。この結果、図５に示すように、機器固有番号と、種類情報と、時間情報とが対応付けられたデバイスデータが生成される。【００６４】
デバイス６０は、特定のイベント以降の各イベントが発生した場合についても、上記と同様の要領でデバイスデータを生成する。デバイス６０は、デバイスデータをサーバ１０に随時供給する。そのため、例えば、毎秒のイベント発生状況を示す情報をサーバ１０に供給する場合よりも、デバイス６０の通信負荷を小さくすることができる。【００６５】
（テンプレートデータ表示画面；図６）
図６を参照して、サーバ１０が供給するテンプレートデータに従って、設定端末７０で表示されるテンプレートデータ表示画面（図２のＳ１４参照）について説明する。【００６６】
図６は、初期状態のテンプレートデータ表示画面を示す。初期状態のテンプレートデータ表示画面は、日付１０２、曜日１０４、月１０６、年１０８、カレンダー１１０の各アイテムを含むツリー構造を有している。各アイテムの隣に表示されている「＋」マークを選択すると、各アイテム内のデータが展開される。図示していないが、例えば、日付１０２の隣の「＋」を選択すると、日付番号、日付名の各アイテムが表示される。日付１０２、曜日１０４、月１０６、年１０８、カレンダー１１０の各アイテムは、所定の日付、所定の曜日、所定の月、所定の年、所定のカレンダー内の日のそれぞれにおける、複数個のデバイス６０におけるイベントの発生状況を閲覧するためのアイテムである。【００６７】
（設定画面；図７）
図６のテンプレートデータ表示画面において、所定のアイテム追加操作が行われる場合、又は、表示されているアイテムのいずれかを選択する操作が行われる場合、図６に示すツリー構造の隣に、図７に示す設定画面が表示される。設定画面も、テンプレートデータに従って表示される画面である。図７の設定画面は、項目と、値と、型とが関連づけられたテーブルを含む。【００６８】
項目の欄には、「Name」「DispName」「ValueType」「ValueRule」「TargetType」「SignalNumber」の各項目が予め入力されている。値の欄には、各項目に対応する情報（文字や数字）を入力可能である。型の欄には、値の欄に入力された情報の属性が文字で表示される。特定のユーザ（及び他のユーザ。以下同じ）は、値の欄に、各項目に対応する情報を入力することができる。【００６９】
「Name」は、テンプレートデータ表示画面に表示されるアイテムのデータ上の名称である。「Name」が示す名称は、他の名称と重複しないユニークな名称である。特定のユーザは、「Name」に対応する値の欄に、「Company」のように、所望の名称を入力することができる。値の欄の入力に伴い、型の欄には、文字情報であることを示す情報が入力される。【００７０】
「DispName」は、アイテムを表示する際の名称（表示名）である。特定のユーザは、「DispName」に対応する値の欄に、「企業」のように、所望の表示名を入力することができる。値の欄の入力に伴い、型の欄には、文字情報であることを示す情報が入力される。【００７１】
「ValueType」は、アイテムに対応するイベントのタイプ（信号、数値、文字情報、等）を示す。例えば、デバイス６０では、種々のタイプのイベントが発生する。デバイス６０は、イベントが発生する毎に、所定の情報を出力する。例えば、デバイス６０における電源のオン・オフや、加熱運転開始、異常運転、のようなイベントが発生する場合、デバイス６０はパルス信号を出力する。パルス信号は、単発タイプのものと、ハイ／ローを切り替えるタイプのものと、を含む。また、デバイス６０では、センサの検出値（例えば温度等）、型番、ＩＤ、等の所定の数値や文字情報を出力するイベントが発生する場合もある。特定のユーザは、「ValueType」に対応する値の欄に、「０」「１」「２」等の各値を入力することができる。ここでは、「０」「１」「２」等の各値は、「信号」「数値」の各タイプに対応する。値の欄の入力に伴い、型の欄には、例えば、整数情報であることを示す情報が表示される。【００７２】
「ValueRule」は、「ValueType」で入力されたタイプに対応する情報に関するルールを示す。具体的に言うと、デバイスから出力される情報の加算可否を示す。例えば、デバイス６０から出力される情報が、パルス信号や、金額を示す数値情報である場合等は、パルス信号の数や、数値が示す値を加算できる。また、デバイス６０から出力される情報が、数値であっても、型番を示す数値等のユニークな値である場合等は、値を加算できない。ユーザは、「ValueRule」に対応する値の欄に、「０」「１」「２」等の各値を入力することができる。値の欄に入力される各値は、それぞれ「加算不可」、「加算可」、「ユニーク値」等に対応する。値の欄の入力に伴い、型の欄には、例えば、整数であることを示す情報が表示される。【００７３】
「TargetType」は、ツリー構造で示す実際のデータベース構造の関係を示す。例えば、第１のアイテムに対応する拠点階層の下にさらに第２のアイテムに対応する拠点概念が存在する等の関係を示す。ユーザは、「TargetType」に対応する値の欄に、「０」「１」「２」等の各値を入力することができる。値の欄に入力される各値は、それぞれ「（アイテムに対応する）下の階層に拠点が存在しない」、「下の階層にさらに拠点が存在する」、「下の階層にデータベーステーブルの項目が存在する」等に対応する。型の欄には、整数であることを示す情報が表示される。【００７４】
「SignalNumber」は、デバイスから取得されるデバイスデータを定義する信号種類番号を示す。「SignalNumber」が定義されることで、信号種類番号によって定義されるデバイスデータがデータベース項目の値とされる。例えば、デバイス毎に「センサＡ信号」は「５」、「センサＢ信号」は「６」のように、ユニークな信号種類番号が割り当てられる。サーバ１０は、この値が定義されたアイテムに対応するデータベース項目について、デバイスからデバイスデータが取得された際に、その信号種類番号が示すイベントの回数を累計し、変化する度に更新する。【００７５】
図７の設定画面において、特定のユーザが必要な情報を入力することにより、テンプレートデータ表示画面にアイテムが表示される。アイテムの表示名は、「DispName」に入力された名称である。また、アイテムは、「TargetType」に入力された値に対応する位置に表示される。【００７６】
このように、特定のユーザは、設定画面を表示させて、必要な情報を入力することにより、テンプレートデータ表示画面にアイテムを追加することができる。この結果、ユーザの所望のツリー構造を形成することができる。【００７７】
また、上記の通り、特定のユーザは、既に設定済みのアイテムを選択することによっても、設定画面を表示させることができる。その場合、表示された設定画面において、特定のユーザは、アイテムの設定内容を変更することができる。【００７８】
従って、特定のユーザは、図６のテンプレートデータ表示画面と、図７の設定画面と、において必要な情報を入力することによって、テンプレートデータに基づいて、入力済テンプレートデータ及びマスタデータ（即ち、フォームデータ）を作成することができる。【００７９】
なお、図７に示す設定画面はあくまで一例である。変形例では、設定画面には、他の項目等が含まれていてもよい。【００８０】
（フォームデータの例；図８〜図１７）
続いて、図８〜図１７を参照して、設定端末７０の使用者である特定のユーザが、テンプレートデータに従って情報を入力することによって生成したフォームデータの例について説明する。図８〜図１７によって示されるフォームデータのうち、図８、図９は入力済テンプレートデータ（即ち、特定のユーザによって生成されたツリー構造（即ち拠点階層構造））に相当し、図１０〜図１７はマスタデータに相当する。【００８１】
図８、図９は、入力済テンプレートデータに従って設定端末７０の表示部に表示される画面を示している。図８に示すように、入力済テンプレートデータは、初期状態のテンプレートデータ表示画面（図６）と同様に、日付１０２、曜日１０４、月１０６、年１０８、カレンダー１１０の各アイテムを含む。さらに、図８、図９に示すように、入力済テンプレートデータは、厨房機器種類１２０、厨房機器１４０、期間１６０、の各アイテムを含む。期間１６０は、下の階層として、企業マスタ１７０、店舗グループマスタ１８０、店舗マスタ２００、店２２０、の各アイテムを含む。店２２０は、さらに下の階層として、設置機器２４０、各機器収集データ２６０、の各アイテムを含む。【００８２】
図８の日付１０２、曜日１０４、月１０６、年１０８、カレンダー１１０の各アイテムについては、初期状態のテンプレートデータ表示画面（図６）と同様であるため、詳しい説明を省略する。【００８３】
図８の厨房機器種類１２０は、下の階層として、機器種類番号と機器種類名の各アイテムを含む。厨房機器種類１２０では、図１０に示すように、機器種類番号と、機器種類名とが対応付けられている。図１０では、例えば、機器種類番号「１」が機器種類名「オーブン」を示す。【００８４】
また、図８の厨房機器１４０は、機器固有番号と、機器種類番号と、機器名と、メーカーの各アイテムを含む。厨房機器１４０では、図１１に示すように、機器固有番号と、機器種類番号と、機器名と、メーカーとが対応付けられている。図１１では、例えば、機器固有番号「１００１」、機器種類番号「１」、名称「窯焼きオーブン」、メーカー「Ｔ電子」が対応付けられている。【００８５】
また、上記の通り、図９の期間１６０は、下の階層として、企業マスタ１７０、店舗グループマスタ１８０、店舗マスタ２００、店２２０、の各アイテムを含む。企業マスタ１７０は、企業番号と企業名の各アイテムを含む。企業マスタ１７０では、図１２に示すように、企業番号と企業名とが対応付けられている。図１２では、例えば、企業番号「１」が企業名「Ｓカフェ」を示す。【００８６】
また、図９の店舗グループマスタ１８０は、企業番号と、店舗グループ番号と、店舗グループ名の各アイテムを含む。店舗グループマスタ１８０では、図１３に示すように、企業番号と、店舗グループ番号と、店舗グループ名とが対応付けられている。図１３では、例えば、企業番号「１」の企業において、店舗グループ番号「１２」が店舗グループ名「関東」に対応する。店舗グループ番号と店舗グループ名の対応関係は、企業間で共通していてもよい。即ち、図１３に示すように、企業番号「２」の企業においても、店舗グループ番号「１２」が店舗グループ名「関東」に対応する。【００８７】
また、図９の店舗マスタ２００は、店舗番号と店舗名の各アイテムを含む。店舗マスタ２００では、図１４に示すように、店舗番号と店舗名が対応付けられている。図１４では、例えば、店舗番号「１７０」が、店舗名「Ｓカフェ  丸の内店」を示す。【００８８】
また、図９の店２２０は、店舗番号と店舗グループ番号の各アイテムを含む。店２２０では、図１５に示すように、店舗番号と、店舗グループ番号とが対応付けられている。図１５では、例えば、店舗グループ番号「１２」と、店舗番号「１７０」とが対応付けられている。【００８９】
また、上記の通り、図９の店２２０は、下の階層として、設置機器２４０、各機器収集データ２６０の各アイテムを含む。設置機器２４０は、機器固有番号と、使用開始日と、修理日付と、使用終了日の各アイテムを含む。設置機器２４０では、図１６に示すように、機器固有番号と、使用開始日と、修理日付と、使用終了日とが対応付けられている。【００９０】
また、図９の各機器収集データ２６０は、機器固有番号と、Ａ信号累計値と、Ｂ信号累計値と、Ｃ信号累計値の各アイテムを含む。各機器収集データ２６０では、図１７に示すように、機器固有番号と、Ａ信号累計値と、Ｂ信号累計値と、Ｃ信号累計値とが対応付けられている。Ａ信号累計値、Ｂ信号累計値、Ｃ信号累計値は、それぞれ、複数個のデバイス６０で発生する各イベントの累計値（即ち、イベントの発生回数の合計）を示す。【００９１】
また、図８、図９では、矢印２７０に示すように、設置機器２４０の機器固有番号と、厨房機器１４０の機器固有番号とが関連づけられている。同様に、各機器収集データ２６０の機器固有番号も、厨房機器１４０の機器固有番号と関連づけられている。そのため、例えば、閲覧端末８０において設置機器毎のイベントの発生状況を閲覧している間に、機器固有番号が選択されると、厨房機器毎のイベントの発生状況を閲覧することができる。この場合、設置機器毎のイベントの発生状況を閲覧する画面と、厨房機器毎のイベントの発生状況を閲覧する画面のどちらにも、機器固有番号に関する項目が設けられる。一般に、図８、図９の矢印２７０で示す関連づけを「リレーション」と呼ぶ場合がある。【００９２】
このほかにも、図９の矢印２８０に示すように、店２２０の店舗グループ番号と店舗グループマスタ１８０の店舗グループ番号とが関連づけられている。また、矢印２８５に示すように、店２２０の店舗番号と店舗マスタ２００の店舗番号とが関連づけられている。【００９３】
以上、図８〜図１７を参照して、フォームデータの例について説明した。上記の通り、設定端末７０は、フォームデータを生成すると、生成されたフォームデータをサーバ１０に供給する（図２のＳ１８参照）。サーバ１０のＣＰＵ２０は、フォームデータをメモリ２２に格納する（図２のＳ２０、図１の符号３２参照）。【００９４】
上記の例では、設定端末７０の使用者である特定のユーザが、テンプレートデータに従って情報を入力することによってフォームデータを生成する例について説明した。これに限られず、図示しない他の設定端末の使用者である他のユーザがフォームデータを生成する場合も上記と同様である。ただし、その場合、生成されるフォームデータの内容は、図８〜図１７で説明した特定のユーザのフォームデータの内容とは異なる。【００９５】
（条件設定画面；図１８）
続いて、図１８を参照して、設定画面データ（図２のＳ３４）に従って表示される集計条件設定画面（Ｓ３６）の例を説明する。設定端末７０は、サーバ１０から設定画面データを取得すると、図１８に示す集計条件設定画面を表示部に表示する（図２のＳ３４、Ｓ３６参照）。【００９６】
図１８の集計条件設定画面では、サーバ１０に部分集計（図２のＳ６０、Ｓ７０）を行わせる際の集計条件を設定するための項目群４００、４２０が表示されている。項目群４００には、期間選択欄４０２、拠点選択欄４０４、方式選択欄４０６が含まれている。【００９７】
特定のユーザが期間選択欄４０２を選択すると、例えば、「日付」「曜日」「月」「年」「カレンダー」「設定なし」等の各アイテムを含むプルダウンメニューが表示される。プルダウンメニュー内に表示される各アイテムは、メモリ２２に記憶されている入力済テンプレートデータ３４の内容に従って決定される。特定のユーザは、いずれかのアイテム（例えば「曜日」）を選択すると、さらに詳細なアイテム（例えば「月曜日」等）を選択することができる。【００９８】
同様に、特定のユーザが拠点選択欄４０４を選択すると、例えば、「企業」「店舗グループ」「店舗」「店」等の各アイテムを含むプルダウンメニューが表示される。プルダウンメニュー内に表示される各アイテムは、メモリ２２に記憶されている入力済テンプレートデータ３４の内容に従って決定される。特定のユーザは、いずれかのアイテム（例えば「店舗グループ」）を選択すると、さらに詳細なアイテム（例えば「関東」等）を選択することができる。【００９９】
同様に、特定のユーザが方式選択欄４０６を選択すると、「ＡＮＤ」「ＯＲ」「ＮＯＴ」の各アイテムを含むプルダウンメニューが表示される。「ＡＮＤ」は、期間選択欄４０２で選択されたアイテムの条件（例えば「月曜日」）と拠点選択欄４０４で選択されたアイテムの条件（例えば「関東」）とをともに満たすことを集計条件に含むことを意味する。「ＯＲ」は、期間選択欄４０２で選択されたアイテムの条件と拠点選択欄４０４で選択されたアイテムの条件の一方を満たすことを集計条件に含むことを意味する。「ＮＯＴ」は、期間選択欄４０２で選択されたアイテムの条件と拠点選択欄４０４で選択されたアイテムの条件とを検索条件に含ませないことを意味する。【０１００】
項目群４２０にも、項目群の各欄４０２〜４０６と同様の期間選択欄４２２、拠点選択欄４２４、方式選択欄４２６が含まれている。項目群４００で設定される条件と項目群４２０で設定される条件とはＡＮＤ条件として設定される。【０１０１】
また、図１８の集計条件設定画面では、項目群追加ボタン４３０と決定ボタン４４０とがさらに表示されている。特定のユーザが項目群追加ボタン４３０を操作すると、項目群４００、４２０と同様の項目群が追加される。特定のユーザが決定ボタン４４０を操作すると、各項目群で設定されているアイテムを含む集計条件が決定される。これにより、特定のユーザによる集計条件の設定が完了する。その場合、設定端末７０は、設定された集計条件を示す条件データを生成し（Ｓ３８）、生成された条件データをサーバ１０に送信する（Ｓ４０）。【０１０２】
（条件データの例；図１９）
図１９を参照して、条件データの例について説明する。図１９では、条件データＣ１、Ｃ２の２つの条件データの例を説明する。条件データＣ１は、「期間：２０１５年」「拠点：関東」「方式：ＡＮＤ」の第１条件（図１８の項目群４００に対応）と、「期間：月曜日」「拠点：設定なし」「方式：ＮＯＴ」の第２条件（図１８の項目群４２０に対応）と、を含む。即ち、例１の条件データは、「２０１５年の関東地方の各デバイスの部分集計データを生成する。ただし月曜日のデータは部分集計データから除外する」という集計条件を示す。【０１０３】
一方、条件データＣ２は、「期間：設定なし」「拠点：Ｓカフェ  丸の内店」「方式：ＡＮＤ」の第１条件（図１８の項目群４００に対応）のみを含む。即ち、例２の条件データは、「Ｓカフェ  丸の内店の各デバイスの部分集計データを生成する」という集計条件を示す。【０１０４】
図１９に示す条件データＣ１、Ｃ２がメモリ２２に格納されている場合、サーバ１０のＣＰＵ２０は、１時間毎に、条件データＣ１が示す上記条件に従って部分集計を行い、部分集計データをメモリ２２に格納する。さらに、ＣＰＵ２０は、条件データＣ２が示す上記条件に従って部分集計を行い、部分集計データをメモリ２２に格納する。即ち、１時間毎に２種類の部分集計データがメモリ２２に格納される（図２のＳ６０、Ｓ６２等参照）。【０１０５】
（データ閲覧画面の例；図２０）
続いて、図２０を参照して、閲覧データ（図３のＳ１０４、Ｓ１１４参照）に従って、特定のユーザの閲覧端末８０の表示部に表示されるデータ閲覧画面の例を説明する。この例では、閲覧端末８０が、閲覧要求に、「電子レンジ」「関東エリア」「Ｓカフェ」「１か月以内」の各閲覧条件を入力した場合を想定している。この場合、サーバ１０のＣＰＵ２０は、メモリ２２内のデバイスデータ３８（図１参照）に含まれるデバイスデータと、メモリ２２内のフォームデータ３２と、閲覧条件（即ち、「電子レンジ」「関東エリア」「Ｓカフェ」「１か月以内」の各条件）とに基づいて、閲覧データを生成し、閲覧端末８０に供給する（図３のＳ１０４、Ｓ１１４参照）。閲覧端末８０は、閲覧データを取得すると、図１８に示すデータ閲覧画面を表示部に表示させる（図３のＳ１０６、Ｓ１１６参照）。【０１０６】
図２０のデータ閲覧画面では、店と、各イベント（Ａ状態、Ｂ状態、Ｃ状態）の発生回数とが関連付けられている。例えば、「Ｓカフェ  丸の内店」では、１か月の間に、Ａ状態が１００回発生し、Ｂ状態が５０回発生し、Ｃ状態が４０回発生したことを示す。このように、閲覧端末８０は、閲覧要求に含まれる閲覧条件に対応する閲覧データをサーバ１０から取得し、表示部に表示させることができる。特定のユーザは、閲覧データに基づいて表示されるデータ閲覧画面を見ることにより、複数個のデバイス６０における各イベントの発生状況を知ることができる（図３のＳ１０６、Ｓ１１６参照）。また、閲覧条件を変えて閲覧要求をサーバ１０に供給することにより、様々な条件における各イベントの発生状況を知ることができる。その結果、特定のユーザは、複数個のデバイス６０を適切に管理することができる。【０１０７】
なお、他のユーザが、自身の閲覧端末の表示部に表示させる他のデータ閲覧画面については詳しく説明しないが、上記の閲覧データに基づくデータ閲覧画面の場合（図２０参照）と同様のことが言える。【０１０８】
（本実施例の作用効果）
以上、本実施例の通信システム２について説明した。上記の通り、サーバ１０のＣＰＵ２０は、デバイスデータ３８（図１参照）内のデバイスデータを、条件データによって示される集計条件に従って一時間ごとに部分集計して部分集計データを生成し、メモリ２２に格納する（図２のＳ６０、Ｓ６２、Ｓ７０、Ｓ７２参照）。また、ＣＰＵ２０は、閲覧端末８０から閲覧要求を取得すると、メモリ２２内の部分集計データを利用して閲覧データを生成し、生成された閲覧データを閲覧端末８０に供給する（図３参照）。即ち、ＣＰＵ２０は、メモリ２２内の部分集計データを利用して閲覧データを生成するため、閲覧データを短時間で生成して閲覧端末８０に供給し得る。従って、本実施例によると、サーバ１０が閲覧データを短時間で生成することができるとともに、閲覧データ生成時におけるサーバ１０の負担も少なく済む。【０１０９】
閲覧データ生成時におけるサーバ１０の負担を少なくして、閲覧データを短時間で提供するために、例えば、「各デバイスからデバイスデータを取得する毎に、サーバ１０のＣＰＵ２０が全集計を行う」という構成を採用することも考えられる。しかしながら、この構成を採用する場合、デバイスデータを取得する毎に作成される全パターン分の部分集計データの大部分は、閲覧データの生成の際に利用される可能性が殆どない無駄なデータになり得る。この点、本実施例によると、上述の通り、サーバ１０のＣＰＵ２０が一時間ごとに行う部分集計は、条件データによって示される集計条件に従ったものに限られる。集計条件は、ユーザによって設定された条件であるため、ユーザが将来、集計条件に対応する閲覧条件に従ったデータの閲覧を希望する可能性も高い。従って、本実施例によると、無駄な部分集計データの生成を抑制することもできる。【０１１０】
また、サーバ１０のＣＰＵ２０は、１日毎に全集計を行い、全階層に対応する部分集計データを生成し、メモリ２２に格納する（Ｓ８０、Ｓ８２）。即ち、１日毎という比較的長いタイミング毎に（少なくとも、Ｓ６０、Ｓ７０の部分集計が行われるタイミングよりも長いタイミング毎に）、全階層に対応する部分集計データがメモリ２２に格納される。そのため、本実施例では、サーバ１０は、例えば特定のユーザが集計条件を変更した場合等、ユーザが新たな集計条件を設定した場合であっても、短時間で、当該新たな集計条件に従った部分集計データを生成することができる。また、本実施例では、全集計を行うのは１日に１回であるため、サーバ１０の負担も比較的少なく済む。【０１１１】
図１９の条件データＣ１、Ｃ２が示すように、集計条件は拠点（例えば、「関東」、「Ｓカフェ  丸の内店」等）を示す情報を含む。その場合、サーバ１０のＣＰＵ２０は、ユーザによって特定された拠点に関係する部分集計データを集計する。従って、サーバ１０は、ユーザによって特定された拠点に関係する閲覧データを短時間で生成することができる。【０１１２】
また、本実施例では、サーバ１０のＣＰＵ２０は、設定端末７０から設定画面要求（図２のＳ３０）を取得すると、設定端末７０に設定画面データを供給する（図２のＳ３４）。特定のユーザは、設定端末７０に表示された集計条件設定画面（図１８参照）に従って集計条件を特定することができる。そのため、特定ユーザは比較的容易に集計条件を特定し得る。【０１１３】
また、本実施例では、条件データが示す集計条件が、集計の必要がない除外条件（即ち、「方式：ＮＯＴ」を含む条件）を含む場合もある。集計条件が除外条件を含む場合、ＣＰＵ２０は、除外条件に対応するデータを除外して部分集計データを生成する。そのため、サーバ１０が無駄なデータの集計をする必要がない。サーバ１０の負荷をさらに軽減することができる。【０１１４】
（対応関係）
設定端末７０及び閲覧端末８０が「端末装置」の一例である。図８、図９に示されるツリー構造が「フォームデータによって示される様式」の一例である。機器固有番号が「デバイス特定情報」の一例である。図１のデバイスデータ３８内の各デバイスデータが「格納済データ」の一例である。図９の符号１７０〜２２０が「拠点情報」の一例である。図８の符号１０２〜１１０が「期間情報」の一例である。Ｓ５０、Ｓ５４、Ｓ６４のデバイスデータを取得することが「デバイスデータ取得部」が実行する処理の一例である。Ｓ５２、Ｓ５６、Ｓ６６が「デバイスデータ格納部」が実行する処理の一例である。Ｓ６０、Ｓ７０が「部分集計部」が実行する処理の一例である。Ｓ６２、Ｓ７２が「部分集計データ格納部」が実行する処理の一例である。Ｓ１００、Ｓ１１０の閲覧要求を取得することが「要求取得部」が実行する処理の一例である。Ｓ１０２、Ｓ１１２が「閲覧データ生成部」が実行する処理の一例である。Ｓ１０４、Ｓ１１４が「閲覧データ供給部」が実行する処理の一例である。Ｓ３４が「画面データ供給部」が実行する処理の一例である。Ｓ４０の条件データを取得することが「条件データ取得部」が実行する処理の一例である。Ｓ４２が「条件データ格納部」が実行する処理の一例である。【０１１５】
以上、実施例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。例えば、以下の変形例を採用してもよい。【０１１６】
（変形例１）ＣＰＵ２０は、１時間毎に限らず、他のタイミング毎に、メモリ２２内の条件データが示す集計条件に従って部分集計を行ってもよい。例えば、ＣＰＵ２０は、デバイス６０からデバイスデータを取得する毎に、メモリ２２内の条件データが示す集計条件に従って部分集計を行ってもよい。【０１１７】
（変形例２）また、ＣＰＵ２０は、１日毎に限らず、他のタイミング毎（例えば３日毎）に全集計を行ってもよい。この場合、ＣＰＵ２０が全集計を行うタイミングは、ＣＰＵ２０がメモリ２２内の条件データが示す集計条件に従って部分集計を行うタイミングよりも長い期間であることが好ましい。【０１１８】
（変形例３）図１８の方式選択欄４０６において、「ＮＯＴ」が選択できないようにされていてもよい。その場合、集計条件は、除外条件を含まなくてもよい。【０１１９】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図１】
2017037905.tif 000003
【図２】
2017037905.tif 000004
【図３】
2017037905.tif 000005
【図４】
2017037905.tif 000006
【図５】
2017037905.tif 000007
【図６】
2017037905.tif 000008
【図７】
2017037905.tif 000009
【図８】
2017037905.tif 000010
【図９】
2017037905.tif 000011
【図１０】
2017037905.tif 000012
【図１１】
2017037905.tif 000013
【図１２】
2017037905.tif 000014
【図１３】
2017037905.tif 000015
【図１４】
2017037905.tif 000016
【図１５】
2017037905.tif 000017
【図１６】
2017037905.tif 000018
【図１７】
2017037905.tif 000019
【図１８】
2017037905.tif 000020
【図１９】
2017037905.tif 000021
【図２０】
2017037905.tif 000022
【国際調査報告】
2017037905.tif 000023
2017037905.tif 000024
2017037905.tif 000025
2017037905.tif 000026