JP6971610B2 - Server, data update method, and electronic medical record system - Google Patents

Server, data update method, and electronic medical record system Download PDF

Info

Publication number
JP6971610B2
JP6971610B2 JP2017076152A JP2017076152A JP6971610B2 JP 6971610 B2 JP6971610 B2 JP 6971610B2 JP 2017076152 A JP2017076152 A JP 2017076152A JP 2017076152 A JP2017076152 A JP 2017076152A JP 6971610 B2 JP6971610 B2 JP 6971610B2
Authority
JP
Japan
Prior art keywords
server
time
data
terminal
request information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017076152A
Other languages
Japanese (ja)
Other versions
JP2018180731A (en
Inventor
幸治 葉山
敬弘 川田
惇也 大河内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PHC Holdings Corp
Original Assignee
PHC Holdings Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PHC Holdings Corp filed Critical PHC Holdings Corp
Priority to JP2017076152A priority Critical patent/JP6971610B2/en
Publication of JP2018180731A publication Critical patent/JP2018180731A/en
Application granted granted Critical
Publication of JP6971610B2 publication Critical patent/JP6971610B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Description

本発明は、サーバ、データ更新方法、及び、電子カルテシステムに関する。 The present invention relates to a server, a data update method, and an electronic medical record system.

電子カルテシステムは、従来の紙のカルテを電子的なカルテに置き換えて管理するシステムである。特許文献1には、電子カルテを管理するサーバと、電子カルテに対する入力及び表示を行う端末とが、ネットワークを介して接続されている電子カルテシステムが開示されている。 The electronic medical record system is a system that replaces a conventional paper medical record with an electronic medical record and manages it. Patent Document 1 discloses an electronic medical record system in which a server for managing an electronic medical record and a terminal for inputting and displaying the electronic medical record are connected via a network.

また、医師等に診療記録等を全て手入力させることは、負担が大きく、入力ミスも発生しやすい。そこで、特許文献2では、病名や医薬品等の名称をマスタデータとして予め用意しておき、医師等にマスタデータを選択させることにより、電子カルテの入力負担の軽減、及び、入力ミスの低減を実現している。 In addition, having a doctor or the like manually input all medical records is a heavy burden and is prone to input errors. Therefore, in Patent Document 2, the name of the disease, the name of the drug, etc. is prepared in advance as master data, and the doctor or the like is made to select the master data, thereby reducing the input burden of the electronic medical record and reducing the input error. doing.

特開2013−37586号公報Japanese Unexamined Patent Publication No. 2013-37586 特開2005−316968号公報Japanese Unexamined Patent Publication No. 2005-316868

医師等は限られた時間内で診療記録を入力する必要があるため、端末における電子カルテの操作には、低レイテンシが求められる。しかし、サーバのデータベースで管理されているマスタデータを端末が都度取得する従来技術では、端末において低レイテンシを実現することが難しい。また、マスタデータは時々更新される類いのデータであり、その更新が確実に端末に伝えられる必要がある。 Since doctors and the like need to input medical records within a limited time, low latency is required for operating electronic medical records on terminals. However, it is difficult to achieve low latency in the terminal by the conventional technique in which the terminal acquires the master data managed in the database of the server each time. In addition, the master data is the kind of data that is updated from time to time, and it is necessary to reliably convey the update to the terminal.

本発明の目的は、サーバ側におけるデータ更新が確実に端末に伝わり、かつ、端末における低レイテンシを可能とするサーバ装置、データ更新方法、及び、電子カルテシステムを提供することにある。 An object of the present invention is to provide a server device, a data update method, and an electronic medical record system that enable data update on the server side to be reliably transmitted to a terminal and low latency in the terminal.

本発明の一態様に係るサーバは、端末から受信した要求情報に適合するデータを前記端末へ送信するサーバであって、データベースと、前記データベースから取得された少なくとも一部のデータが格納されるキャッシュメモリ部と、前記要求情報に適合するデータを前記キャッシュメモリ部から取得して、前記要求情報に対応する応答情報を生成する制御部と、を備え、前記要求情報は、前記端末から送信された前回の要求情報を当該サーバが受信した時刻である第1の確認時刻を含み、前記制御部は、前記端末から送信された要求情報に含まれる前記第1の確認時刻から所定時間を減算して減算後確認時刻を算出し、データの更新時刻が前記減算後確認時刻よりも新しいデータを前記キャッシュメモリ部から取得して、前記応答情報に含め、前記所定時間は、前記データベースで更新されたデータが前記キャッシュメモリ部に反映されるまでの時間よりも長い時間であるThe server according to one aspect of the present invention is a server that transmits data conforming to the request information received from the terminal to the terminal, and is a database and a cache in which at least a part of the data acquired from the database is stored. A memory unit and a control unit that acquires data matching the request information from the cache memory unit and generates response information corresponding to the request information are provided, and the request information is transmitted from the terminal. The control unit subtracts a predetermined time from the first confirmation time included in the request information transmitted from the terminal, including the first confirmation time which is the time when the server received the previous request information. calculating a subtraction after confirmation time, new data than the update time of data the subtraction after confirmation time is obtained from the cache memory unit, including Me in the response information, the predetermined time is updated in the database It is a longer time than the time until the data is reflected in the cache memory unit .

本発明によれば、サーバ側におけるデータ更新が確実に端末に伝わり、かつ、端末における低レイテンシを可能とすることができる。 According to the present invention, it is possible to reliably transmit data updates on the server side to the terminal and enable low latency in the terminal.

本実施の形態に係る電子カルテシステムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the electronic medical record system which concerns on this embodiment. 要求電文のデータクエリモードに「ALL」が設定された場合の処理を示すシーケンスチャートである。It is a sequence chart which shows the process when "ALL" is set in the data query mode of a request message. 要求電文のデータクエリモードに「Time」が設定された場合の処理を示すシーケンスチャートである。It is a sequence chart which shows the process when "Time" is set in the data query mode of a request message. 要求電文にマスタデータのIDが設定された場合の処理を示すシーケンスチャートである。It is a sequence chart which shows the process when the ID of the master data is set in the request message. データベースのデータを変更する処理を示すシーケンスチャートである。It is a sequence chart which shows the process of changing the data of a database. 本発明に係るコンピュータのハードウェア構成を示す図である。It is a figure which shows the hardware configuration of the computer which concerns on this invention.

以下、図面を参照しながら、実施の形態を説明する。なお、以下の実施の形態において、その構成要素(要素ステップなどを含む)は、特に明示した場合及び原理的に明らかに必須であると考えられる場合などを除き、必ずしも必須のものではない。 Hereinafter, embodiments will be described with reference to the drawings. In the following embodiments, the components (including element steps and the like) are not necessarily essential except when explicitly stated and when it is clearly considered to be essential in principle.

図1は、電子カルテシステム1の構成例を示すブロック図である。 FIG. 1 is a block diagram showing a configuration example of the electronic medical record system 1.

電子カルテシステム1は、サーバ10と、少なくとも1つの端末20とを含む。サーバ10と端末20とは、所定の通信ネットワークで接続されており、双方向通信が可能である。 The electronic medical record system 1 includes a server 10 and at least one terminal 20. The server 10 and the terminal 20 are connected by a predetermined communication network, and bidirectional communication is possible.

サーバ10は、電子カルテに関する各種データを管理するための装置である。端末20は、医師、看護師、薬剤師及び事務員等の医療関係者が、電子カルテを利用するための装置である。端末20は、例えば、PC、タブレット端末、及びスマートフォン等である。 The server 10 is a device for managing various data related to electronic medical records. The terminal 20 is a device for medical personnel such as doctors, nurses, pharmacists, and clerks to use electronic medical records. The terminal 20 is, for example, a PC, a tablet terminal, a smartphone, or the like.

<サーバ10の構成>
次にサーバ10の構成について説明する。サーバ10は、機能として、サーバ制御部100と、サーバ側キャッシュ部102と、DB(DataBase)制御部104と、DB106とを有する。
<Configuration of server 10>
Next, the configuration of the server 10 will be described. The server 10 has a server control unit 100, a server-side cache unit 102, a DB (DataBase) control unit 104, and a DB 106 as functions.

DB106には、電子カルテに関するマスタ及び診療記録等が保持される。DB106は、例えば、HDD(Hard Disk Drive)又はSSD(Solid State Drive)等の記憶装置に構築される。 The DB 106 holds a master related to electronic medical records, medical records, and the like. The DB 106 is built in a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive), for example.

