複雑な条件をIF関数を使って kintoneで単位数計算

訪問看護ステーションからのリハビリ提供の場合における介護報酬医療報酬の計算

kintoneでIF関数が扱えるようになった際、モデルとして作ったアプリを紹介します

どんな計算が必要なのか?

  • 介護保険or医療保険
  • 2回or3回以上
  • 初期加算ありorなし

報酬が1回あたりの提供した時間によって変わり、加算関連も変わってきます(この辺りはもっと詳しく書いているサイトを参照ください)

ざっくりとはこんな感じですが、医療保険の場合訪問看護基本療養費(Ⅰ)で理学療法士、作業療法士、言語聴覚士が訪問する場合、週3日まででも週4日以降でも単価は5,550円と変わらないとか、月の初日の訪問と2日目以降で訪問看護管理療養費が変わってくるとか・・・

これらの条件を1つずつチェックしていかなくても、IF関数を活用することでどうにか報酬計算を自動化できないか考えてみました

その前に、基本の利用者アプリを作っておけばアプリアクションで必要な情報が数クリックで入力可能です

訪問リハビリkintoneアプリを標準機能で作成してみた

kintoneライトコースで訪問リハビリテーションアプリ

今回は

  • サービス開始予定時刻
  • サービス終了予定時刻
  • 氏名
  • 利用区分(要介護度or医療保険)

をアプリアクションで飛ばします

補足今回の方法ではカレンダー表示に難あり
今回は日付と時刻がバラバラな状態です

カレンダー機能をフル活用したい場合、日時フィールドが必要となるケースが多いので注意が必要です。以下の記事でちょこっと紹介しています。

kintoneで繰り返し曜日条件で予定登録

繰り返し予定&曜日条件でkintoneレコード登録

介護保険の場合

まずは数としては多いであろう介護保険の報酬を計算してみましょう

サービス提供回数を計算

アプリアクションで開始時刻と終了時刻を別アプリから引っ張ってきているので、サービスを提供した時間は計算可能です。

20分=1回って計算であることと、kintoneの時刻計算は基本秒単位なので

  • 1時間=3600秒
  • 1時間=3回

と考えると1回1200秒なので

ROUNDDOWN((終了時刻-開始時刻)/1200)

この計算式でサービスを提供した時間を回数にして、ROUNDDOWNで切り捨てをします。切り捨てしないと介護報酬に小数点の回数は存在しないので・・・

回数によって単位数変化に対応

訪問看護ステーションから提供するリハビリは、提供する回数によって単位数が変わってきます

理学療法士 作業療法士 言語聴覚士がサービスを提供した場合は、訪問看護Ⅰ5や予防訪問看護Ⅰ5は1日に3回以上のサービス提供時は1回あたりのサービス提供単位数が90/100で算定されるので・・・

訪問看護Ⅰ5

  • 1回・・・297単位/回
  • 2回・・・297単位/回
  • 3回・・・267単位/回

 

予防訪問看護Ⅰ5

  • 1回・・・287単位/回
  • 2回・・・287単位/回
  • 3回・・・258単位/回

回数によって単位数を変えるには、IF関数を使うと便利です

要介護の場合:IF(回数>=3,267,297)

回数が3回以上であれば267単位を、回数が3回未満であれば297単位をフィールドにセットします

要介護

要支援

これで41分提供したら

ROUNDDOWN((終了時刻-開始時刻)/1200)

の計算結果で2という値がでて、IF関数により要介護なら297単位、要支援なら287単位をセットした状態になります。

さて、ではこの297単位と287単位の選択をどうしようかな・・・

要支援と要介護で単位数を変える

別のアプリから引っ張ってきた利用区分はこんな項目が選択可能なドロップダウンフィールド

  • 要支援1
  • 要支援2
  • 要介護1
  • 要介護2
  • 要介護3
  • 要介護4
  • 要介護5
  • 医療保険

本来訪問看護の場合、介護か予防か医療かが分かればいいんですが、要介護度入力して3択も入力するのが面倒くさいので

(IF(OR(利用区分=”要支援1″,利用区分=”要支援2″),要支援基本,介護基本))*回数

これで、要支援1or2なら要支援基本を、それ以外なら介護基本の値をセットします。これで要支援か要介護かで基本の単位数が自動で選択されます。(最後に回数かけているので、基本部分の総単位数が算出されます)

bozu
要支援1,2以外って医療保険も入るじゃないか!!
キンボウズ
後で解決するから今はスルーで

初回加算の有無

加算のありなしで〇〇単位か0単位かをセットしておきます。例えば初回加算は300単位なので

IF(初回加算=”あり”,300,0)

ありなら300単位セットして、それ以外なら(なししかないけど)0単位

複数加算がある場合は複数作ればOK!!

介護報酬の計算

さて、介護報酬の計算!!

切り捨てするので

ROUNDDOWN((介護提供単位+初回加算単位)*地域区分)

もう少し分けたほうがいいかもですが、kintoneの答えはなく正解は1つじゃないと逃げておきます 笑

地域区分については説明しません(ググってね♪)

次に医療保険の計算をしておきましょう

医療保険の場合

訪問看護基本療養費は理学療法士や作業療法士などがサービスを提供する場合、訪問する回数によって費用の増減は起こらないので初期値を5550にしています

訪問看護管理療養費は初回訪問と2回目以降の訪問で金額が変わってきますので、IF関数を使えばOK

IF(今月初回=”初回”,療養費初回,療養費2回目以降)

bozu
今日って今月初回の訪問だったけな・・・

さっと確認できるように関連レコードで今月の記録を表示しておけば、該当レコードがなければ今月初回の訪問だ!!

あとは足すだけですね、これで医療報酬が完成しました!!

一つのレコードに

  • 介護報酬
  • 医療報酬

2つの報酬フィールドが存在するんですが、さてどちらを選択すればいいのか?

bozu
IF関数を使って、自動で選択できるようにしておきましょう!!

医療保険?介護保険?

  • 介護報酬
  • 医療報酬

どちらも計算はできているので、条件によってセットする報酬を自動選択すればいい

IF(OR(利用区分=”要支援1″,利用区分=”要支援2″,利用区分=”要介護1″,利用区分=”要介護2″,利用区分=”要介護3″,利用区分=”要介護4″,利用区分=”要介護5″),介護報酬,医療報酬)

または

IF(利用区分=”医療保険”,医療報酬,介護報酬)

利用区分(要介護度と医療保険)はアプリアクションで別のアプリから飛ばしてくるので、レコード追加時には既に選択された状態

状況によって加算を入力(初期値によく選択する加算を設定しておくと便利)

 

bozu
ここまで書きましたが、動画で動作のイメージを見てもらう方が早いかもしれない・・・

いつも通りYouTube貼っておきます!

動作イメージ(YouTube)

シェアどうぞ宜しくお願い致します