(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下図面について、本発明の一実施の形態を詳述する。
【0013】
(1)全体構成
図1は、本実施の形態における計算機システム1の全体構成を示す。計算機システム1は、入力装置10、計算機20及び出力装置30を備えて構成される。入力装置10は、例えばマウス、キーボード又はタッチパネル等であり、ユーザからの入力を受け付ける。
【0014】
計算機20は、例えばサーバ等であり、CPU(Central Processing Unit)21及び記憶部22を備える。CPU21は、入力部211、計算処理実行部212及び判定処理部213を備え、また記憶部22は、自治体計算式管理テーブル221、計算式管理テーブル222及び定数管理テーブル223を備える。
【0015】
入力部211は、入力装置10からの情報を入力し、入力した情報を判定情報に変換して計算処理実行部212に出力する。判定情報とは、入力装置10からの情報を所定のフォーマットに変換した情報であり、ここでは要介護状態度を判定するために用いられる情報である。判定情報の詳細については後述する(
図6)。
【0016】
計算処理実行部212は、入力部211からの判定情報を入力し、入力した判定情報及び各種テーブル221〜223を参照して、要介護状態度の指標となる得点を計算する。ワーク領域A及びBには、計算過程の値が格納される。計算処理実行部212による得点計算処理の詳細については後述する(
図8、
図9)。
【0017】
判定処理部213は、計算処理実行部212により計算された得点に基づいて、要介護状態度を判定し、判定結果を表示画面又は紙媒体により出力装置30に出力する。出力される判定結果の詳細については後述する(
図7)。
【0018】
自治体計算式管理テーブル221は、自治体毎に適用する計算式及び適用時期を管理するためのテーブルである。計算式管理テーブル222は、任意の単位から構成される計算式毎に計算順序、項目名及び演算子等を管理するためのテーブルである。
【0019】
また定数管理テーブル223は、任意の単位から構成される計算式毎に代入する値を管理するテーブルである。これらの各種テーブル221〜223の詳細については後述する(
図2〜
図4)。
【0020】
なおここでは入力装置10と、計算機20と、出力装置30とは、それぞれ異なる機器として説明しているが、必ずしもこれに限らず、計算機20が入力装置10及び出力装置30を備えるとしてもよい。
【0021】
(2)テーブル構成
図2は、自治体計算式管理テーブル221の論理構成を示す。自治体計算式管理テーブル221は、自治体固有ID欄2211、処理ID欄2212、計算式ID欄2213、適用開始年月日欄2214及び適用終了年月日欄2215から構成される。
【0022】
自治体固有ID欄2211には、介護保険者番号等に含まれる自治体固有の識別情報が格納される。処理ID欄2212には、要介護状態度を判定する処理又はその他の処理等の処理を識別する識別情報が格納される。計算式ID欄2213には、計算式を識別する識別情報が格納される。適用開始年月日欄2214及び適用終了年月日欄2215には、計算式の適用期間が格納される。
【0023】
従って
図2の場合、例えば自治体固有IDが「G001」の自治体において、「S001」により示される処理(例えば要介護状態度を判定する処理)を実行する場合、「20120401」(2012年4月1日)から「20130331」(2013年3月31日)までの間は、「X001」により示される計算式を用いて処理を実行することが示されている。また「20130401」(2013年4月1日)からは、「X002」により示される計算式を用いて処理を実行することが示されている。なお単独の自治体で本システムを運用する場合には、自治体固有IDや、後述のフローチャートにおける自治体固有IDにかかる部分を省略することができる。
【0024】
図3は、計算式管理テーブル222の論理構成を示す。計算式管理テーブル222は、計算式ID欄2221、計算順欄2222、項目名欄2223、演算子欄2224、端数計算有無欄2225、端数計算パターン欄2226、端数桁数欄2227及び計算結果欄2228から構成される。
【0025】
計算式ID欄2221には、計算式を識別する識別情報が格納される。計算順欄2222には、同一の計算式IDが複数存在する場合に計算する順序が格納される。項目名欄2223には、計算式において用いられる変数が格納される。演算子欄2224には、計算式において用いられる演算子が格納される。端数計算有無欄2225には、端数計算をするか否かを示す情報が格納される。
【0026】
また端数計算パターン欄2226には、端数計算を行う場合の端数計算のパターンを示す数値が格納される。端数計算のパターンには、例えば整数四捨五入、整数切り捨て、整数切り上げ、小数四捨五入、小数切り捨て又は小数切り上げ等がある。端数計算パターン欄2226には、これらを示すものとして予め設定された0〜9等の数値が格納される。
【0027】
また端数桁数欄2227には、端数計算を行う場合の桁数が格納される。例えば端数計算パターン欄2226に「整数切り捨て」が格納されており、端数桁数欄2227に1が格納されている場合、端数計算前の計算結果として得られた値が11である場合には1の位が切り捨てられて計算結果は10になる。計算結果欄2228には、計算結果が格納される。
【0028】
従って
図3の場合、例えば計算式IDが「X001」により示される計算式は、合計3つあり、計算順「001」、「002」、「003」の順で上から順番に計算されることが示されている。また「X001」の1番目の計算についてみると、項目名1は「a」(項目値)、項目名2は「A」(定数値)であり、演算子は「×」であることから、「X001」の1番目の計算は、「a×A」であることが示されている。またこの「a×A」により得られた計算結果については、端数計算はせず(端数計算有無が「0」)、計算結果をY(計算値)とすることが示されている。
【0029】
また2番目の計算についてみてみると、項目名1は「b」(項目値)、項目名2は「B」(定数値)であり、演算子は「×」であることから、「X001」の2番目の計算は、「b×B」であることが示されている。またこの「b×B」により得られた計算結果については、端数計算はせず(端数計算有無が「0」)、計算結果をZ(計算値)とすることが示されている。
【0030】
また3番目の計算についてみてみると、項目名1は「Y」(計算値)、項目名2は「Z」(計算値)であり、演算子は「+」であることから、「X001」の3番目の計算は、1番目の計算により得られた値と2番目の計算により得られた値とを加算する「Y+Z」であることが示されている。すなわち「X001」により示される計算式は、全体として、(a×A)+(b×B)であることが示されている。
【0031】
図4は、定数管理テーブル223の論理構成を示す。定数管理テーブル223は、計算式ID欄2231、計算順欄2232、項目名欄2233及び値欄2234から構成される。
【0032】
計算式ID欄2231には、計算式を識別する識別情報が格納される。計算順欄2232には、同一の計算式IDが複数存在する場合に計算する順序が格納される。項目名欄2233には、計算式において用いられる変数が格納される。値欄2234には、計算式に用いられる定数が格納されており、例えば計算式の演算子が「×」の場合には重み付けに相当する値が格納される。
【0033】
従って
図4の場合、例えば計算式IDが「X001」により示される計算式のうち、計算順序が「001」の計算式に用いられる変数「A」には、「0.8」を代入することが示されている。なお
図3を参照すると、計算式IDが「X001」の1番目の計算は、「a×A」であることから、「a×0.8」となる。
【0034】
図5は、チェックリストの一例を示す。チェックリストは、例えば介護サービスを受けることを希望する被保険者が複数の質問に対して回答した結果を示すリストである。複数の質問としては、例えば「質問a 歩行が困難な場合があるか」、「質問b 食事を一人でとることが困難な場合があるか」等がある。
【0035】
これらの質問に対して被保険者は、チェックリストを参照して、質問aに対しては「2.ときどきある」、質問bに対しては「1.ある」のようにチェックして回答する。回答は、被保険者自身が入力装置10を操作して回答してもよいし、被保険者が記入した用紙を参照して、専門の担当者が入力装置10を操作して回答してもよい。回答結果は、入力装置10から入力部211に出力され、入力部211により判定情報に変換される。
【0036】
図6は、判定情報211Aの論理構成を示す。判定情報211Aは、自治体固有ID欄2111、処理ID欄2112、項目名欄2113及び値欄2114から構成される。
【0037】
自治体固有ID欄2111には、自治体固有の識別情報が格納される。処理ID欄2112には、処理を識別する識別情報が格納される。項目名欄2113には、計算式において用いられる変数が格納される。値欄2114には、ここでは要介護状態度の得点に寄与する値が格納される。判定情報211Aには、判定が適用される適用時期(図示せず)が含まれていてもよい。
【0038】
従って
図6の場合、例えば自治体固有IDが「G001」の自治体において、「S001」により示される処理(例えば要介護状態度を判定する処理)を実行する場合、計算式に変数「a」、「b」、「c」及び「d」が用いられることが示されている。また変数「a」には「2」を代入し、変数「b」には「1」を代入し、変数「c」には「2」を代入し、変数「d」には「3」を代入することが示されている。
【0039】
なおこれら変数a〜dは、チェックリスト(
図5)の質問項目欄の質問a〜dに対応している。また変数a〜dに代入する値2、1、2、3は、それぞれ質問a〜dに対する回答番号2、1、2、3に対応している。
【0040】
また
図3を参照すると、計算式IDが「X001」の1番目の計算は、「a×A」であることから、「2×A」となる。さらに
図4を参照すると、変数「A」には「0.8」が代入されることから、結局のところ計算式IDが「X001」の1番目の計算は、「2×0.8」となる。なお本実施例では回答番号を得点計算用の値として直接用いているが、回答番号を変換テーブルを用いて計算に用いる値に変換してもよい。
【0041】
(3)出力結果
図7は、得点計算結果の一例を示す。得点計算結果は、チェックリスト(
図5)の回答を踏まえて計算された得点及び判定結果を示すものであり、出力装置30により表示画面又は紙媒体に出力される。具体的に得点計算結果は、被保険者情報領域R1、回答結果領域R2、判定結果領域R3及び参考欄領域R4から構成される。
【0042】
被保険者情報領域R1には、介護サービスを受けることを希望する被保険者の個人情報が出力される。ここでは被保険者番号、氏名、申請区分及び申請年月日が出力されている。回答結果領域R2には、チェックリストにおける回答結果が出力される。
【0043】
また判定結果領域R3には、回答結果領域R2に出力されたチェックリストの回答結果を踏まえて計算された得点及び判定結果が出力される。得点計算処理の詳細については後述する(
図8、
図9)。参考欄領域R4には、得点の範囲と判定結果との対応関係が参考情報として出力される。
【0044】
従って
図7の場合、チェックリストの回答結果を踏まえて計算された得点は21点であり、21〜40点の範囲は自立度Bであるため、判定結果として自立度Bと判定されていることが示されている。なおここでは自立度として出力される例を示しているが、要介護状態度として出力されるとしてもよい。自立度及び要介護状態度は、自立度が高いと要介護状態度は低くなる関係にある。
【0045】
(4)フローチャート
図8は、得点計算処理の処理手順を示す。この得点計算処理は、入力部211からの判定情報211Aを計算処理実行部212が入力したことを契機として、計算処理実行部212及び記憶部22の各種テーブル221〜222の協働により実行される。なお説明の便宜上、処理主体を計算処理実行部212として説明する。
【0046】
まず計算処理実行部212は、入力部211から判定情報211Aを入力すると、今回対象とする自治体の計算式を取得するため、自治体計算式管理テーブル221を参照する(SP1)。
【0047】
そして計算処理実行部212は、判定情報211Aの自治体固有ID及び処理IDが一致するレコードを自治体計算式管理テーブル221から抽出し、抽出したレコードのなかから適用年月日(例えば現在の年月日や、判定情報211Aに含まれている適用時期)が含まれる適用期間のレコードを更に抽出し、抽出したレコードの計算式ID欄2213から計算式IDを取得する(SP2)。
【0048】
次いで計算処理実行部212は、計算式管理テーブル222を参照して(SP3)、ステップSP2で取得した計算式IDと一致するレコードを抽出し、抽出したレコードの計算順欄2222、項目名欄2223及び演算子欄2224から計算順、項目名及び演算子を取得する(SP4)。
【0049】
次いで計算処理実行部212は、定数管理テーブル223を参照して(SP5)、ステップSP2で取得した計算式IDと、ステップSP4で取得した計算順及び項目名とが一致するレコードを抽出し、抽出したレコードの値欄2234から値を取得する(SP6)。このときに、定数管理テーブル223の項目に自治体IDを含ませ、計算式の演算子は同じでも自治体によって定数の値が異なるようにしてもよい。
【0050】
そして計算処理実行部212は、判定情報211Aの「値」と、計算式管理テーブル222から取得した「計算順」、「項目名」及び「演算子」と、定数管理テーブル223より取得した「値」とに基づいて、得点を計算する(SP7)。
【0051】
図9は、得点計算処理の具体的な処理手順を示す。まず計算処理実行部212は、入力部211から判定情報211Aを入力すると、自治体計算式管理テーブル221を参照して、判定情報211Aに含まれる自治体固有ID及び処理IDと一致するレコードを抽出する。また計算処理実行部212は、自治体計算式管理テーブル221の適用開始年月日欄2214及び適用終了年月日欄2215を参照して、抽出したレコードのなかから現在の年月日が含まれる適用期間のレコードを更に抽出し、抽出したレコードの計算式ID欄2213から計算式IDを取得する(SP11)。
【0052】
なおここでは入力した判定情報211Aは、
図6に示すものとして説明する。この場合、自治体固有ID及び処理IDは、「G001」及び「S001」であり、計算処理実行部212は、自治体計算式管理テーブル221から「X001」又は「X002」の計算式IDを取得する。またここでは現在の年月日が2012年4月1日〜2013年3月31日である場合について説明する。この場合、「X001」が取得される。
【0053】
次いで計算処理実行部212は、計算式管理テーブル222を参照して、ステップSP11で取得した計算式IDと一致するレコードを抽出する。更に計算処理実行部212は、計算順欄2222を参照して、抽出したレコードのなかから計算順の昇順に1件のレコードを取得する(SP12)。
【0054】
ここではステップSP1で取得した計算式IDは「X001」であるから、計算処理実行部212は、計算式管理テーブル222から「X001」の計算式IDと一致するレコードを3件分抽出する。また計算処理実行部212は、このなかから計算順序が「001」のレコードを1件取得する。
【0055】
以降計算処理実行部212は、同一の計算式について、1番目、2番目、3番目のように計算順の昇順に1件ずつ繰り返し処理を実行する(SP13)。計算処理実行部212は、まずは計算順序が1番目の「X001」のレコードについて処理を実行する。
【0056】
具体的に計算処理実行部212は、ステップSP12で計算順が1番目のレコードを取得した後、ワーク領域A及びBを確保する(SP14)。ワーク領域Aは、計算式に含まれる変数と値とを対応付けて保持するための領域であり、ワーク領域Bは、任意の単位の計算式による計算結果を保持するための領域である。
【0057】
次いで計算処理実行部212は、判定情報211A及び定数管理テーブル223を参照して、ステップSP12で計算式管理テーブル222から取得したレコードに含まれる項目名と一致する項目名が判定情報211A及び定数管理テーブル223に存在するか否かを判断する(SP15)。
【0058】
ここではステップSP12で取得した計算順が1番目の「X001」のレコードには、「a」及び「A」の項目名が含まれる。よって判定情報211Aに含まれる「a」及び定数管理テーブル223に含まれる「A」と一致する。
【0059】
計算処理実行部212は、ステップSP15の判断で肯定結果を得ると、一致する項目名に対応する値を判定情報211A及び定数管理テーブル223から取得し、ワーク領域Aに設定する(SP16)。
【0060】
そして計算処理実行部212は、計算式管理テーブル222を参照して、計算順序が1番目のレコードに含まれる演算子を取得し、取得した演算子と、ワーク領域Aに設定した値とに基づいて計算を行う(SP18)。
【0061】
ここでは計算処理実行部212は、ワーク領域Aにa=2、A=0.8を設定し、演算子「×」に基づいて、2×0.8=1.6を計算する。
【0062】
次いで計算処理実行部212は、計算式管理テーブル222を参照して、計算結果について端数計算をするか否かを判断する(SP19)。
【0063】
計算処理実行部212は、ステップSP19の判断で否定結果を得ると、計算結果をワーク領域Bに設定する(SP20)。そして計算処理実行部212は、計算式管理テーブル222を参照して、計算すべき次のレコードを取得する(SP21)。
【0064】
なおここでは計算処理実行部212は、計算式管理テーブル222を参照すると、計算順序が1番目の「X001」のレコードについては端数計算しない設定であるため、ステップSP19の判断では否定結果を得るが、端数計算する設定である場合には端数計算パターン及び端数桁数に基づいて端数計算を行い(SP21)、端数計算した後の計算結果をワーク領域Bに設定する(SP20)。
【0065】
この後、計算処理実行部212は、計算順序が2番目の「X001」のレコードを計算式管理テーブル222から取得し(SP21)、上記説明してきた処理を繰り返し実行する(SP14〜SP20)。なお計算処理実行部212は、ワーク領域Aにb=1、B=1.2を設定し(SP16)、演算子「×」に基づいて、1×1.2=1.2を計算する(SP18)。そして計算処理実行部212は、計算結果をワーク領域Bに設定して(SP20)、計算すべき次のレコードを取得する(SP21)。
【0066】
また計算処理実行部212は、計算順序が2番目の「X001」のレコードについて処理を終了すると、計算順序が3番目の「X001」のレコードを計算式管理テーブル222から取得し(SP21)、上記説明してきた処理を繰り返し実行する(SP14〜SP20)。なお計算処理実行部212は、ステップSP15において否定結果を得ると、ワーク領域Bに設定されている計算結果をワーク領域Aに設定する(SP17)。具体的にはワーク領域AにY=1.6、Z=1.2を設定する。そして計算処理実行部212は、演算子「+」に基づいて、1.6+1.2=2.8を計算する(SP18)。
【0067】
計算処理実行部212は、同一の計算式について、1番目、2番目、3番目のように計算順の昇順に1件ずつ繰り返し処理を実行した後(SP13)、ループを終了して(SP23)、この得点計算処理を終了する。
【0068】
(5)本実施の形態による効果
以上のように本実施の形態における計算機システム1によれば、自治体計算式管理テーブル221から自治体毎に異なる計算式IDを取得し、計算式管理テーブル222から計算順に任意の単位の計算式を取得し、定数管理テーブル223及び判定情報211Aから計算式に適用する重み付けの値及び得点に寄与する値を取得して、データベースで一元管理する計算式に関する情報から計算式を組み立てて計算するようにしたので、法律等により計算式が変更された場合、或いは、自治体毎に計算式を異ならせる場合であっても、各種テーブル221〜223に格納する値を変更するだけで、プログラムを改造することなく適切な計算式に基づいて計算することができる。
【0069】
また自治体計算式管理テーブル221には、適用開始年月日欄2214及び適用終了年月日欄2215を設けるようにしたので、法律改正前と改正後の新旧の計算式IDを格納しておくことができる。よって改造前後の2つのプログラムを保持しておく必要がなく、また法律改正時に各種テーブル221〜223を一斉に変更する必要もないため、法律改正にともなう作業負担を軽減することができる。
【0070】
また自治体計算式管理テーブル221に適用開始年月日欄2214及び適用終了年月日欄2215を設けて計算式の適用期間を管理し、適用する計算式を自動判別するようにしたので、計算式が頻繁に変更される場合において適用期間を確認する煩雑な作業を解消することができる。また適用期間の間違いにより得点に不備が生じることを解消することができる。