サーバ側キャッシュ部102には、電子カルテに関する最新のマスタデータがキャッシュされる。サーバ側キャッシュ部102は、例えば、DRAM(Dynamic Random Access Memory)等の記憶装置に構築される。サーバ側キャッシュ部102が構築される記憶装置のアクセス速度は、DB106が構築される記憶装置のアクセス速度よりも高速であることが好ましい。 The latest master data related to the electronic medical record is cached in the server-side cache unit 102. The server-side cache unit 102 is built in a storage device such as a DRAM (Dynamic Random Access Memory), for example. The access speed of the storage device in which the server-side cache unit 102 is constructed is preferably higher than the access speed of the storage device in which the DB 106 is constructed.

電子カルテに関するマスタは、電子カルテへの入力時に選択可能な項目に関する情報を含む。電子カルテに関するマスタは、例えば、ユーザマスタ、カルテ記事雛形マスタ、オーダマスタ、病名マスタ、及び、検査依頼マスタ、検査結果マスタを含む。 The master regarding the electronic medical record contains information about items that can be selected when inputting to the electronic medical record. The master related to the electronic medical record includes, for example, a user master, a medical record article template master, an order master, a disease name master, an inspection request master, and an inspection result master.

ユーザマスタは、受診者に関する情報を電子カルテに入力する際に選択可能な項目を含む。例えば、ユーザマスタは、氏名、生年月日、性別、及び血液型等の項目を含む。 The user master includes items that can be selected when inputting information about the examinee into the electronic medical record. For example, the user master includes items such as name, date of birth, gender, and blood type.

カルテ記事雛形マスタは、診療記録に関する情報を電子カルテに入力する際に選択可能な項目、例えば、バイタル情報、及びシェーマの画像等の項目を含む。 The medical record article template master includes items that can be selected when inputting information regarding medical records into an electronic medical record, such as vital information and an image of a schema.

オーダマスタは、処方に関する情報を電子カルテに入力する際に選択可能な項目、例えば、医薬品名、及び検体名等の項目を含む。 The order master includes items that can be selected when inputting information on the prescription into the electronic medical record, for example, items such as a drug name and a sample name.

病名マスタは、病名に関する情報を電子カルテに入力する際に選択可能な項目、例えば、病名等の項目を含む。 The disease name master includes items that can be selected when inputting information about the disease name into the electronic medical record, for example, items such as the disease name.

検査依頼マスタは、検査依頼に関する情報を電子カルテに入力する際に選択可能な項目、例えば、検査名、及び検査対象等の項目を含む。 The inspection request master includes items that can be selected when inputting information about the inspection request into the electronic medical record, such as an inspection name and an inspection target.

検査結果マスタは、検査結果に関する情報を電子カルテに入力する際に選択可能な項目、例えば、検査名、及び検査分類等の項目を含む。 The inspection result master includes items that can be selected when inputting information about the inspection result into the electronic medical record, such as an inspection name and an inspection classification.

サーバ制御部100は、DB106及びサーバ側キャッシュ部102内のデータを制御する。例えば、サーバ制御部100は、DB106内のマスタデータが更新されると、その更新されたマスタデータをサーバ側キャッシュ部102に反映する。すなわち、サーバ制御部100は、サーバ側キャッシュ部102に、最新のマスタデータが保持されているようにする。 The server control unit 100 controls the data in the DB 106 and the server-side cache unit 102. For example, when the master data in the DB 106 is updated, the server control unit 100 reflects the updated master data in the server-side cache unit 102. That is, the server control unit 100 ensures that the latest master data is held in the server-side cache unit 102.

また、サーバ制御部100は、端末20からの要求に応じて、必要なデータを端末20に返す。例えば、サーバ制御部100は、端末20から要求電文を受信すると、その要求電文に含まれる検索クエリに適合するマスタデータを、サーバ側キャッシュ部102から取得し、応答電文として端末20へ返す。サーバ側キャッシュ部102はDB106よりも応答性能が高く、サーバ側キャッシュ部102に格納されているデータは、応答電文の形式になっている場合もある。よって、サーバ制御部100は、マスタデータをDB106から取得するよりも、短時間で応答電文を端末20に返すことができる。 Further, the server control unit 100 returns necessary data to the terminal 20 in response to a request from the terminal 20. For example, when the server control unit 100 receives the request message from the terminal 20, it acquires the master data matching the search query included in the request message from the server-side cache unit 102 and returns it to the terminal 20 as a response message. The server-side cache unit 102 has higher response performance than the DB 106, and the data stored in the server-side cache unit 102 may be in the form of a response message. Therefore, the server control unit 100 can return the response message to the terminal 20 in a shorter time than acquiring the master data from the DB 106.

<端末20の構成>
次に端末20の構成について説明する。端末20は、機能として、モジュール部202と、アプリケーション部200と、キャッシュ制御部204と、端末側キャッシュ部206とを含む。
<Configuration of terminal 20>
Next, the configuration of the terminal 20 will be described. The terminal 20 includes a module unit 202, an application unit 200, a cache control unit 204, and a terminal-side cache unit 206 as functions.

モジュール部202は、端末20側における電子カルテの共通ロジックを含むプログラムモジュールである。モジュール部202は、ライブラリ又はプラグイン等とも呼ばれる。 The module unit 202 is a program module including the common logic of the electronic medical record on the terminal 20 side. The module unit 202 is also called a library, a plug-in, or the like.

アプリケーション部200は、端末20側から電子カルテを利用するためのアプリケーションプログラムである。アプリケーション部200は、モジュール部202を利用して作成される。このように、電子カルテの共通ロジックをモジュール部202として分離しておくことにより、アプリケーション部200には、端末20の種別(例えばPC又はタブレット端末20等)によって異なる部分のみを実装することができる。これにより、端末20の種別に応じた最適な電子カルテのアプリケーションを、比較的容易に実装することができる。 The application unit 200 is an application program for using an electronic medical record from the terminal 20 side. The application unit 200 is created by using the module unit 202. By separating the common logic of the electronic medical record as the module unit 202 in this way, it is possible to implement only the parts that differ depending on the type of the terminal 20 (for example, a PC or a tablet terminal 20) in the application unit 200. .. This makes it possible to implement an optimal electronic medical record application according to the type of the terminal 20 relatively easily.

キャッシュ制御部204は、サーバ制御部100と連携して、端末側キャッシュ部206を制御する。例えば、キャッシュ制御部204は、サーバ制御部100から最新のマスタデータを取得して端末側キャッシュ部206に格納することにより、端末側キャッシュ部206のマスタデータを最新に保つ。キャッシュ制御部204とサーバ制御部100との間のやり取りは、サーバ10が公開するWEB APIを用いて行われてもよい。 The cache control unit 204 controls the terminal-side cache unit 206 in cooperation with the server control unit 100. For example, the cache control unit 204 acquires the latest master data from the server control unit 100 and stores it in the terminal side cache unit 206 to keep the master data of the terminal side cache unit 206 up to date. The exchange between the cache control unit 204 and the server control unit 100 may be performed using the WEB API published by the server 10.

<要求電文及び応答電文の構成>
次に要求電文及び応答電文の構成について説明する。
<Structure of request message and response message>
Next, the configuration of the request message and the response message will be described.

要求電文は、キャッシュ制御部204がサーバ制御部100に対してデータを要求するための電文である。要求電文は、データクエリモードと、確認時刻とを含む。応答電文は、サーバ制御部100がキャッシュ制御部204に対して、要求電文に対する応答を返すための電文である。応答電文は、サーバクエリ時刻と、データとを含む。 The request message is a message for the cache control unit 204 to request data from the server control unit 100. The request message includes a data query mode and a confirmation time. The response message is a message for the server control unit 100 to return a response to the request message to the cache control unit 204. The response message includes the server query time and the data.

データクエリモードには、次のように、どのようなデータを要求するかを示すモードを設定可能である。
・全データを要求する「ALL」。
・確認時刻以降に更新されたデータを要求する「Time」。
In the data query mode, a mode indicating what kind of data is requested can be set as follows.
-"ALL" that requests all data.
-"Time" that requests data updated after the confirmation time.

サーバクエリ時刻は、サーバ制御部100がキャッシュ制御部204から要求電文を受信した時刻である。サーバクエリ時刻は、応答電文に含まれて端末20に送信され、端末側キャッシュ部206に格納される。キャッシュ制御部204は、端末側キャッシュ部206からサーバクエリ時刻を取得し、その取得したサーバクエリ時刻を、確認時刻として電文要求に設定する。 The server query time is the time when the server control unit 100 receives the request message from the cache control unit 204. The server query time is included in the response message, transmitted to the terminal 20, and stored in the terminal-side cache unit 206. The cache control unit 204 acquires the server query time from the terminal side cache unit 206, and sets the acquired server query time in the message request as the confirmation time.

図2は、要求電文のデータクエリモードに「ALL」が設定された場合の処理を示すシーケンスチャートである。 FIG. 2 is a sequence chart showing processing when "ALL" is set in the data query mode of the request message.

キャッシュ制御部204は、端末側キャッシュ部206から、サーバクエリ時刻を取得する(ST100、ST102)。 The cache control unit 204 acquires the server query time from the terminal side cache unit 206 (ST100, ST102).

次に、キャッシュ制御部204は、データクエリモードに「ALL」を、確認時刻に「NULL」を設定して要求電文を生成し、サーバ制御部100へ送信する(ST104)。確認時刻に「NULL」が設定された場合は、全てのマスタデータがクエリ対象となる。 Next, the cache control unit 204 sets "ALL" in the data query mode and "Null" in the confirmation time to generate a request message and sends it to the server control unit 100 (ST104). If "NULL" is set for the confirmation time, all master data will be the query target.

サーバ制御部100は、ST104の要求電文を受信する。そして、サーバ制御部100は、この要求電文を受信した時刻から、サーバクエリ時刻を生成する(ST106)。 The server control unit 100 receives the request message of ST104. Then, the server control unit 100 generates a server query time from the time when the request message is received (ST106).

次に、サーバ制御部100は、データクエリモードが「ALL」であるので、サーバ側キャッシュ部102から全マスタデータを取得する(ST108、ST110)。 Next, since the data query mode is "ALL", the server control unit 100 acquires all master data from the server-side cache unit 102 (ST108, ST110).

次に、サーバ制御部100は、ST106で生成したサーバクエリ時刻と、ST110で取得した全マスタデータとを含む応答電文を生成し、キャッシュ制御部204に送信(返信)する(ST112)。 Next, the server control unit 100 generates a response message including the server query time generated in ST106 and all the master data acquired in ST110, and sends (replies) to the cache control unit 204 (ST112).

キャッシュ制御部204は、ST112の応答電文を受信する。そして、キャッシュ制御部204は、この受信した応答電文に含まれるサーバクエリ時刻と全マスタデータとを、端末側キャッシュ部206に格納する(ST114、ST116)。すでに端末側キャッシュ部206にサーバクエリ時刻とマスタデータとが存在する場合、キャッシュ制御部204は、端末側キャッシュ部206のサーバクエリ時刻と全データとを更新する。 The cache control unit 204 receives the response message of ST112. Then, the cache control unit 204 stores the server query time and all the master data included in the received response message in the terminal side cache unit 206 (ST114, ST116). If the server query time and master data already exist in the terminal-side cache unit 206, the cache control unit 204 updates the server query time and all data in the terminal-side cache unit 206.

図2の処理によれば、端末側キャッシュ部206のマスタデータが全て最新となる。この処理は、例えば、端末20の起動時又はアプリケーション部200の起動時に実行される。 According to the process of FIG. 2, all the master data of the terminal-side cache unit 206 is up-to-date. This process is executed, for example, when the terminal 20 is started or when the application unit 200 is started.

図3は、要求電文のデータクエリモードに「Time」が設定された場合の処理を示すシーケンスチャートである。 FIG. 3 is a sequence chart showing processing when "Time" is set in the data query mode of the request message.

キャッシュ制御部204は、端末側キャッシュ部206から、サーバクエリ時刻を取得する(ST150、ST152)。 The cache control unit 204 acquires the server query time from the terminal side cache unit 206 (ST150, ST152).

次に、キャッシュ制御部204は、データクエリモードに「Time」を、確認時刻に上記で取得したサーバクエリ時刻を設定した要求電文を生成し、サーバ制御部100へ送信する(ST154)。 Next, the cache control unit 204 generates a request message in which "Time" is set in the data query mode and the server query time acquired above is set as the confirmation time, and is transmitted to the server control unit 100 (ST154).

サーバ制御部100は、ST104の要求電文を受信する。そして、サーバ制御部100は、この要求電文を受信した時刻から、サーバクエリ時刻を生成する(ST156)。 The server control unit 100 receives the request message of ST104. Then, the server control unit 100 generates a server query time from the time when the request message is received (ST156).

次に、サーバ制御部100は、データクエリモードが「Time」であるので、サーバ側キャッシュ部102から、「確認時刻−α<DB更新時刻」のクエリ条件に適合するデータを検索する(ST158、ST160)。αは所定の時間である。ここで、確認時刻から所定時間αを減算しているのは、以下の理由による。 Next, since the data query mode is "Time", the server control unit 100 searches the server-side cache unit 102 for data that matches the query condition of "confirmation time-α <DB update time" (ST158, ST160). α is a predetermined time. Here, the reason why the predetermined time α is subtracted from the confirmation time is as follows.

もしαを減算しないと、ST156のサーバクエリ生成時刻が、DB106でデータが更新されてからサーバ側キャッシュ部102に格納されるまでの間の時刻であった場合、「最新更新時刻>DB更新時刻」となってしまい、キャッシュ制御部204が、更新データを取得できない事態が発生してしまう。すなわち、αを減算することにより、このような事態の発生を防止することができる。したがって、所定時間αは、DB106でマスタデータが更新されてサーバ側キャッシュ部102に格納されるまでの間の最長時間よりも長い時間となる。なお、「確認時刻−α」は、減算後確認時刻と呼ばれてもよい。 If α is not subtracted and the server query generation time of ST156 is the time between the time when the data is updated in DB 106 and the time when the data is stored in the server-side cache unit 102, "latest update time> DB update time". , And the cache control unit 204 cannot acquire the update data. That is, by subtracting α, the occurrence of such a situation can be prevented. Therefore, the predetermined time α is longer than the longest time until the master data is updated in the DB 106 and stored in the server-side cache unit 102. The “confirmation time −α” may be referred to as the confirmation time after subtraction.

<クエリ条件に適合するデータが存在する場合>
まず、ST158のクエリ条件「確認時刻−α<DB更新時刻」に適合するマスタデータがサーバ側キャッシュ部102に存在する場合について説明する。
<When there is data that matches the query conditions>
First, a case where master data satisfying the query condition “confirmation time −α <DB update time” of ST158 exists in the server-side cache unit 102 will be described.

この場合、端末側キャッシュ部206のマスタデータは最新の状態ではない。したがって、サーバ制御部100は、ST156で生成したサーバクエリ時刻と、更新マスタデータが存在する旨を示すフラグ値と、ST160で取得した更新マスタデータとを含む応答電文を生成し、キャッシュ制御部204に送信(返信)する(ST162)。 In this case, the master data of the terminal-side cache unit 206 is not the latest state. Therefore, the server control unit 100 generates a response message including the server query time generated in ST156, the flag value indicating that the update master data exists, and the update master data acquired in ST160, and the cache control unit 204. Send (reply) to (ST162).

