JP2018041213A - システム、クライアント装置、サーバー装置、およびプログラム - Google Patents
システム、クライアント装置、サーバー装置、およびプログラム Download PDFInfo
- Publication number
- JP2018041213A JP2018041213A JP2016173813A JP2016173813A JP2018041213A JP 2018041213 A JP2018041213 A JP 2018041213A JP 2016173813 A JP2016173813 A JP 2016173813A JP 2016173813 A JP2016173813 A JP 2016173813A JP 2018041213 A JP2018041213 A JP 2018041213A
- Authority
- JP
- Japan
- Prior art keywords
- rule
- check
- unit
- request
- storage unit
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2477—Temporal data queries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
仮にクライアント装置のみでチェックする方式とした場合、クライアント側のユーザーが正規の画面への入力を行わずに、他の何らかの手段を用いて直接、サーバー装置へのリクエストを発行することがあり得る。この場合には、クライアント装置でのチェックを通らないリクエストが発生し得る。すると、不正な入力情報(例えば、データの型の不正や、数値範囲の不正など)をサーバー装置側で処理してしまう可能性が生じる。
また、仮にサーバー装置のみでチェックする方式とした場合、不正な入力情報であってもクライアント装置側からサーバー装置側にリクエストを送信してしまう状況が生じ得る。これにより、通信ネットワークやサーバー装置の負荷が高くなってしまうという問題が起こり得る。また、クライアント装置側での入力チェックが行われないと、ユーザーの操作性が低下する場合があり得る。
その従来技術では、クライアント装置がサーバー装置に対して画面遷移のリクエストを送ったタイミングで、サーバー装置はクライアント装置側のチェック実行機能を、クライアント装置に送信する。そのようなチェック実行機能は、例えば、JavaScript(登録商標)で書かれたソースコードとして、サーバー装置からクライアント装置に送信される。このような従来技術によれば、チェックルールをサーバー装置側で一元的に管理することも可能となる。なお、この従来技術では、クライアント装置側がJavaScript(登録商標)の実行環境を有していることを前提としている。より具体的には、この従来技術では、クライアント装置側が、JavaScript(登録商標)の仮想マシンを備えたウェブブラウザーを用いて実現されることを前提としている。
第1に、クライアント装置側がウェブブラウザーで実現される場合にしか上記の従来技術を適用することができない。つまり、近年増加しつつある、スマートフォンで稼働するアプリケーションや、IoT(Internet of Things)の端末装置などをクライアント側で用いる場合には、上記の従来技術を適用することができない。
第2に、クライアント装置とサーバー装置との間で入力チェックのルールを設定(最新のルールを適用して同期させる)するタイミングが、クライアント装置側からサーバー装置側に画面遷移のリクエストを送信したタイミングに限定されてしまう。そして、その他のタイミングにおいては入力チェックのルールを変更することができない。つまり、一旦ルールを設定すると、次にクライアント装置側から画面遷移のリクエストを送るタイミングまでは、ルールを変更することができない。
クライアント装置は、第1ルール記憶部と、第1チェック実行部と、ユーザーインタフェース制御部と、リクエスト送信部と、ルール更新部とを持つ。第1ルール記憶部は、入力チェックに関するルールを記憶する。第1チェック実行部は、前記第1ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックする。ユーザーインタフェース制御部は、ユーザーインタフェースを通して入力データを受け付ける。リクエスト送信部は、前記サーバー装置側に送信するためのリクエストに含まれる前記入力データの入力チェックを前記第1チェック実行部に依頼するとともに、チェック結果が合格であれば前記リクエストを前記サーバー装置に送信する。ルール更新部は、所定のトリガーに基づいて、前記第1ルール記憶部を更新するためのルールを前記サーバー装置に要求するとともに、前記要求への応答として前記サーバー装置から送られるルールを用いて前記第1ルール記憶部を更新する。
サーバー装置は、第2ルール記憶部と、第2チェック実行部と、リクエスト受信部と、クライアント用ルール生成部とを持つ。第2ルール記憶部は、入力チェックに関するルールを記憶する。第2チェック実行部は、前記第2ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックする。リクエスト受信部は、前記リクエスト送信部から送信される前記リクエストを受信するとともに、前記リクエストに含まれる前記入力データの入力チェックを前記第2チェック実行部に依頼する。クライアント用ルール生成部は、前記ルール更新部から前記ルールの要求を受けると、前記第2ルール記憶部から読み出したルールに基づいてクライアント用のルールを生成し、生成したルールを要求元の前記クライアント装置に送信する。
ここでは、第1の実施形態について説明する。
まず、機能の構成について説明する。
図1は、本実施形態によるアプリケーションシステムを構成する装置と、各装置における概略機能構成とを示す、ブロック図である。なお、同図では、入力情報のチェックと、そのルールの維持・更新に関する機能のみを示している。つまり、同図では、適用業務に特有の機能を示していない。
図示するように、アプリケーションシステム1は、クライアント装置2とサーバー装置3とを含んで構成される。クライアント装置2は、例えば、パーソナルコンピューター(PC)や、スマートフォンや、タブレット端末や、ウェアラブル端末などを用いて実現される。サーバー装置3は、サーバー用コンピューターを用いて実現される。クライアント装置2とサーバー装置3との間は、通信回線(インターネットを含む)で結ばれており、相互に通信可能となっている。
また、サーバー装置3は、リクエスト受信部103と、処理実行部104と、ルール読込部302と、ルール記憶部303と、クライアント用ルール生成部304と、チェック実行部305とを含んで構成される。
アプリケーションシステム1は、クライアント装置2側とサーバー装置3側とで、統合的に入力情報チェックのためのルールを管理する。そのための各部の機能について、次に説明する。
UI制御部101は、クライアント側のユーザーインタフェースを制御する機能を有する。UI制御部101は、ユーザーインタフェースの一つとして、クライアント装置2の画面等から情報を入力するための機能を実現する。UI制御部101は、例えば、画面内に情報を入力するためのフィールドを表示し、そのフィールドに入力される情報を取得する。フィールドは、テキストや数字を入力するためのフィールドの他に、プルダウンメニューや、チェックボックスや、ラジオボタンなどといった、情報入力のための手段を含む。つまり、UI制御部101は、ユーザーインタフェースを通して入力データを受け付ける機能を有する。
リクエスト送信部102は、UI制御部101が取得した情報を受けとり、それらの情報に基づくリクエストをサーバー装置3に対して送信する。なお、リクエスト送信部102は、サーバー装置3にリクエストを送信する前に、入力された情報のチェックをチェック実行部205に依頼する。つまり、リクエスト送信部102は、サーバー装置3側に送信するためのリクエストに含まれる入力データの入力チェックをチェック実行部205に依頼するとともに、チェック結果が合格であればリクエストをサーバー装置3に送信するものである。チェック実行部205によるチェックの結果、エラーがなかった場合には、リクエスト送信部102は、上記のリクエストを送信する。チェック実行部205によるチェックの結果、エラーがあった場合には、リクエスト送信部102は、上記のリクエストを送信せず、エラーメッセージを表示するようUI制御部に処理を戻す。
また、ルール更新部202は、上記の要求に応じてルール受信部203が受信するルールを取得し、取得したルールで、ルール記憶部204を更新する。
つまり、ルール更新部202は、所定のトリガーに基づいて、ルール記憶部204を更新するためのルールをサーバー装置3に要求するとともに、その要求への応答としてサーバー装置3から送られるルールを用いてルール記憶部204を更新するものである。
ルール受信部203は、ルール更新部202からの要求に基づいてクライアント用ルール生成部304が生成したルールを受信する。ルール受信部203は、受信したルールをルール更新部202に渡す。
チェック実行部205は、ルール記憶部204に記憶されているルールを参照することによって、そのルールに基づいて、入力情報のチェックを実行する。前述の通り、チェック実行部205は、リクエスト送信部102からの依頼に基づいて、入力情報のチェックを行う。チェック実行部205は、チェックを実行した結果、エラーがあったか否かを表す情報を、リクエスト送信部102に返す。つまり、チェック実行部205は、リクエスト送信部102から渡されるリクエストをサーバー装置3側に送信してよいかどうかを判定する。
リクエスト受信部103は、クライアント装置2側のリクエスト送信部102から送信されるリクエストを受信する。そして、リクエスト受信部103は、チェック実行部305に、受信したリクエスト内に含まれる情報(クライアント装置2側で入力された情報)のチェックを依頼する。つまり、リクエスト受信部103クライアント装置2側から送信されるリクエストを受信するとともに、リクエストに含まれる入力データの入力チェックをチェック実行部305に依頼するものである。チェック実行部305のチェックの結果、エラーが発見されなかった場合には、リクエスト受信部103は、処理実行部104にそのリクエストの処理を依頼する。チェック実行部305のチェックの結果、エラーが発見された場合には、リクエスト受信部103は、エラー時のための例外処理に制御を渡す。
処理実行部104は、リクエスト受信部103から渡されるリクエストの内容に応じた処理を実行する。なお、処理実行部104が実行する具体的な処理の内容は、アプリケーションシステム1がカバーする業務の内容に依存するものである。
ルール記憶部303は、サーバー装置3側において、入力チェックのためのルールを記憶する。ルール記憶部303が記憶するルールは、サーバー側のチェック実行部305によってチェックのために参照されるとともに、クライアント装置2側に渡すルールを生成するためにクライアント用ルール生成部304によって参照される。なお、ルール記憶部303は、磁気ハードディスク装置や半導体メモリなどの記憶手段を用いて実現される。
図2は、サーバー装置側で入力チェックのルールを更新する処理の手順を示すシーケンスチャートである。なお、このサーバー装置側でのルール更新の処理は、例えば、アプリケーションシステムの起動時あるいは再起動時に実行される。ただし、アプリケーションシステムの稼働中や、アプリケーションシステムの停止中に、サーバー装置側でのルール更新を行うようにしてもよい。
まずステップS1において、ルール読込部302は、入力チェックルールを読み込む。なお、この入力チェックルールは、例えばテキストファイルとして与えられるものである。
次にステップS2において、ルール読込部302は、読み込んだ入力チェックルールを用いて、ルール記憶部303に保持されているルールを更新する。
次にステップS12において、ルール更新部202が、ルール記憶部204にその時点で記憶されているルールのバージョンを確認する。具体的には、ルール更新部202は、ルール記憶部204から現在のバージョン情報を読み出す。なお、バージョン情報は、例えば、日時の文字列の情報である。
次にステップS13において、ルール更新部202は、サーバー装置側のクライアント用ルール生成部304に、ルールの更新要求を送信する。なお、この際、ルール更新部202は、ステップS12で取得した現在のルールのバージョン情報を、更新要求に付けて送信する。
次にステップS15において、クライアント用ルール生成部304は、ルールのバージョン情報をチェックする。即ち、クライアント用ルール生成部304は、クライアント装置側から受け取ったバージョン情報(そのクライアント装置がその時点で保持しているルールのバージョン)と、サーバー装置側で保持しているバージョン情報とを比較する。ここで、比較結果に基づいて処理は分岐する。図において、「alt」と記載されている部分では、比較結果に基づいていずれか一方が実行される。
クライアント装置側のルールのバージョンが最新ではなかった場合、つまりクライアント装置側のルールのバージョンが、サーバー装置側で保持しているルールのバージョンよりも古かった場合には、次のステップS16に進む。
クライアント装置側のルールのバージョンが最新であった場合、つまりクライアント装置側のルールのバージョンが、サーバー装置側で保持しているルールのバージョンと同一であった場合には、ステップS19に飛ぶ。
次にステップS17において、ルール更新部202は、受け取ったルールを用いて、ルール記憶部204を更新する。この更新により、ルール記憶部204に記憶されていた旧ルールは削除される。なお、ルール更新部202は、ルール記憶部204上のルールを更新する際に、バージョン情報もあわせて更新する。
次にステップS18において、ルール更新部202は、UI制御部101に、ルールの変更があったことを示す変更通知を渡す。
ステップS15からS16に進んだ場合、以上で、クライアント装置側でのルール更新の処理を完了する。
ステップS15からS19に進んだ場合、以上で、クライアント装置側でのルール更新の処理を完了する。
次にステップS22において、リクエスト送信部102は、入力データをチェック実行部205に渡し、入力データのチェックを依頼する。
次にステップS23において、チェック実行部205は、ルール記憶部204に記憶されている入力チェック用のルールを参照する。
次にステップS25において、チェック実行部205は、チェック結果をリクエスト送信部102に返す。リクエスト送信部102は、チェック結果に基づき、リクエストをサーバー装置3側に送信するか否かを判断する。チェック結果として、エラーがなかった場合(入力チェック合格の場合)に限り、リクエスト送信部102は、リクエストをサーバー装置3側に送信する。この図に示すのは、入力チェックの結果、エラーがなかった場合である。
なお、チェック結果としてエラーがあった場合(入力チェック不合格の場合)には、リクエスト送信部102は、以後の処理を中止する。つまり、エラーの場合には、リクエスト送信部102は、サーバー装置3側に、リクエストを送信しない。
次にステップS26において、リクエスト送信部102は、クライアント装置2側において入力チェック済みのリクエストを、サーバー装置3に送信する。
次にステップS28において、チェック実行部305は、ルール記憶部303に記憶されている入力チェック用のルールを参照する。
次にステップS30において、チェック実行部305は、チェック結果をリクエスト受信部103に返す。リクエスト受信部103は、チェック結果に基づき、リクエストを処理実行部104に渡すか否かを判断する。チェック結果として、エラーがなかった場合(入力チェック合格の場合)に限り、リクエスト受信部103は、リクエストを処理実行部104に渡す。この図に示すのは、入力値のチェックの結果、エラーがなかった場合である。
なお、チェック結果として、エラーがあった場合(入力チェック不合格の場合)には、リクエスト受信部103は、以後の処理を中止する。つまり、エラーの場合には、リクエスト受信部103は、処理実行部104にリクエストを渡さない。
次にステップS32において、処理実行部104は、処理結果(サーバー処理結果)をリクエスト受信部103に返す。
次にステップS33において、リクエスト受信部103は、処理実行部104から受け取ったサーバー処理結果を、クライアント装置2側のUI制御部101に返送する。UI制御部101は、受信したサーバー処理結果に基づいて画面表示を行う。
ここでは、例として、3つのデータ項目についてのルールを示している。これらの各項目が、UI制御部101によって表示される入力用画面のフィールドに対応している。各データ項目は、item要素に対応する。item要素の属性として、key属性はそのデータ項目の識別名を表し、name属性はそのデータ項目の名称を表す。また、チェック用のルールは、例えば、regexp要素や、length要素や、date−value要素等を用いて表される。
length要素は、ストリング型のデータの長さに関するルールを記述するために用いられる。min属性は、長さの最小値を表す。max属性は、長さの最大値を表す。入力データの長さが、ルールに記述された最小値以上で、且つ最大値以下の場合に、その入力データは正しいものと判定される。入力データの長さが、それ医以外の場合には、エラーと判定される。
date−value要素は、日付型のデータの形式や範囲に関するルールを記述するために用いられる。format属性は、日付の記載形式に関するルールを表す。例えば、formatの値が”YYYY−MM−DD”と指定されている場合には、その形式で記載された日付データが正しいものと判定され、その他の日付データはエラーと判定される。ここで、YYYYは4桁で表される年であり、MMは2桁で表される月であり、DDは2桁で表される日である。また、begin属性およびend属性は、それぞれ、日付の値の範囲(期間)を表すものである。begin属性は、期間の最初の日を表す。end属性は、期間の最後の日を表す。入力データがこの期間の範囲内にある場合には、その日付データは正しいものと判定される。入力データの日付がその期間の範囲外である場合には、エラーと判定される。
また、第2のルールは、データ項目ename(データ項目名は「氏名」)に関するルールである。そして、その文字列の長さに関して、下限を設けず(min=””)、上限を20としている。
また、第3のルールは、データ項目hiredate(データ項目名は「入社年月日」)に関するルールである。そして、日付データの記載形式が「YYYY−MM−DD」であることをチェックしようとするものである。また、日付データが、「2011−10−01」から「2015−09−30」までの期間内にあることをチェックしようとするものである。
図示する通り、このデータは、バージョン情報とルールとを含んでいる。第2行目の「version:」に続く「20150911−1650」がバージョン情報である。そして、第3行目の「rules:」に続く部分がルールである。ルールは、第3行目の左角括弧と第19行目の右角括弧に囲まれた部分に記述されている。この記述は、3個のルールを含んでいる。
2個目のルールは、第9行目の左波括弧と第13行目の右波括弧に囲まれた部分に記述されている。このルールは、データ項目ename(氏名)に関するものであり、ストリング(文字列)の長さについての最小値と最大値とが規定されている。
3個目のルールは、第14行目の左波括弧と第18行目の右波括弧に囲まれた部分に記述されている。このルールは、データ項目hiredate(入社年月日)に関するものであり、日付の表現形式と、日付の範囲(期間の開始日および終了日)が規定されている。
なお、これら3個のルールは、図5に示したルール、図6に示したルールに対応しているものである。
つまり、このリクエストに含まれる入力値に関するチェックの結果、エラーはなかったことが確認される。
ステップS41は、empnoのデータに関するルールに対応している。ステップS41において、与えられたデータempnoが、3桁以上且つ5桁以下の数値であるか否かを判定する。empnoが3桁以上且つ5桁以下の数値である場合(ステップS41:YES)には、次のS42に進む。empnoがその条件を満たさない場合(ステップS41:NO)には、出力が「false」(チェック不合格)であることを決定し、このチェック処理全体を終了する。
ステップS42は、enameのデータに関するルールに対応している。ステップS42において、与えられたデータenameが、長さ20以下の文字列であるか否かを判定する。enameが長さ20以下の文字列である場合(ステップS42:YES)には、次のS43に進む。enameがその条件を満たさない場合(ステップS42:NO)には、出力が「false」(チェック不合格)であることを決定し、このチェック処理全体を終了する。
ステップS43は、hiredateのデータに関するルールに対応している。ステップS43において、与えられたデータhiredateが、YYYY−MM−DDの形式で、且つ2011年10月01日から2015年09月30日までの範囲内であるか否かを判定する。hiredateがYYYY−MM−DDの形式で、且つ2011年10月01日から2015年09月30日までの範囲内である場合(ステップS43:YES)には、出力が「true」(チェック合格)であることを決定し、このチェック処理全体を終了する。hiredateがその条件を満たさない場合(ステップS43:NO)には、出力が「false」(チェック不合格)であることを決定し、このチェック処理全体を終了する。
次に、第2の実施形態について説明する。なお、ここでは、本実施形態に特有の事項を中心に説明し、前実施形態で既に説明した事項については説明を省略する。
図10は、本実施形態によるアプリケーションシステムの概略機能構成を示すブロック図である。図示するように、アプリケーションシステム11は、クライアント装置12とサーバー装置13とを含んで構成される。第1の実施形態と同様に、クライアント装置12とサーバー装置13とは、通信回線等を介して相互に通信可能である。
本実施形態におけるクライアント装置12は、例えば、Raspberry Pi(IoT端末)を用いて実現される。ただし、他の装置によってクライアント装置12を実現してもよい。
また、サーバー装置13は、リクエスト受信部103と、処理実行部104と、ルール読込部302と、ルール記憶部303と、クライアント用ルール生成部314と、チェック実行部305とを含んで構成される。サーバー装置13の特徴は、第1の実施形態におけるクライアント用ルール生成部304に代えてクライアント用ルール生成部314を有する点である。
チェック結果記憶部206は、チェック実行部205によるチェックの実行結果のデータを記憶する。具体的には、チェック結果記憶部206は、チェックの結果が合格であったか不合格であったかを表す統計情報を記憶する。さらに具体的には、チェック結果記憶部206は、入力チェックを行ったデータ項目ごとに、チェック合格の件数と、チェック不合格の件数と、合格率(チェック合格の件数を、チェック試行全体の件数で除した比率)とを記憶する。
ルール更新部212は、第1の実施形態におけるルール更新部202と同様に、サーバー装置13側に対して、ルールの更新を要求する。そして、ルール更新部212は、サーバー装置13側から送られてくるルールで、ルール記憶部204を更新する。ルール更新部212の、本実施形態に特有の機能は、サーバー装置13側に対してルールの更新を要求する際に、チェック結果記憶部206に記憶されているチェック結果の統計情報を送信する点である。
クライアント用ルール生成部314は、第1の実施形態におけるクライアント用ルール生成部304と同様に、ルール記憶部303から読み出したルールを、JSON形式のデータとして、クライアント装置12側に送信する。クライアント用ルール生成部314の本実施形態に特有の機能は、クライアント用のルールを生成する際に、チェック結果の統計情報に基づいて、ルールを選択し、選択されたルールのみを送信する点である。具体的には、例えば、クライアント用ルール生成部314は、チェック合格率が所定の閾値未満であるデータ項目に関してのルールのみを選択し、そのルールのみをクライアント装置12側に送信する。
上記のように、本実施形態の特徴は、チェック結果の情報を統計情報として蓄積し、そのチェック結果の情報に基づいて、サーバー装置13側からクライアント装置12側に送信するルールを絞り込むことである。
なお、サーバー装置13側での入力チェック用のルールの更新の処理は、第1の実施形態におけるそれと同様であるため、ここでは説明を省略する。
まずステップS51において、トリガー生成部201が、ルールの更新を要求する。本実施形態では、一例として、Raspberry Piのサービス起動をトリガーとする。
次にステップS52において、ルール更新部212が、ルール記憶部204にその時点で記憶されているルールのバージョンを確認する。この処理は、図3のステップS12の処理と同様である。
次にステップS53において、ルール更新部212が、チェック結果記憶部206から、チェック結果の情報を読み出す。なお、ここで取得するチェック結果の情報は、当該クライアント装置における過去のチェック結果の統計情報である。チェック結果の情報の具体例については、後述する。
次にステップS54において、ルール更新部212は、サーバー装置側のクライアント用ルール生成部314に、ルールの更新要求を送信する。なお、この際、ルール更新部212は、ステップS52で取得した現在のルールのバージョン情報と、ステップS53で取得したチェック結果の情報とを、更新要求とともに送信する。
次にステップS56において、クライアント用ルール生成部314は、ルールのバージョン情報をチェックする。この処理は、図3のステップS15の処理と同様である。そして、バージョン情報に依存して、処理は分岐する。図において、「alt」と記載されている部分では、バージョン情報に基づいていずれか一方が実行される。
クライアント装置側のルールのバージョンが最新ではなかった場合、次のステップS57に進む。
クライアント装置側のルールのバージョンが最新であった場合、ステップS60に飛ぶ。
なお、クライアント用ルール生成部314は、クライアント装置12側から受信したチェック結果情報に基づいて、ルールを選択し、選択されたルールのみをクライアント装置12側に送信する。具体的には、クライアント用ルール生成部314は、受信したチェック結果情報を参照し、過去のチェック処理における合格率が所定の閾値未満のルールのみを選択する。より具体的には、クライアント用ルール生成部314は、ルール記憶部303から読み出したルールのうち、過去のチェック処理における合格率が所定の閾値未満のkeyに関するルールのみを選択する。ここで、合格率の閾値として例えば0.6を用いる。あるいは、合格率の閾値として、例えば、0.5以上且つ0.7以下の範囲内のいずれかの値を用いる。
また、クライアント用ルール生成部314は、送信するルールに、そのルールのバージョン情報を添付してクライアント装置12側に送信する。
クライアント装置12側では、ルール受信部203がそのルールを受信し、ルール更新部212に渡す。
次にステップS59において、ルール更新部212は、UI制御部101に、ルールの変更があったことを示す変更通知を渡す。
ステップS56からS57に進んだ場合、以上で、クライアント装置側でのルール更新の処理を完了する。
ステップS56からS60に進んだ場合、以上で、クライアント装置側でのルール更新の処理を完了する。
まずステップS71において、入力データを含むリクエストをリクエスト送信部102に渡す。この処理は、図4のステップS21の処理と同様である。
次にステップS72において、リクエスト送信部102は、チェック実行部205にm入力データのチェックを依頼する。この処理は、図4のステップS22の処理と同様である。
次にステップS73において、チェック実行部205は、ルール記憶部204に記憶されているルールを参照する。この処理は、図4のステップS23の処理と同様である。
次にステップS74において、チェック実行部205は、ルール記憶部204から読み出したルールに基づいて、リクエスト送信部102から渡された入力データをチェックする。この処理は、図4のステップS24の処理と同様である。
なお、チェック結果データの具体例と、統計情報の更新のしかたについては、後で、図13を参照しながら説明する。
次にステップS78において、リクエスト受信部103は、受信したリクエストに含まれていた入力データのチェックを、チェック実行部305に依頼する。この処理は、図4のステップS27の処理と同様である。
次にステップS79において、チェック実行部305は、ルール記憶部303に記憶されているルールを参照する。この処理は、図4のステップS28の処理と同様である。
次にステップS80において、チェック実行部305は、リクエスト受信部103から渡された入力データの値をチェックする。この処理は、図4のステップS29の処理と同様である。
次にステップS81において、チェック実行部305は、チェック結果をリクエスト受信部103に返す。リクエスト受信部103は、そのチェック結果に基づき、リクエストを処理実行部104に渡すか否かを判断する。この処理は、図4のステップS30の処理と同様である。
次にステップS83において、リクエスト受信部103は、処理実行部104から受け取ったサーバー処理結果を、クライアント装置12側に返送する。この処理は、図4のステップS33の処理と同様である。
図13は、チェック結果記憶部が記憶するチェック結果データの構成および例を示す概略図である。図示するように、チェック結果記憶部206は、バージョン情報と、チェック結果の統計情報とを有している。バージョン情報は、ルールのバージョンを表す情報である。本実施形態では、バージョン情報として、日時の文字列を有している。チェック結果の統計情報は、データ項目(key)ごとに、true(チェック合格)のカウント数値と、false(チェック不合格)のカウント数値と、rate(合格率)の数値を含む。
また、データ項目empnoに関して、trueの数値は35、falseの数値は2、rateは0.95(35/(35+2))である。データ項目enameに関して、trueの数値は32、falseの数値は3、rateは0.91(32/(32+3))である。データ項目hiredateに関して、trueの数値は17、falseの数値は15、rateは0.53(17/(17+15))である。ただし、rateに関しては小数点第3位を四捨五入している。
ルール更新部212は、サーバー装置13側に対してルールの更新を要求するとき、チェック結果記憶部206から、上述した、バージョン情報およびチェック結果の統計数値を読み出して、サーバー装置13側にそれらの情報を送信する。
また、ルール更新部212は、ルールを更新する際には、チェック結果の統計情報を初期化する。具体的には、ルール更新部212は、チェック結果データを初期化する際に、trueおよびfalseの数値を0にリセットする。
なお、このとき、ルール更新部212は、変更されたルールについてのみ、チェック結果の統計情報を初期化するようにしてもよい。
本実施形態では、クライアント用ルール生成部314が、チェック結果データに基づいて選択したルールのみを、クライアント装置12側に送信することとしている。図7(第1の実施形態)に示したルールでは、データ項目empno,ename,hiredateの各々に関するルールを、サーバー装置側からクライアント装置側に送るようにしていた。本実施形態では、所定の基準による条件(例えば、rate(チェック合格率)が60%未満)を満たすルールのみが、サーバー装置側からクライアント装置側に送られる。ここでは、クライアント用ルール生成部314が、チェック合格率が60%未満である(図13を参照)hiredateのみについて、ルールを送信する。クライアント用ルール生成部314は、他のデータ項目(empnoとename)についてのルールをクライアント装置12側に送らない。
第1変形例では、ルール更新部212は、所定の頻度で、チェック結果の統計情報として、すべてのデータ項目に関して、閾値未満(例えば、60%未満)の値を、サーバー装置13側に送信する。このようにすべてのデータ項目に関して閾値未満の値を送信した場合には、サーバー装置13は、すべてのデータ項目に関するルールをクライアント装置12側に送信する。これにより、すべてのデータ項目に関して、上記所定の頻度で、チェック結果の統計を取得することが可能となる。
Claims (8)
- クライアント装置とサーバー装置とを備えるシステムであって、
前記クライアント装置は、
入力チェックに関するルールを記憶する第1ルール記憶部と、
前記第1ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックする第1チェック実行部と、
ユーザーインタフェースを通して入力データを受け付けるユーザーインタフェース制御部と、
前記サーバー装置側に送信するためのリクエストに含まれる前記入力データの入力チェックを前記第1チェック実行部に依頼するとともに、チェック結果が合格であれば前記リクエストを前記サーバー装置に送信するリクエスト送信部と、
所定のトリガーに基づいて、前記第1ルール記憶部を更新するためのルールを前記サーバー装置に要求するとともに、前記要求への応答として前記サーバー装置から送られるルールを用いて前記第1ルール記憶部を更新するルール更新部と、
を備え、
前記サーバー装置は、
入力チェックに関するルールを記憶する第2ルール記憶部と、
前記第2ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックする第2チェック実行部と、
前記リクエスト送信部から送信される前記リクエストを受信するとともに、前記リクエストに含まれる前記入力データの入力チェックを前記第2チェック実行部に依頼するリクエスト受信部と、
前記ルール更新部から前記ルールの要求を受けると、前記第2ルール記憶部から読み出したルールに基づいてクライアント用のルールを生成し、生成したルールを要求元の前記クライアント装置に送信するクライアント用ルール生成部と、
を備える、
システム。 - 前記クライアント装置は、
前記第1チェック実行部によるチェック結果に関する情報を記憶するチェック結果記憶部、をさらに備え、
前記第1チェック実行部は、実行したチェックのチェック結果に関する情報を前記チェック結果記憶部に書き込み、
前記ルール更新部は、前記第1ルール記憶部を更新するためのルールを前記サーバー装置に要求する際に、前記チェック結果記憶部から読み出した前記チェック結果に関する情報をあわせて前記サーバー装置に送信するものであり、
前記サーバー装置において、
前記クライアント用ルール生成部は、前記ルール更新部から受信した前記チェック結果に関する情報に基づいて、チェック結果としてチェック合格率が所定の閾値より低いデータ項目のみについて前記クライアント用のルールを生成し、生成した前記ルールを要求元の前記クライアント装置に送信する、
請求項1に記載のシステム。 - 前記クライアント用ルール生成部は、前記ルール更新部から受信した前記チェック結果を記憶するものであり、記憶した前記チェック結果に基づいて、他のクライアント装置におけるルール更新部からのルールの要求があったときに、チェック結果としてチェック合格率が所定の閾値より低いデータ項目のみについて当該他のクライアント用のルールを生成し、生成したルールを要求元である当該他のクライアント装置に送信する、
請求項2に記載のシステム。 - 前記クライアント装置は、
前記第1チェック実行部によるチェック結果に関する情報を記憶するチェック結果記憶部、をさらに備え、
前記第1チェック実行部は、実行したチェックのチェック結果に関する情報を前記チェック結果記憶部に書き込み、
前記ルール更新部は、前記第1ルール記憶部を更新するためのルールを前記サーバー装置側から受け取った際に、前記チェック結果記憶部から読み出した前記チェック結果に関する情報に基づき、チェック結果としてチェック合格率が所定の閾値より低いデータ項目のみについての前記サーバー装置側から受け取ったルールを用いて、前記第1ルール記憶部を更新する、
請求項1に記載のシステム。 - 入力チェックに関するルールを記憶するルール記憶部と、
前記ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックするチェック実行部と、
ユーザーインタフェースを通して入力データを受け付けるユーザーインタフェース制御部と、
前記サーバー装置側に送信するためのリクエストに含まれる前記入力データの入力チェックを前記チェック実行部に依頼するとともに、チェック結果が合格であれば前記リクエストを前記サーバー装置に送信するリクエスト送信部と、
所定のトリガーに基づいて、前記ルール記憶部を更新するためのルールを前記サーバー装置に要求するとともに、前記要求への応答として前記サーバー装置から送られるルールを用いて前記ルール記憶部を更新するルール更新部と、
を備えるクライアント装置。 - 入力チェックに関するルールを記憶するルール記憶部と、
前記ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックするチェック実行部と、
クライアント装置から送信されるリクエストを受信するとともに、前記リクエストに含まれる前記入力データの入力チェックを前記チェック実行部に依頼するリクエスト受信部と、
前記クライアント装置からルールの要求を受けると、第2ルール記憶部から読み出したルールに基づいてクライアント用のルールを生成し、生成したルールを要求元のクライアント装置に送信するクライアント用ルール生成部と、
を備えるサーバー装置。 - コンピューターを、
入力チェックに関するルールを記憶するルール記憶部、
前記ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックするチェック実行部、
ユーザーインタフェースを通して入力データを受け付けるユーザーインタフェース制御部、
前記サーバー装置側に送信するためのリクエストに含まれる前記入力データの入力チェックを前記チェック実行部に依頼するとともに、チェック結果が合格であれば前記リクエストを前記サーバー装置に送信するリクエスト送信部、
所定のトリガーに基づいて、前記ルール記憶部を更新するためのルールを前記サーバー装置に要求するとともに、前記要求への応答として前記サーバー装置から送られるルールを用いて前記ルール記憶部を更新するルール更新部、
として機能させるためのプログラム。 - コンピューターを、
入力チェックに関するルールを記憶するルール記憶部、
前記ルール記憶部に記憶されている前記ルールに基づいて入力データをチェックするチェック実行部、
クライアント装置から送信されるリクエストを受信するとともに、前記リクエストに含まれる前記入力データの入力チェックを前記チェック実行部に依頼するリクエスト受信部、
前記クライアント装置からルールの要求を受けると、第2ルール記憶部から読み出したルールに基づいてクライアント用のルールを生成し、生成したルールを要求元のクライアント装置に送信するクライアント用ルール生成部、
として機能させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016173813A JP6629157B2 (ja) | 2016-09-06 | 2016-09-06 | システム |
US15/694,291 US10885016B2 (en) | 2016-09-06 | 2017-09-01 | System, client device, server device, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016173813A JP6629157B2 (ja) | 2016-09-06 | 2016-09-06 | システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018041213A true JP2018041213A (ja) | 2018-03-15 |
JP6629157B2 JP6629157B2 (ja) | 2020-01-15 |
Family
ID=61281642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016173813A Active JP6629157B2 (ja) | 2016-09-06 | 2016-09-06 | システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10885016B2 (ja) |
JP (1) | JP6629157B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7198321B1 (ja) | 2021-08-20 | 2022-12-28 | 株式会社オービック | サーバ装置、リクエスト検証方法及びリクエスト検証プログラム |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110647509B (zh) * | 2018-06-26 | 2024-05-14 | 北京亿阳信通科技有限公司 | 一种集客数据的快速核查共享方法及装置 |
CN112437000A (zh) * | 2020-11-16 | 2021-03-02 | 平安信托有限责任公司 | 消息队列推送方法、装置、计算机设备及存储介质 |
CN112817953A (zh) * | 2021-01-22 | 2021-05-18 | 深圳依时货拉拉科技有限公司 | 一种数据校验的方法、装置、计算机设备及计算机可读存储介质 |
US11916971B2 (en) * | 2022-02-01 | 2024-02-27 | Capital One Services, Llc | Updating security rule sets using repository switching |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003281254A (ja) * | 2002-03-20 | 2003-10-03 | Fujitsu Ltd | 入力情報処理方法および入力情報処理プログラム |
WO2008129915A1 (ja) * | 2007-04-18 | 2008-10-30 | Hitachi Software Engineering Co., Ltd. | 電子メールのフィルタリング手段を備えた機器 |
JP2010113478A (ja) * | 2008-11-05 | 2010-05-20 | Toshiba Corp | 情報処理システムに用いるクライアント装置、サーバ装置及びフレームワークプログラム |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7848948B2 (en) | 1996-10-25 | 2010-12-07 | Ipf, Inc. | Internet-based product brand marketing communication network configured to allow members of a product brand management team to communicate directly with consumers browsing HTML-encoded pages at an electronic commerce (EC) enabled web-site along the fabric of the world wide web (WWW), using programable multi-mode virtual kiosks (MMVKS) driven by server-side components and managed by product brand management team members |
JPH10207699A (ja) | 1997-01-21 | 1998-08-07 | Hitachi Ltd | 表示画面上のデータ項目処理方法 |
US6070184A (en) | 1997-08-28 | 2000-05-30 | International Business Machines Corporation | Server-side asynchronous form management |
JP3931941B2 (ja) | 1999-01-26 | 2007-06-20 | 富士ゼロックス株式会社 | ワークプロセス管理装置及びワークプロセス管理方法 |
US7175079B1 (en) | 1999-05-25 | 2007-02-13 | Silverbrook Research Pty Ltd | Method and system for online purchasing |
JP2001005651A (ja) | 1999-06-21 | 2001-01-12 | Institute Of Computer Based Software Methodology & Technology | ソフトウェアの決定方法、ソフトウェアの使用方法、記録媒体、処理装置、ソフトウェアの保守方法、ソフトウェアの移植方法、ソフトウェアの管理方法、処理経路図の作成方法、パレット関数の作成方法、パレットの領域の決定方法、パレット連鎖関数の作成方法、位相要素の作成方法、論理要素の作成方法、作用要素の作成方法、ソフトウェアの実装方法、ソフトウェア開発方法、データ構造の置換方法、データ値の置換方法、従来型プログラムの分析方法、ソフトウェア開発管理方法、ソフトウェアの運用管理方法、並列コンピュータ及び判断補助装置 |
JP4173650B2 (ja) | 2001-04-20 | 2008-10-29 | 株式会社ワイズスタッフ | メールマガジン配信装置 |
DE60218926T2 (de) | 2001-05-08 | 2007-12-13 | Matsushita Electric Industrial Co., Ltd., Kadoma | Verfahren und System für Zweiwegkommunikation und Informationsverarbeitungsapparat |
JP4562974B2 (ja) | 2001-05-08 | 2010-10-13 | パナソニック株式会社 | 双方向通信方法、双方向通信システム及び、情報処理装置 |
US8589861B2 (en) | 2002-11-06 | 2013-11-19 | Code Valley Corp Pty Ltd | Code generation |
CA2503629C (en) | 2002-11-06 | 2014-07-08 | Code Valley Pty Limited | Code generation |
EP2562664B1 (en) | 2007-06-27 | 2020-11-25 | Roche Diabetes Care GmbH | System for determining an insulin delivery and communicating a dose in automated pancreas software |
JP2009070189A (ja) | 2007-09-13 | 2009-04-02 | Access Co Ltd | 入力支援サーバ、入力支援システムおよび入力支援プログラム |
JP2009181320A (ja) | 2008-01-30 | 2009-08-13 | Toshiba Corp | 情報処理システム、サーバ装置、クライアント装置および情報処理プログラム |
JP5357443B2 (ja) | 2008-04-10 | 2013-12-04 | キヤノンソフトウェア株式会社 | ワークフローサーバ、ワークフローシステム、ワークフローシステムにおいて外部データへアクセスする方法及びそのプログラム、並びにそのプログラムを記録した記録媒体 |
JP5200807B2 (ja) | 2008-09-19 | 2013-06-05 | 富士通株式会社 | モバイル端末、データ管理システム及びプログラム |
JP5023038B2 (ja) | 2008-10-28 | 2012-09-12 | 株式会社東芝 | プログラム生成用プログラム及びプログラム生成装置 |
JP2010141416A (ja) * | 2008-12-09 | 2010-06-24 | Nakayo Telecommun Inc | 伝言メール送信機能を有する電話装置 |
JP5294885B2 (ja) | 2009-01-07 | 2013-09-18 | 株式会社日立製作所 | サービス中継装置、サービス中継方法、この方法を実行するためのプログラム |
JP4643718B2 (ja) | 2009-02-06 | 2011-03-02 | 株式会社東芝 | セキュリティ強化プログラム及びセキュリティ強化装置 |
JP5233919B2 (ja) | 2009-08-31 | 2013-07-10 | 富士通株式会社 | 図書館の管理方法および図書館の管理装置 |
JP5233917B2 (ja) | 2009-08-31 | 2013-07-10 | 富士通株式会社 | 図書館管理方法および図書館管理装置 |
WO2012021507A2 (en) | 2010-08-09 | 2012-02-16 | Nike International Ltd. | Monitoring fitness using a mobile device |
US9532734B2 (en) | 2010-08-09 | 2017-01-03 | Nike, Inc. | Monitoring fitness using a mobile device |
CA2821741C (en) | 2010-12-16 | 2016-05-24 | Nike International Ltd. | Methods and systems for encouraging athletic activity |
US20130254699A1 (en) | 2012-03-21 | 2013-09-26 | Intertrust Technologies Corporation | Systems and methods for managing documents and other electronic content |
KR101916837B1 (ko) | 2012-04-26 | 2019-01-24 | 아마데우스 에스.에이.에스. | 일괄 지향 연산을 사용하는 데이터베이스 시스템 |
TWI571754B (zh) * | 2015-02-02 | 2017-02-21 | 群暉科技股份有限公司 | 用來進行檔案同步控制之方法與裝置 |
US11972367B2 (en) * | 2017-07-11 | 2024-04-30 | Sap Se | Pattern recognition to detect erroneous data |
-
2016
- 2016-09-06 JP JP2016173813A patent/JP6629157B2/ja active Active
-
2017
- 2017-09-01 US US15/694,291 patent/US10885016B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003281254A (ja) * | 2002-03-20 | 2003-10-03 | Fujitsu Ltd | 入力情報処理方法および入力情報処理プログラム |
WO2008129915A1 (ja) * | 2007-04-18 | 2008-10-30 | Hitachi Software Engineering Co., Ltd. | 電子メールのフィルタリング手段を備えた機器 |
JP2010113478A (ja) * | 2008-11-05 | 2010-05-20 | Toshiba Corp | 情報処理システムに用いるクライアント装置、サーバ装置及びフレームワークプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7198321B1 (ja) | 2021-08-20 | 2022-12-28 | 株式会社オービック | サーバ装置、リクエスト検証方法及びリクエスト検証プログラム |
JP2023029080A (ja) * | 2021-08-20 | 2023-03-03 | 株式会社オービック | サーバ装置、リクエスト検証方法及びリクエスト検証プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20180067983A1 (en) | 2018-03-08 |
JP6629157B2 (ja) | 2020-01-15 |
US10885016B2 (en) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6629157B2 (ja) | システム | |
US9798522B2 (en) | Generating command line interface using application programming interface specification | |
CN106796526B (zh) | Json样式表语言变换 | |
US11729053B1 (en) | Dynamic application configuration techniques | |
KR102546577B1 (ko) | 미니 프로그램 데이터 처리 방법 및 장치 | |
US20210294911A1 (en) | Method for providing applet service capability, electronic device, and storage medium | |
EP3813326B1 (en) | Method and apparatus for processing webpage, device, and storage medium | |
CN108076125A (zh) | 接口配置方法及系统 | |
CN111143383B (zh) | 一种数据更新方法、装置、电子设备及存储介质 | |
CN111400743B (zh) | 基于区块链网络的事务处理方法、装置、电子设备和介质 | |
JP2018112875A (ja) | ナレッジ管理装置、ナレッジ管理方法およびコンピュータプログラム | |
US11403093B1 (en) | Application modification with proxy service process | |
KR101762861B1 (ko) | 하나 이상의 기능 모듈을 이용한 확장형 연산 처리 시스템, 하나 이상의 기능 모듈을 이용한 정보 처리 방법 및 이를 위한 컴퓨터 프로그램 | |
US10423711B2 (en) | Generating style sheets during runtime | |
US20180077259A1 (en) | Unified data rendering for multiple upstream services | |
JP6372947B1 (ja) | チャットシステム、チャット方法、およびプログラム | |
JP2015046818A (ja) | アプリケーションシステム、携帯端末、サーバコンピュータおよびコンピュータプログラム | |
CN113094139A (zh) | Ui样式更新方法和装置 | |
US20240004741A1 (en) | Edge cloud caching using real-time customer journey insights | |
JP6957396B2 (ja) | 管理装置、サーバ装置、ログ管理方法、管理プログラムおよびサーバプログラム | |
JP4701651B2 (ja) | プログラム、サーバ装置、及び制御方法 | |
CN108268661A (zh) | 一种自定义单据流程的自动预警的方法 | |
US20230376628A1 (en) | Privacy Manager for Connected TV and Over-the-Top Applications | |
JP2019191931A (ja) | 情報処理システム、入力値検証支援プログラム、および入力値検証プログラム | |
KR102218355B1 (ko) | 입력되는 글자에 따른 폰트 관리 수행 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180329 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190108 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20190304 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190806 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191001 |
|
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: 20191105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6629157 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |