(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6191515
(24)【登録日】2017年8月18日
(45)【発行日】2017年9月6日
(54)【発明の名称】ファイル内容比較出力装置
(51)【国際特許分類】
G06F 12/00 20060101AFI20170828BHJP
【FI】
G06F12/00 510B
G06F12/00 515B
【請求項の数】3
【全頁数】9
(21)【出願番号】特願2014-50920(P2014-50920)
(22)【出願日】2014年3月14日
(65)【公開番号】特開2015-176260(P2015-176260A)
(43)【公開日】2015年10月5日
【審査請求日】2016年10月12日
(73)【特許権者】
【識別番号】000006507
【氏名又は名称】横河電機株式会社
(72)【発明者】
【氏名】宮薗 慎一
【審査官】
桜井 茂行
(56)【参考文献】
【文献】
特開2007−072749(JP,A)
【文献】
特開2001−265630(JP,A)
【文献】
特開2010−102563(JP,A)
【文献】
特開2000−231506(JP,A)
【文献】
英国特許出願公開第2351167(GB,A)
【文献】
米国特許出願公開第2006/0015604(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/00
G06F 17/20−17/30
(57)【特許請求の範囲】
【請求項1】
大項目と小項目とで分類され、小項目に値が設定されている2つのファイル同士を比較し、比較結果を出力するファイル内容比較出力装置であって、
処理対象の2つのファイルを読み込むファイル入力部と、
読み込んだファイルを名称、親項目、項目タイプ、値を含んだ構造体である項目ブロックに分割する構造解析部と、
名称と親項目とが一致する小項目の項目ブロック同士でペアを作成し、値の異なる項目ブロックおよびペアを作成できない項目ブロックを抽出し、
抽出された小項目の項目ブロックに対応する大項目の項目ブロックを抽出し、
抽出された大項目の項目ブロックを親項目とする小項目の項目ブロックを抽出し、
抽出された項目ブロックに基づいて大項目毎に同じ小項目同士で値を対比させた対比データを作成する比較処理部と、
を備えたことを特徴とするファイル内容比較出力装置。
【請求項2】
前記比較処理部は、抽出された項目ブロックに基づいて大項目毎に同じ小項目同士で値を対比させた前記対比データにおいて、2つのファイル間で異なる値を強調表示することを特徴とする請求項1に記載のファイル内容比較出力装置。
【請求項3】
前記比較処理部は、値が異なるか一致するかの判定条件の設定を受け付け、受け付けた条件に基づいて値の異なる項目ブロックを抽出することを特徴とする請求項1または2に記載のファイル内容比較出力装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2つのファイルの内容を比較し、比較結果を出力するファイル内容比較出力装置に関する。
【背景技術】
【0002】
図11に示すように、2つのファイルの内容を比較し、比較結果を出力するファイル内容比較出力装置300が知られている。本図の例では、ファイル内容比較出力装置300は、設定ファイルA400aと設定ファイルB400bとを読み込んで比較処理を行ない、比較結果420を印刷する。比較結果420は電子データとして出力する場合もある。
【0003】
設定ファイルA400a、設定ファイルB400bは、例えば、
図12に示すように、測定装置のパラメータ設定内容を示すファイルとすることができる。
【0004】
ここでは、両設定ファイル400とも大項目として「レンジ設定」「アラーム設定」が含まれ、大項目「レンジ設定」に小項目として「種類」「レンジ」「スパン下限」「スパン上限」が含まれ、大項目「アラーム設定」に小項目として「アラーム1」「アラーム2」が含まれている。そして、各小項目に対して「電圧」「2V」「−2.0000」等の設定値が記録されている。なお、本図の例では、説明の便宜上量設定ファイル400の項目を一致させているが、両設定ファイルの項目は一致していなくてもよい。
【0005】
比較処理としては、例えば、2つの設定ファイル400の設定値を同じ項目同士で対比させる処理がある。この場合、
図13に示すような比較結果420aが得られる。
【0006】
さらに、2つの設定ファイルで設定値が異なる項目を検出する比較処理を行ない、
図14に示すように、相違点を強調した比較結果420bを出力することも行なわれている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2007−293466号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来の2つのファイルの内容の比較処理における相違点検出は、同じ小項目同士で設定値を比較することにより、一致するか相違するかを判定している。このため、大項目に着目した場合に、どの大項目でどのような相違点があるかを直感的に判断することができなかった。
【0009】
例えば、
図14に示した出力形式では、相違点のない大項目もすべて印刷されるため、相違点のある大項目の把握を直感的に行なえず、一方で、相違点のある小項目のみを抽出して出力させると、その大項目において一致している他の小項目を把握することができない。
【0010】
そこで、本発明は、大項目と小項目とで分類され、小項目に値が設定されている2つのファイル同士を比較し、比較結果を出力するファイル内容比較出力装置において、相違点を含む大項目を直感的に判断できるようにすることを目的とする。
【課題を解決するための手段】
【0011】
上記課題を解決するため、本発明のファイル内容比較出力装置は、大項目と小項目とで分類され、小項目に値が設定されている2つのファイル同士を比較し、比較結果を出力するファイル内容比較出力装置であって、処理対象の2つのファイルを読み込むファイル入力部と、読み込んだファイルを名称、親項目、項目タイプ、値を含んだ構造体である項目ブロックに分割する構造解析部と、名称と親項目とが一致する小項目の項目ブロック同士でペアを作成し、値の異なる項目ブロックおよびペアを作成できない項目ブロックを抽出し、抽出された小項目の項目ブロックに対応する大項目の項目ブロックを抽出し、抽出された大項目の項目ブロックを親項目とする小項目の項目ブロックを抽出し、抽出された項目ブロックに基づいて大項目毎に同じ小項目同士で値を対比させた対比データを作成する比較処理部と、を備えたことを特徴とする。
ここで、前記比較処理部は、抽出された項目ブロックに基づいて大項目毎に同じ小項目同士で値を対比させた前記対比データにおいて、2つのファイル間で異なる値を強調表示することができる。
また、前記比較処理部は、値が異なるか一致するかの判定条件の設定を受け付け、受け付けた条件に基づいて値の異なる項目ブロックを抽出するようにしてもよい。
【発明の効果】
【0012】
本発明によれば、大項目と小項目とで分類され、小項目に値が設定されている2つのファイル同士を比較し、比較結果を出力するファイル内容比較出力装置において、相違点を含む大項目を直感的に判断できるようになる。
【図面の簡単な説明】
【0013】
【
図1】本実施形態に係るファイル内容比較出力装置を示すブロック図である。
【
図2】ファイル内容比較出力装置の動作について説明するフローチャートである。
【
図3】設定ファイルAの項目ブロックへの分割を示す図である。
【
図4】設定ファイルBの項目ブロックへの分割を示す図である。
【
図8】比較対象とする測定ファイルを示す図である。
【
図9】測定ファイルを処理対象としたときの項目ブロックを説明する図である。
【
図10】比較処理における一致条件をカスタマイズする画面の例を示す図である。
【
図11】2つのファイルの内容を比較し、比較結果を出力するファイル内容比較出力装置を示すブロック図である。
【
図13】2つの設定ファイルを同じ項目同士で対比させる比較処理の比較結果を示す図である。
【
図14】2つの設定ファイルで設定値が異なる項目を検出する比較処理の比較結果を示す図である。
【発明を実施するための形態】
【0014】
本発明の実施の形態について図面を参照して説明する。
図1は、本実施形態に係るファイル内容比較出力装置100を示すブロック図である。本図に示すように、ファイル内容比較出力装置100は、設定ファイルA400aと設定ファイルB400bとを読み込んで、比較処理を行ない、比較結果410を印刷する。比較結果410は電子データとして出力することもできる。本例では、設定ファイルA400a、設定ファイルB400bは、測定装置のパラメータ設定内容を示すファイルであり、
図11に示したものと同様とする。
【0015】
ファイル内容比較出力装置100は、ユーザインタフェース部110、ファイル入力部120、構造解析部130、比較処理部140、出力部150を備えている。ファイル内容比較出力装置100は、パーソナルコンピュータ等の汎用的な情報処理装置を用いて構成することができ、これらの機能ブロックは、情報処理装置の演算装置がアプリケーションプログラムを実行することにより、情報処理装置上に構築される。
【0016】
ユーザインタフェース部110は、読み込み対象のファイルの指定の受け付け、比較処理の設定の受け付け、メニューの表示等の処理を行なう。ファイル入力部120は、読み込み対象として指定されたファイルの入力処理を行なう。
【0017】
構造解析部130は、読み込んだファイルの構造解析を行ない、ファイルを項目ブロックに分割する。構造解析の詳細と項目ブロックについては後述する。比較処理部140は、読み込んだ2つのファイルの内容を項目ブロック単位で比較し、相違点を検出する。出力部150は、比較処理の結果を比較結果410として出力する。出力の態様は、印刷であってもいし、電子ファイルとしての出力であってもよい。
【0018】
次に、ファイル内容比較出力装置100が行なう大項目単位の相違点を抽出する処理について
図2のフローチャートを参照して説明する。
【0019】
まず、ユーザインタフェース部110が、ユーザから処理対象とする2つのファイルの指定を受け付ける(S101)。ここでは、設定ファイルA400aと設定ファイルB400bとが指定されたものとする。ファイルの指定は、例えば、所定のフォルダに含まれるファイルのリストを選択可能な状態で表示することで受け付けることができる。
【0020】
ファイルが指定されると、ファイル入力部120が、処理対象として指定されたファイルの読み込みを行なう(S102)。そして、構造解析部130が、読み込んだ2つのファイルそれぞれについて、項目ブロックに分割する(S103)。
【0021】
ここで、項目ブロックは、名称、親、タイプ、入力形式、値からなる構造体であり、大項目、小項目毎に生成される。大項目の場合には、タイプが「大項目」となり、名称が記録される。小項目の場合は、タイプが「小項目」となり、名称、上位の大項目を示す親、値の入力形式、値が記録される。
【0022】
図3は、設定ファイルA400aの項目ブロックへの分割を示し、
図4は、設定ファイルB400bの項目ブロックへの分割を示している。
図3に示すように、設定ファイルA400aは、{「名称:レンジ設定」「タイプ:大項目」}の項目ブロック、{「名称:種類」「親:レンジ設定」「タイプ:小項目」「入力形式:選択形式」「値:2V」}の項目ブロック、{「名称:スパン下限」「親:レンジ設定」「タイプ:小項目」「入力形式:数値入力」「値:−2.0000」}の項目ブロック…といった項目ブロックに分割される。
【0023】
図4に示すように、設定ファイルB400bも、{「名称:レンジ設定」「タイプ:大項目」}の項目ブロック、{「名称:種類」「親:レンジ設定」「タイプ:小項目」「入力形式:選択形式」「値:2V」}の項目ブロック、{「名称:スパン下限」「親:レンジ設定」「タイプ:小項目」「入力形式:数値入力」「値:−1.9000」}の項目ブロック…といった項目ブロックに分割される。
【0024】
図2の説明に戻って、比較処理部140は、小項目の項目ブロック単位で、2つのファイルの内容を比較し、相違する項目ブロックを抽出する(S104)。相違する項目ブロックの抽出は、2つのファイル間で、「タイプ:小項目」を処理対象として、同じ親を持つ同じ名称の項目ブロックのペアを作成し、値が一致するか相違するかを判定することにより行なう。ペアを作成できない項目ブロックは一方にしか小項目が存在しないことを示すため、相違する項目ブロックとして抽出する。
【0025】
本例では、
図5に示すように、「タイプ:小項目」で、同じ「レンジ設定」という親を持ち。同じ「スパン下限」という名称を持つ項目ブロックが相違する項目ブロックとして抽出されることになる。
【0026】
図2の説明に戻って、比較処理部140は、相違する項目ブロックを抽出すると、抽出された項目ブロックの「親」を参照して、対応する「タイプ:大項目」の項目ブロックを抽出する(S105)。この結果、相違点が含まれる大項目だけが抽出され、相違点が含まれない大項目は抽出されないことになる。
【0027】
本例では、「名称:レンジ設定」という「タイプ:大項目」の項目ブロックが相違点を含む大項目として抽出されることになる。
【0028】
そして、比較処理部140は、処理(S105)で抽出された「タイプ:大項目」を親に持つ「タイプ:小項目」の項目ブロックを抽出する(S106)。ここで抽出される「タイプ:小項目」の項目ブロックは、相違点のない項目ブロックも含まれる。
【0029】
本例では、「レンジ設定」を親に持つ、「名称:種類」「名称:スパン下限」「名称:スパン上限」という小項目の項目ブロックが抽出され、「アラーム設定」を親に持つ小項目の項目ブロックは抽出されない。
【0030】
さらに、比較処理部140は、処理(S105)で抽出された「タイプ:大項目」の項目ブロックと、処理(S106)で抽出された「タイプ:小項目」の項目ブロックに基づいて対比データを作成する(S107)。
【0031】
対比データは、
図6に示すように2つのファイルの値を、大項目毎に同じ小項目同士で対比させたデータである。一方のファイルのみに存在する小項目については、他方のファイルの値を空欄としたり、特定の記号を記載すればよい。
【0032】
図2の説明に戻って、比較処理部140は、処理(S104)で抽出された相違する項目ブロックに基づいて、
図7に示すように、対比データにおける相違する値を強調表示する(S108)。強調表示は、例えば、網掛けをしたり、太字にしたり、文字色を変更すること等で行なうことができる。
【0033】
そして、出力部150が、相違点が強調表示された対比データを比較結果410として出力する(S109)。比較結果410は、
図7に示した態様で印刷等される。この比較結果410は、相違点が含まれる大項目だけが抽出され、その大項目に含まれる小項目が表示されており、さらに相違点が強調表示されているため、ユーザは、どの大項目でどのような相違点があるかを直感的に判断することが容易に可能となる。
【0034】
なお、上記の説明では、処理対象のファイルを測定装置の設定ファイルとしたが、処理対象のファイルは測定装置の設定ファイルに限られない。例えば、
図8に示すような測定ファイルを比較対象のファイルとしてもよい。
【0035】
本図の例では、測定ファイル420は、測定対象毎に、各時刻における測定値が記録されている。例えば、測定ファイルA420aでは、{測定対象1について、2014/1/1/10:00における測定値が1.9999}{測定対象1について、2014/1/1/10:01における測定値が2.0000}…{測定対象2について、2014/1/1/10:00における測定値が1.9999}…という具合である。
【0036】
この場合、分割される項目ブロックは、
図9に示すように、「測定対象1」「測定対象2」が大項目となり、各時刻が小項目の名称となる。そして、測定値が各小項目における値となる。このため、測定ファイルA420aと測定ファイルB420b同士で、同じ測定対象に対する同時刻の測定値が一致するか相違するかが判定されることになる。
【0037】
なお、測定値等の比較では、誤差等の影響があるため、厳密に一致するかどうかを判定することが妥当でない場合もある。そこで、
図10に示すようなインタフェースを用いて、一致の条件をカスタマイズできるようにしてもよい。一致の条件のカスタマイズはユーザの希望により行なえることができ、条件はユーザが任意に設定できるようにすることが望ましい。本図の例では、例えば、値の差が0.001以下であれば、両値は一致するものと判定し、相違点として抽出しないような設定が可能となっている。比較処理部140は、設定された一致の条件に基づいて、処理(S104)において相違する項目ブロックを抽出すればよい。
【符号の説明】
【0038】
100…ファイル内容比較出力装置、110…ユーザインタフェース部、120…ファイル入力部、130…構造解析部、140…比較処理部、150…出力部