キャッシュ制御部204は、ST162の応答電文を受信する。そして、キャッシュ制御部204は、この受信した応答電文に含まれるサーバクエリ時刻と更新マスタデータとを、端末側キャッシュ部206に格納する(ST164、ST166)。すなわち、端末側キャッシュ部206のサーバクエリ時刻と、端末側キャッシュ部206に格納されているデータのうちサーバ10側で更新されたデータと、を更新する。 The cache control unit 204 receives the response message of ST162. Then, the cache control unit 204 stores the server query time and the update master data included in the received response message in the terminal side cache unit 206 (ST164, ST166). That is, the server query time of the terminal-side cache unit 206 and the data stored in the terminal-side cache unit 206 that have been updated on the server 10 side are updated.

<クエリ条件に適合するデータが存在しない場合>
次に、ST158のクエリ条件「確認時刻−α<DB更新時刻」に適合するマスタデータがサーバ側キャッシュ部102に存在しない場合について説明する。
<When there is no data that matches the query conditions>
Next, a case where the master data satisfying the query condition “confirmation time −α <DB update time” of ST158 does not exist in the server-side cache unit 102 will be described.

この場合、端末側キャッシュ部206のマスタデータは最新の状態である。したがって、サーバ制御部100は、ST156で生成したサーバクエリ時刻と、更新マスタデータが存在しない旨を示すフラグ値とを含む応答電文を生成し、キャッシュ制御部204に送信(返信)する(ST162)。 In this case, the master data of the terminal-side cache unit 206 is in the latest state. Therefore, the server control unit 100 generates a response message including the server query time generated by ST156 and the flag value indicating that the update master data does not exist, and sends (replies) to the cache control unit 204 (ST162). ..

キャッシュ制御部204は、ST162の応答電文を受信する。そして、キャッシュ制御部204は、この受信した応答電文に含まれるサーバクエリ時刻を、端末側キャッシュ部206に格納する(ST164、ST166)。 The cache control unit 204 receives the response message of ST162. Then, the cache control unit 204 stores the server query time included in the received response message in the terminal side cache unit 206 (ST164, ST166).

図3の処理によれば、サーバ10のDB106におけるマスタデータの更新が、サーバ側キャッシュ部102に反映されるまでの間のタイムラグによって、端末側キャッシュ部206に反映されなくなるおそれを防止することができる。すなわち、サーバ10側におけるデータ更新が確実に端末20に伝わる。なお、図3の処理は、所定の周期で実行されてよい。 According to the process of FIG. 3, it is possible to prevent the possibility that the update of the master data in the DB 106 of the server 10 will not be reflected in the cache unit 206 on the terminal side due to the time lag until it is reflected in the cache unit 102 on the server side. can. That is, the data update on the server 10 side is surely transmitted to the terminal 20. The process of FIG. 3 may be executed at a predetermined cycle.

また、図3の処理によれば、サーバ10は、更新されたマスタデータのみを端末20に送信する。これにより、サーバ10と端末20との間の通信量が削減され、さらに、端末20におけるマスタデータの更新量も削減されるので、電子カルテシステム1全体の動作速度が向上する。 Further, according to the process of FIG. 3, the server 10 transmits only the updated master data to the terminal 20. As a result, the amount of communication between the server 10 and the terminal 20 is reduced, and the amount of update of the master data in the terminal 20 is also reduced, so that the operating speed of the entire electronic medical record system 1 is improved.

図4は、要求電文にマスタデータの識別子であるIDが設定された場合の処理を示すシーケンスチャートである。 FIG. 4 is a sequence chart showing processing when an ID, which is an identifier of master data, is set in the request message.

キャッシュ制御部204は、端末側キャッシュ部206から、サーバクエリ時刻を取得する(ST200、ST202)。 The cache control unit 204 acquires the server query time from the terminal side cache unit 206 (ST200, ST202).

次に、キャッシュ制御部204は、確認時刻に上記で取得したサーバクエリ時刻を、IDに要求対象のマスタデータのIDを設定して要求電文を生成し、サーバ制御部100へ送信する(ST204)。 Next, the cache control unit 204 sets the ID of the master data to be requested as the ID of the server query time acquired above at the confirmation time, generates a request message, and transmits it to the server control unit 100 (ST204). ..

サーバ制御部100は、ST204の要求電文を受信する。そして、サーバ制御部100は、この要求電文を受信した時刻から、サーバクエリ時刻を生成する(ST206)。 The server control unit 100 receives the request message of ST204. Then, the server control unit 100 generates a server query time from the time when the request message is received (ST206).

次に、サーバ制御部100は、サーバ側キャッシュ部102から、その要求電文に設定されたIDに適合し、かつ、「確認時刻−α<DB更新時刻」に適合するマスタデータを検索する(ST208)。そして、サーバ制御部100は、サーバ側キャッシュ部102から、その検索に適合するマスタデータを取得する(ST210)。ここで、複数のIDが設定されている場合、それらのIDの内の1つでも更新されているならば、サーバ制御部100は、それら全てのIDのデータを取得する。 Next, the server control unit 100 searches the server-side cache unit 102 for master data that matches the ID set in the request message and that matches the "confirmation time-α <DB update time" (ST208). ). Then, the server control unit 100 acquires master data matching the search from the server-side cache unit 102 (ST210). Here, when a plurality of IDs are set, if even one of those IDs is updated, the server control unit 100 acquires the data of all the IDs.

次に、サーバ制御部100は、クエリ条件に適合するデータが存在する場合、ST206で生成したサーバクエリ時刻と、更新データが存在する旨を示すフラグ値と、ST210で取得したマスタデータとを含む応答電文を生成し、キャッシュ制御部204に送信(返信)する(ST212)。なお、更新データが存在しない場合、サーバ制御部100は、上述同様、ST206で生成したサーバクエリ時刻と、更新データが存在しない旨を示すフラグ値とを含む応答電文を生成し、キャッシュ制御部204に送信する。 Next, when the data matching the query conditions exists, the server control unit 100 includes the server query time generated in ST206, the flag value indicating that the update data exists, and the master data acquired in ST210. A response message is generated and transmitted (replied) to the cache control unit 204 (ST212). When the update data does not exist, the server control unit 100 generates a response message including the server query time generated by ST206 and the flag value indicating that the update data does not exist, as described above, and the cache control unit 204 generates a response message. Send to.

キャッシュ制御部204は、ST212の応答電文を受信する。そして、キャッシュ制御部204は、この受信した応答電文に含まれる更新マスタデータを、端末側キャッシュ部206に格納する(ST214、ST216)。すなわち、端末側キャッシュ部206に格納されているマスタデータのうちサーバ10側で更新されたマスタデータを更新する。 The cache control unit 204 receives the response message of ST212. Then, the cache control unit 204 stores the update master data included in the received response message in the terminal side cache unit 206 (ST214, ST216). That is, among the master data stored in the terminal-side cache unit 206, the master data updated on the server 10 side is updated.

なお、ST214において、キャッシュ制御部204は、端末側キャッシュ部206のサーバクエリ時刻を更新しない。なぜなら、端末側キャッシュ部206では、IDに対応するデータのみが更新されるため、もしサーバクエリ時刻を更新してしまうと、他の更新すべきデータが更新されない状態が発生するおそれがあるからである。 In ST214, the cache control unit 204 does not update the server query time of the terminal side cache unit 206. This is because in the terminal-side cache unit 206, only the data corresponding to the ID is updated, so if the server query time is updated, there is a possibility that other data to be updated may not be updated. be.

図4の処理によれば、特定のマスタデータのみを更新することができる。例えば、新たな薬が入荷された際に処方等マスタのみを更新したりすることができる。これにより、サーバ10と端末20との間の通信量が削減され、さらに、端末20におけるマスタデータの更新量も削減されるので、電子カルテシステム1全体の動作速度が向上する。 According to the process of FIG. 4, only specific master data can be updated. For example, when a new drug arrives, only the prescription master can be updated. As a result, the amount of communication between the server 10 and the terminal 20 is reduced, and the amount of update of the master data in the terminal 20 is also reduced, so that the operating speed of the entire electronic medical record system 1 is improved.

図5は、DBのデータを変更する処理を示すシーケンスチャートである。 FIG. 5 is a sequence chart showing a process of changing the data of the DB.

キャッシュ制御部204は、端末20側の更新データを含む要求電文を生成し、サーバ制御部100へ送信する(ST300)。 The cache control unit 204 generates a request message including update data on the terminal 20 side and transmits it to the server control unit 100 (ST300).

サーバ制御部100は、ST300の要求電文を受信し、更新データを抽出する。そして、サーバ制御部100は、この更新データの更新要求を、DB制御部104へ送信する(ST302)。 The server control unit 100 receives the request message of ST300 and extracts the update data. Then, the server control unit 100 transmits an update request for this update data to the DB control unit 104 (ST302).

DB制御部104は、ST302の更新要求を受信し、更新データを抽出する。そして、DB制御部104は、この更新データをDB106に反映(登録又は更新)する(ST304、ST306)。 The DB control unit 104 receives the update request of ST302 and extracts the update data. Then, the DB control unit 104 reflects (registers or updates) this update data in the DB 106 (ST304, ST306).

次に、DB制御部104は、更新要求に対する応答(「更新応答」という)を、サーバ制御部100へ送信(返信)する(ST308)。 Next, the DB control unit 104 transmits (replies) a response to the update request (referred to as “update response”) to the server control unit 100 (ST308).

サーバ制御部100は、ST308の更新応答を受信する。そして、サーバ制御部100は、ST302の更新データをサーバ側キャッシュ部102に反映(登録又は更新)する(ST310、ST312)。これにより、DB106とサーバ側キャッシュ部102の両方に更新データが反映される。 The server control unit 100 receives the update response of ST308. Then, the server control unit 100 reflects (registers or updates) the update data of ST 302 in the server-side cache unit 102 (ST310, ST312). As a result, the update data is reflected in both the DB 106 and the server-side cache unit 102.

次に、サーバ制御部100は、ST300の要求電文に対する応答電文を、キャッシュ制御部204に送信する(ST314)。 Next, the server control unit 100 transmits a response message to the request message of ST300 to the cache control unit 204 (ST314).

キャッシュ制御部204は、ST314の応答電文を受信する。そして、キャッシュ制御部204は、ST300の更新データを、端末側キャッシュ部206に反映(登録又は更新)する(ST316、ST318)。これにより、端末側キャッシュ部206にも更新データが反映される。なお、この場合、キャッシュ制御部204は、端末側キャッシュ部206のサーバクエリ時刻を更新しない。 The cache control unit 204 receives the response message of ST314. Then, the cache control unit 204 reflects (registers or updates) the update data of the ST300 in the terminal-side cache unit 206 (ST316, ST318). As a result, the updated data is also reflected in the cache unit 206 on the terminal side. In this case, the cache control unit 204 does not update the server query time of the terminal side cache unit 206.

図5の処理によれば、端末20による更新データを、サーバ10側のDB106及びサーバ側キャッシュ部102に反映した後に、端末側キャッシュ部206に反映するため、サーバ10と端末20との間に更新データの不整合が発生することを防止することができる。 According to the process of FIG. 5, since the update data by the terminal 20 is reflected in the DB 106 on the server 10 side and the cache unit 102 on the server side and then reflected in the cache unit 206 on the terminal side, it is between the server 10 and the terminal 20. It is possible to prevent inconsistencies in the updated data.

<ハードウェアの構成>
以上、本発明に係る実施形態について図面を参照して詳述してきたが、上述したサーバ10、端末20の機能は、コンピュータプログラムにより実現され得る。
<Hardware configuration>
Although the embodiments according to the present invention have been described in detail with reference to the drawings, the functions of the server 10 and the terminal 20 described above can be realized by a computer program.

図6は、各装置の機能をプログラムにより実現するコンピュータのハードウェア構成を示す図である。このコンピュータ1100は、キーボードやマウス、タッチパッドなどの入力装置1101、ディスプレイやスピーカーなどの出力装置1102、CPU(Central Processing Unit)1103、ROM(Read Only Memory)1104、RAM(Random Access Memory)1105、ハードディスク装置やSSD(Solid State Drive)などの記憶装置1106、DVD−ROM(Digital Versatile Disk Read Only Memory)やUSB(Universal Serial Bus)メモリなどの記録媒体から情報を読み取る読取装置1107、ネットワークを介して通信を行う送受信装置1108を備え、各部はバス1109により接続される。 FIG. 6 is a diagram showing a hardware configuration of a computer that realizes the functions of each device by a program. The computer 1100 includes an input device 1101 such as a keyboard, a mouse, and a touch pad, an output device 1102 such as a display and a speaker, a CPU (Central Processing Unit) 1103, a ROM (Read Only Memory) 1104, and a RAM (Random Access Memory) 1105. A storage device 1106 such as a hard disk device or SSD (Solid State Drive), a reading device 1107 that reads information from a recording medium such as a DVD-ROM (Digital Versatile Disk Read Only Memory) or a USB (Universal Serial Bus) memory, and a network. A transmission / reception device 1108 for communication is provided, and each unit is connected by a bus 1109.

そして、読取装置1107は、上記各装置の機能を実現するためのプログラムを記録した記録媒体からそのプログラムを読み取り、記憶装置1106に記憶させる。あるいは、送受信装置1108が、ネットワークに接続されたサーバ装置と通信を行い、サーバ装置からダウンロードした上記各装置の機能を実現するためのプログラムを記憶装置1106に記憶させる。 Then, the reading device 1107 reads the program from the recording medium on which the program for realizing the function of each of the above devices is recorded, and stores the program in the storage device 1106. Alternatively, the transmission / reception device 1108 communicates with the server device connected to the network, and stores the program downloaded from the server device for realizing the function of each device in the storage device 1106.

そして、CPU1103が、記憶装置1106に記憶されたプログラムをRAM1105にコピーし、そのプログラムに含まれる命令をRAM1105から順次読み出して実行することにより、上記各装置の機能が実現される。 Then, the CPU 1103 copies the program stored in the storage device 1106 to the RAM 1105, and sequentially reads and executes the instructions included in the program from the RAM 1105, thereby realizing the functions of the respective devices.

上述した実施形態は、本発明の説明のための例示であり、本発明の範囲を実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。 The embodiments described above are examples for the purpose of explaining the present invention, and the scope of the present invention is not limited to the embodiments. Those skilled in the art can practice the invention in various other embodiments without departing from the gist of the invention.

本発明に係るサーバ、データ更新方法、及び、電子カルテシステムは、電子カルテを取り扱うシステム又はコンピュータへの利用に好適である。 The server, data update method, and electronic medical record system according to the present invention are suitable for use in a system or a computer that handles electronic medical records.

1 電子カルテシステム
10 サーバ
20 端末
100 サーバ制御部
102 サーバ側キャッシュ部
104 DB制御部
106 DB
200 アプリケーション部
202 モジュール部
204 キャッシュ制御部
206 端末側キャッシュ部
1 Electronic medical record system 10 Server 20 Terminal 100 Server control unit 102 Server side cache unit 104 DB control unit 106 DB
200 Application part 202 Module part 204 Cache control part 206 Terminal side cache part

Claims (4)

端末から受信した要求情報に適合するデータを前記端末へ送信するサーバであって、
データベースと、
前記データベースから取得された少なくとも一部のデータが格納されるキャッシュメモリ部と、
前記要求情報に適合するデータを前記キャッシュメモリ部から取得して、前記要求情報に対応する応答情報を生成する制御部と、を備え、
前記要求情報は、前記端末から送信された前回の要求情報を当該サーバが受信した時刻である第1の確認時刻を含み、
前記制御部は、前記端末から送信された要求情報に含まれる前記第1の確認時刻から所定時間を減算して減算後確認時刻を算出し、データの更新時刻が前記減算後確認時刻よりも新しいデータを前記キャッシュメモリ部から取得して、前記応答情報に含め、
前記所定時間は、前記データベースで更新されたデータが前記キャッシュメモリ部に反映されるまでの時間よりも長い時間である、
サーバ。
A server that sends data that matches the request information received from the terminal to the terminal.
Database and
A cache memory unit in which at least a part of the data acquired from the database is stored, and
A control unit that acquires data conforming to the request information from the cache memory unit and generates response information corresponding to the request information is provided.
The request information includes a first confirmation time which is a time when the server received the previous request information transmitted from the terminal.
The control unit calculates the confirmation time after subtraction by subtracting a predetermined time from the first confirmation time included in the request information transmitted from the terminal, and the data update time is newer than the confirmation time after subtraction. the data acquired from the cache memory unit, including Me in the response information,
The predetermined time is longer than the time until the data updated in the database is reflected in the cache memory unit.
server.
前記制御部は、前記端末から送信された要求情報を受信した時刻を、第2の確認時刻として前記応答情報に含める、
請求項に記載のサーバ。
The control unit includes the time when the request information transmitted from the terminal is received in the response information as the second confirmation time.
The server according to claim 1.
端末及びサーバを備えるシステムにおけるデータ更新方法であって、
前記端末は、前記サーバから取得したデータと、当該データの第1の要求情報を前記サーバが受信した時刻である第1の確認時刻と、が格納される第1のキャッシュメモリ部を備え、
前記サーバは、データベースと、前記データベースから取得された少なくとも一部のデータが格納される第2のキャッシュメモリ部と、を備え、
前記端末は、前記第1の確認時刻を含む第2の要求情報を、前記サーバへ送信し、
前記サーバは、
前記端末から前記第2の要求情報を受信し、
前記第2の要求情報に含まれる前記第1の確認時刻から所定時間を減算して減算後確認時刻を算出し、
データの更新時刻が前記減算後確認時刻よりも新しいデータを、前記第2のキャッシュメモリ部から取得し、
その取得したデータと、前記第2の要求情報を受信した時刻である第2の確認時刻と、を含む応答情報を生成して前記端末へ送信し、
前記端末は、
前記応答情報を受信し、
前記応答情報に含まれるデータで、前記第1のキャッシュメモリ部におけるデータを更新し、
前記応答情報に含まれる前記第2の確認時刻で、前記第1のキャッシュメモリ部における前記第1の確認時刻を更新
前記所定時間は、前記データベースで更新されたデータが前記第2のキャッシュメモリ部に反映されるまでの時間よりも長い時間である、
データ更新方法。
It is a data update method in a system equipped with a terminal and a server.
The terminal includes a first cache memory unit in which data acquired from the server and a first confirmation time, which is the time when the server receives the first request information of the data, are stored.
The server includes a database and a second cache memory unit in which at least a part of data acquired from the database is stored.
The terminal transmits the second request information including the first confirmation time to the server.
The server
The second request information is received from the terminal, and the second request information is received.
A predetermined time is subtracted from the first confirmation time included in the second request information to calculate the confirmation time after subtraction.
Data whose update time is newer than the confirmation time after subtraction is acquired from the second cache memory unit.
Response information including the acquired data and the second confirmation time, which is the time when the second request information is received, is generated and transmitted to the terminal.
The terminal is
Upon receiving the response information,
With the data included in the response information, the data in the first cache memory unit is updated.
In the second confirmation time included in the response information, and updates the first check time in the first cache memory unit,
The predetermined time is longer than the time until the data updated in the database is reflected in the second cache memory unit.
Data update method.
端末及びサーバを有する電子カルテシステムであって、
前記端末は、前記サーバから取得した電子カルテに関するマスタデータと、当該マスタデータの第1の要求情報を前記サーバが受信した時刻である第1の確認時刻と、が格納される第1のキャッシュメモリ部を備え、
前記サーバは、データベースと、前記データベースから取得された少なくとも一部のマスタデータが格納される第2のキャッシュメモリ部と、を備え、
前記端末は、前記第1の確認時刻を含む第2の要求情報を、前記サーバへ送信し、
前記サーバは、
前記端末から前記第2の要求情報を受信し、
前記第2の要求情報に含まれる前記第1の確認時刻から所定時間を減算して減算後確認時刻を算出し、
データの更新時刻が前記減算後確認時刻よりも新しいマスタデータを、前記第2のキャッシュメモリ部から取得し、
その取得したデータと、前記第2の要求情報を受信した時刻である第2の確認時刻と、を含む応答情報を生成して前記端末へ送信し、
前記端末は、
前記応答情報を受信し、
前記応答情報に含まれるマスタデータで、前記第1のキャッシュメモリ部におけるマスタデータを更新し、
前記応答情報に含まれる前記第2の確認時刻で、前記第1のキャッシュメモリ部における前記第1の確認時刻を更新
前記所定時間は、前記データベースで更新されたデータが前記第2のキャッシュメモリ部に反映されるまでの時間よりも長い時間である、
電子カルテシステム。
An electronic medical record system with terminals and servers
The terminal is a first cache memory in which a master data related to an electronic medical record acquired from the server and a first confirmation time, which is a time when the server receives the first request information of the master data, are stored. Equipped with a part
The server includes a database and a second cache memory unit in which at least a part of master data acquired from the database is stored.
The terminal transmits the second request information including the first confirmation time to the server.
The server
The second request information is received from the terminal, and the second request information is received.
A predetermined time is subtracted from the first confirmation time included in the second request information to calculate the confirmation time after subtraction.
The master data whose data update time is newer than the confirmation time after subtraction is acquired from the second cache memory unit.
Response information including the acquired data and the second confirmation time, which is the time when the second request information is received, is generated and transmitted to the terminal.
The terminal is
Upon receiving the response information,
With the master data included in the response information, the master data in the first cache memory unit is updated.
In the second confirmation time included in the response information, and updates the first check time in the first cache memory unit,
The predetermined time is longer than the time until the data updated in the database is reflected in the second cache memory unit.
Electronic medical record system.
JP2017076152A 2017-04-06 2017-04-06 Server, data update method, and electronic medical record system Active JP6971610B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017076152A JP6971610B2 (en) 2017-04-06 2017-04-06 Server, data update method, and electronic medical record system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017076152A JP6971610B2 (en) 2017-04-06 2017-04-06 Server, data update method, and electronic medical record system

Publications (2)

Publication Number Publication Date
JP2018180731A JP2018180731A (en) 2018-11-15
JP6971610B2 true JP6971610B2 (en) 2021-11-24

Family

ID=64275396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017076152A Active JP6971610B2 (en) 2017-04-06 2017-04-06 Server, data update method, and electronic medical record system

Country Status (1)

Country Link
JP (1) JP6971610B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114185905A (en) * 2021-12-06 2022-03-15 蓝信移动(北京)科技有限公司 Cache data updating method, apparatus, device, storage medium, and program

Also Published As

Publication number Publication date
JP2018180731A (en) 2018-11-15

Similar Documents

Publication Publication Date Title
US20060242144A1 (en) Medical image data processing system
US20150339359A1 (en) Computer system, metadata management method, and recording medium
CN113761294B (en) Data management method, device, storage medium and electronic equipment
JP5923308B2 (en) Federated PACS distributed patient registry
US20130197940A1 (en) System for Automated Health Information Exchange
JP6268624B1 (en) Data management system
US11416492B2 (en) System and methods for caching and querying objects stored in multiple databases
US20170323056A1 (en) Patient care record conveyance
JP2013196565A (en) Database processing method, and database processor
US20140380012A1 (en) System and Methods of Data Migration Between Storage Devices
CN102436633A (en) Data management method and system as well as database system
JP2008310634A (en) Database search device and database search program
US20150032961A1 (en) System and Methods of Data Migration Between Storage Devices
JP6971610B2 (en) Server, data update method, and electronic medical record system
US20210382914A1 (en) Reading own writes using context objects in a distributed database
JP5904782B2 (en) Medical information management system and medical information management method
CN112328637B (en) High-speed distributed data caching method, device, computer equipment and storage medium
JPH09330374A (en) Medical image data base management system
CN107580038B (en) Expert recommendation method and system
CN115344542A (en) Data storage method, device, storage medium and electronic equipment
CN115966275A (en) Method and device for mutually identifying inspection results, storage medium and electronic equipment
JP4468050B2 (en) Medical data management method and system, and terminal used therefor
JP2015219553A (en) Information processor and information processing program
CN104679688A (en) Data access method, device and system
JP2006092028A (en) Data collection device and data collection system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180910

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190704

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20191107

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210520

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211102

R150 Certificate of patent or registration of utility model

Ref document number: 6971610

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150