部品表表示装置、部品表表示方法およびプログラム
【課題】属性を列として表を表示する部品表表示装置および部品表表示方法において、前記列方向の幅を狭く、また、表中の空欄を少なくし、狭い面積で多くの情報を表示する。
【解決手段】複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを表として表示する場合において、前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示する。
【解決手段】複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを表として表示する場合において、前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、部品表を表示する技術に関するものである。
【背景技術】
【0002】
自動車やコンピュータ等の工業製品(以下製品)は複数の部品により構成されている。製品を構成する部品を管理するために、製品を構成する部品の属性(部品名、メーカー名など)と、部品の従属関係を管理できる部品表(BOM:Bill of Materials)が広く使われている。
【0003】
特許文献1には、生産品の部品表を生成する部品表生成装置が開示されている。前記部品表生成装置は、部品情報を格納する部品情報DB111を用いて部品表を生成する。図20は、部品情報DB111に登録された部品情報の例を示したテーブルである。図20に示すように、部品情報DB111には、行に相当するレコードごとに、部品の図面番号に対応させて、この部品の仕様として、この部品の図面名称、部品名、寸法、材質および質量の情報を含んで登録されている。
【0004】
また図21には、特許文献1における、部品表情報をディスプレイ装置に出力した場合の画面表示の例を示す。図21に示した部品表400には、部品コード、その部品の図面が属する階層を示す表示、その部品の使用数量、図面番号、部品名、寸法、材質、および、質量などの情報を含んで表示されている。
【0005】
特許文献2には、設計部品表から生産部品表を自動的に作成し、生産部品表の編集作業を効率化する製品部品表編集装置が開示されている。前記製品部品編集装置が備える記憶装置は、品目データDa2を記憶する。品目データDa2で定義される品目仕様は、文字又は数値情報であり、仕様細目名を表す属性と、仕様細目情報を表す属性値のペアの集合となっている。図22に示す品目データDa2は、その一例であり、品目属性として、品目の区分、型式、性能、意匠、数量、納期などの仕様細目が定義されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−139337(平成18年6月1日公開)
【特許文献2】特開2000−202746(平成12年7月25日公開)
【発明の概要】
【発明が解決しようとする課題】
【0007】
前記図20で例示された部品情報DB111においては、部品情報が備える属性は、寸法、材質、質量の3つであり、全ての部品情報が漏れ無く前記3つの属性を備えている。
【0008】
一方、前記図22で例示された品目データDa2においては、品目仕様は、文字又は数値情報であり、仕様細目名を表す属性と、仕様細目情報を表す属性値のペアの集合として定義されている。各部品は共通する属性として、「品目区分」を備えるが、他の属性については、品目毎に備える属性が異なる。例えば、「制御部B」は「入出力仕様」という属性と「制御仕様」という属性を備え、「駆動部C」は「駆動仕様」という属性と「最高速度」という属性を備える。
【0009】
図22の品目データDaのように、品目毎に備える属性が異なる部品情報DBを用いて、図21に示すような部品表を作成する場合、部品表の列の数が多くなり、かつ空白欄が多くなる。
【0010】
図23に示す部品情報を用いて部品表を作成する場合を例にとって、背景技術の問題点を具体的に説明する。部品情報の各レコードは、「品番」および「品名」を備える。品名としては、開発モデル、ユニットA、抵抗、コンデンサ、プリント基板、外観樹脂成型品A、外観樹脂成型品B、液晶パネル、ビス、テープがある。さらに品名毎に、品名によって異なる属性を備える。例えば、品名がコンデンサの場合には、メーカ、サイズ[mm]、静電容量、定格電圧を属性として備える。また、品名がテープの場合には、メーカ、サイズ[mm]、粘着材、厚さを属性として備える。
【0011】
図24に、図23に示す部品情報を用い、背景技術にならって作成した部品表を示す。図24に示す部品表においては、各属性がそれぞれ独立した列として表示される。すなわち、図23に示した部品情報が備える属性であるメーカ、サイズ[mm]、抵抗値[Ω]、静電容量[pF]、定格電圧[V]、粘着材、厚さ[mm]、樹脂、画面サイズ[インチ]、解像度がそれぞれ縦1列として表示される。各品番を示す行と各属性を示す列とが交差する桝目には、該品番によって特定される部品が備える該属性に係る属性値が表示されるが、該部品・該属性に係る属性値が存在しない場合は、空欄を表示する。
【0012】
品名が異なる複数種類の部品からなる部品表を表示しようとする場合、品名によって備える属性が異なるため、表示すべき属性の数が多くなる。例えば、図23に示す部品情報では、1つの品番に係る属性の数は、最大で4個であるが、図24の部品表においては合計10列となっている。そのため、属性を表示するための幅が広くなり、視認性が低下したり、部品表が画面表示幅ないし印字幅に収まらなかったりする場合がある。
【0013】
また、空欄の割合が多くなる場合がある。例えば、図24の部品表では、P1からP11の計11個の品番について、「メーカ」から「解像度」までの10個の属性が存在する。すなわち、属性値を表示する桝目として、11×10=110個の枡目が存在することになるが、そのうち、属性値が表示されているのは、30個にすぎず、残りの80個については空欄である。空欄が多いということは、情報を表示していない面積が広いということである。そのため、表示画面や印字紙面を有効的に活用することができない。
【0014】
また、部品表の面積が広くなる場合がある。図24に示す部品表は、横幅が広く、空欄が多い。そのため、部品表の面積が広い。従って、部品表が表示画面ないし印字紙面に収まらない場合がある。
【0015】
上記に説明した問題に鑑み、本発明は、属性を列として表示する部品表を表示する部品表表示装置および部品表表示方法において、前記列方向の幅を狭くすることを目的とする。
【0016】
また、表中の空欄を少なくし、狭い面積で多くの情報を表示することを目的とする。
【課題を解決するための手段】
【0017】
上記課題を解決するために、本発明の部品表示装置は、複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示装置であって、前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする。
【0018】
また、本発明の部品表示方法は、複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示方法であって、前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする。
【0019】
また、本発明のプログラムは、本発明の部品表表示方法をコンピュータに実行させるためのプログラムである。
【発明の効果】
【0020】
本発明の部品表表示装置は、属性を列として表示する部品表を表示する部品表表示装置および部品表表示方法において、前記列方向の幅を狭くすることができる。
【0021】
また、表中の空欄を少なく、狭い面積で多くの情報を表示することができる。
【図面の簡単な説明】
【0022】
【図1】本実施の形態に係る表示装置である部品表表示装置の構成を示すブロック図である。
【図2】本実施の形態に係る部品情報に係るデータ構造を示す図である。
【図3】本実施の形態に係る品名テーブルの例を示す図である。
【図4】本実施の形態に係る品番テーブルの例を示す図である。
【図5】本実施の形態に係る属性名テーブルの例を示す図である。
【図6】本実施の形態に係る属性値テーブルの例を示す図である。
【図7】本実施の形態に係る親子テーブルのデータ構造を示す図である。
【図8】本実施の形態に係る親子テーブルの例を示す図である。
【図9】本実施の形態に係る部品表を示す図である。
【図10】本実施の形態に係る処理フローを示すフロー図である。
【図11】本実施の形態に係る抽出されたレコードを示す図である。
【図12】各属性番号に係る出現率を算出した例を示す図である。
【図13】本実施の形態に係る「備考表示」を追加したテーブルを示す図である。
【図14】本実施の形態に係る「備考」列を示すテーブルを示す図である。
【図15】本実施の形態に係る属性値の数の集計例を示す図である。
【図16】本実施の形態に係る属性表示幅を算出したテーブルを示す図である。
【図17】本実施の形態に係る「備考表示」を追加したテーブルを示す図である。
【図18】本実施の形態に係る「備考」列を示すテーブルを示す図である。
【図19】本実施の形態に係る部品表を示す図である。
【図20】従来技術に係る部品情報の例を示す図である。
【図21】従来技術に係る画面表示の例を示す図である。
【図22】従来技術に係る品目データの例を示す図である。
【図23】従来技術に係る部品情報の例を示す図である。
【図24】従来技術に係る部品表の例を示す図である。
【発明を実施するための形態】
【0023】
本発明の表示装置および表示方法に係る実施形態について、以下に詳細に説明する。
【実施例1】
【0024】
図1は、本実施例に係る表示装置である部品表表示装置1の構成を示すブロック図である。本実施例の部品表表示装置1は、CPU2、メモリ、ハードディスク等からなる記憶部3、ディスプレイ等からなる表示部4、マウス、キーボード等からなる手入力部5、通信IF6を備える。記憶部3は、本実施例に係る表示方法を実行させるプログラムが記憶されており、CPU2は、前記プログラムに則り、表示部4、手入力部5、通信IF6を制御し、本実施例に係る表示方法を実行する。本実施例の部品表表示装置1は、汎用コンピュータに前記プログラムをインストールすることにより、構成しても良い。なお、通信IF6は、本発明の部品表示装置1の外部にある通信網7と接続され、通信が可能である。
【0025】
記憶部3には、部品情報が記憶されている。本実施例の部品情報は、複数種類の属性に係る属性値を複数備えるレコードを複数備えるテーブルである。なお本願において、レコードとは、関連するフィールドを1つにまとめたデータを意味している。
【0026】
図2に部品情報に係るデータ構造の例を示す。部品情報は、品名テーブルと、品番テーブルと、属性名テーブルと、属性値テーブルからなる。品名テーブルは、品名番号と品名とをフィールドとして備える。品名番号は、品名テーブルにおいてユニークである。品番テーブルは、品番と品名番号とをフィールドとして備える。品番は品番テーブルにおいてユニークである。また、品名番号は、品名テーブルの品名番号を参照する。品番テーブルと品名テーブルとは多:1対応である。属性名テーブルは、属性番号と属性名と属性名表示幅と属性値表示幅とをフィードとして備える。属性番号は属性名テーブルにおいてユニークである。属性値テーブルは、品番と属性番号と属性値をフィールドとして備える。属性値テーブルの品番は品番テーブルの品番を参照する。属性値テーブルと品番テーブルとは多:1対応である。属性値テーブルの属性番号は属性名テーブルの属性番号を参照する。属性値テーブルと属性名テーブルとは多:1対応である。
【0027】
図2のデータ構造によれば、属性名テーブルは複数のレコードを備えるので、複数種類の属性を表現することができる。また、属性値テーブルは属性名テーブルを多:1対応で参照するので、属性に係る複数の属性値を表現することができる。また、属性値テーブルは品番テーブルを多:1に参照するので、品番テーブルは属性値を複数備える部品情報を表現することができる。さらに、品番テーブルは部品情報であるレコードを複数備えるので、レコードを複数備えるテーブルを表現することができる。従って、図2に示すデータ構造は、複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを表現することができる。なお、図2に示したデータ構造は一例にすぎない。複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを表現できるデータ構造であれば、他のデータ構造であっても良い。
【0028】
図3に品名テーブルの例を示す。1〜10の10個のユニークな品名番号に対し、「開発モデル」、「ユニットA」、「抵抗」、「コンデンサ」、「プリント基板」、「外観樹脂成形品A」、「外観樹脂成型品B」、「液晶パネル」、「ビス」、「テープ」の品名が割り当てられている。
【0029】
図4に品番テーブルの例を示す。P1〜P11の11個のユニークな品番に対し、1〜10の品名番号が割り当てられている。該品名番号は、品名テーブルにおける品名番号を参照する。例えば、品番テーブルにおいて、品番が「P4」であるレコードの品名番号は「3」であり、該「3」は、品名テーブルの品名番号の「3」を意味する。品名テーブルにおいて、品名番号が「3」であるレコードの品名は「抵抗」であるから、品番が「P4」である部品の品名は「抵抗」である。
【0030】
図5に属性名テーブルの例を示す。1〜10のユニークな属性番号に対し、「メーカ」、「サイズ[mm]」、「抵抗値[Ω]」、「定格電圧[V]」、「静電容量[pF]」、「樹脂」、「画面サイズ[インチ]」、「解像度」、「粘着材」、「厚さ[mm]」の属性名が割り当てられている。また、各レコードは、属性名を部品表として表示する際の表示幅である属性名表示幅および属性値を表示する際の表示幅である属性値表示幅を備える。
【0031】
図6に属性値テーブルの例を示す。属性値テーブルにおける品番は、品番テーブルにおける品番を参照する。また、属性番号は属性名テーブルにおける属性番号を参照する。例えば、属性値テーブルにおいて、品番が「P3」、属性番号が「1」であるレコードの属性値は「A社」である。これを、品番テーブル、属性名テーブルを参照して解釈すると、品番が「P3」である部品の、属性番号「1」すなわち属性名が「メーカ」である属性に対する属性値は「A社」であると解釈することができる。換言すると、品番がP3である部品のメーカはA社である。
【0032】
また、図7に親子テーブルのデータ構造を示す。親子テーブルは、部品間の親子関係を示すテーブルであり、親にあたる品番と、子にあたる品番と、1つの親に対する子の数を示す員数とをフィールドとして備えるレコードからなる。
【0033】
図8に親子テーブルの例を示す。品番(親)がP2、品番(子)がP3、員数が2であるレコードは、品番がP3である部品が、品番がP2である部品の子部品であり、品番がP2である部品1つに対し品番がP3である部品が2つ必要であることを示す。また、図8に示す親子テーブルは、P3〜P6がP2の子部品であり、P2、P7〜P11がP1の子部品であることを示す。
【0034】
図9に、本実施例において表示すべき部品表を示す。部品表において、各行は品番をユニークな番号とする行であり、該行に該品番に関する情報を表示する。列として、品番、員数、品名、属性であるメーカ、サイズ[mm]、定格電圧[V]、抵抗値[Ω]、および備考を備える。メーカ、サイズ[mm]、定格電圧[V]の列は、当該品番に係る属性値があれば、その属性値を表示し、属性値がなければ空欄を表示する。このように、1つの属性値を列方向に1列に並べて表示することを、本明細書では「属性値を列として表示する」と呼ぶ。また、列として表示しない他の属性値は、品番毎に結合して備考欄に表示する。備考欄では、該属性値に係る属性名と該属性値を「=」で結合して1行で表示する。前記表示方法を、本明細書では「備考表示」と呼ぶ。1つの品番に関し、前記他の属性値が複数ある場合は、それらを結合して行方向に並べて表示する。例えば、品番がP9である行は、備考欄に表示すべき属性として、画面サイズ[インチ]と解像度を有するので、画面サイズ[インチ]に関する備考表示と解像度に関する備考表示とを行方向に並べて2行で表示する。
【0035】
また、本明細書で表示する部品表に係る寸法用語を説明する。属性を列として表示する場合の表示幅を「列表示幅」と呼ぶ。全ての列表示幅を合計したものを「列表示幅合計」と呼ぶ。列表示幅合計と「備考」列の幅との合計を「属性表示幅」と呼ぶ。属性表示幅は部品表において属性を表示する幅である。
【0036】
また、備考表示する幅を「備考表示幅」と呼ぶ。「備考」列の幅は「備考」列に表示された備考表示幅の最大値であるため、全ての備考表示を表示することができる。
【0037】
また、各行の縦方向の長さを「行幅」と呼ぶ。
【0038】
図10に本実施例の表示方法の処理フロー図を示す。該処理フローは、CPU2が、記憶部3に記憶されたプログラムに則り、記憶部3、表示部4、手入力部5、通信IF6を制御することにより実行される。
【0039】
まず初めに表示すべき品番を抽出する(S1)。部品表表示装置1は、手入力部5から品番が入力されたことに対応して、入力された品番を親とする子の品番を親子テーブルから再帰的に検索し、入力された品番および入力された品番の子孫となる品番を抽出する。例えば、手入力部から「P1」が入力された場合、P1、P1の子であるP2、P7〜P11、およびP2の子であるP3〜P6が抽出される。
【0040】
次にS1で抽出された品番に基づき、表示すべき属性を抽出する(S2)。具体的には、属性値テーブルより、S1において抽出されたP1〜P11のいずれかを品番とするレコードを抽出する。
【0041】
図11に抽出されたレコードを示す。
【0042】
次に、属性値の数を属性毎に集計する(S3)。具体的には、S2で抽出された複数のレコードに関して、属性番号毎にレコード数をカウントし、各属性番号に係る属性値の数とする。
【0043】
図12に、S3で集計した属性値の数に基づいて、各属性番号に係る出現率を算出した例を示す。出現率とは、S1で抽出した品番の数に対する属性値の数である。本実施例では、S1で抽出した品番は、P1〜P11であるから、品番の数は11個である。属性番号が1である属性に係る属性値の数は9個であるから、属性番号が1である属性に係る出現率は9/11=82%となる。同様に、属性番号が2〜10である属性に係る出現率を、各属性番号に係る属性値の数を品番の数である11で割って求める。
【0044】
属性値の数が多いか否かは、出現率が所定の閾値より大きいか否かで判断する。例えば、閾値を20%とする場合、属性番号が1、2、4である属性番号を列として表示する属性として抽出する。
【0045】
次に、S2において抽出した属性のうち、S4において抽出した属性以外の属性を品番毎に1つにまとめて「備考」フィールドの値とする(S5)。S2で抽出された属性番号は1〜10の10個であり、S4で抽出された属性番号は1、2、4であるから、残りの属性番号は3、5〜10の7個である。
【0046】
図13に属性値テーブルより、該属性番号に係るレコードを抽出し、属性番号によって属性名テーブルの属性名を結合し、さらに属性名と属性値とを連結した「備考表示」を追加した状態を示す。備考表示は、属性値と「=」と属性名とを文字列と見なして連結した文字列である。例えば、品番がP3、属性番号が3場合、属性名が「抵抗値[Ω]」で、属性値が30000であるから、備考表示は、「抵抗値[Ω]=30000」となる。
【0047】
図14に示す「備考」列は、図13において品番が同じであるレコードの備考表示を、改行コードを挟んで連結し、1つの文字列としたものである。
【0048】
最後に図9の部品表を作成・表示をする(S6)。部品表の行の目次は、S1において抽出された品番とする。また、品名テーブルに基づき、各品番に係る品名を一列に表示する。
【0049】
また、S4において抽出された属性を列として表示する。各行各列が交差する枡目には、該行に係る品番・該行に係る属性に係る属性値を属性値テーブルに基づき表示する。S4において抽出された属性番号は、1、2、4であるから、属性名テーブルに基づき、「メーカ」、「サイズ[mm]」、「定格電圧[V]」の文字列を各列の最上段に目次として表示する。また、「メーカ」、「サイズ[mm]」、「定格電圧[V]」を最上段に表示した列の各枡目には、各属性・各品番に係る属性値を表示する。
【0050】
また、品番に基づき、S5で作成した文字列を「備考」列として表示する。例えば、図14に示すテーブルにおいて品番がP3である備考表示は「抵抗値[Ω]=30000」であるから、品番がP3である行に係る備考列に「抵抗値[Ω]=30000」と表示する。
【0051】
作成された部品表を表示部4に表示する。また、記憶部3に記憶したり、通信IF6を介して通信網7に送信したり、なお、表示部4はプリンタであっても良い。プリンタ等による印刷も広義の意味では表示である。
【0052】
また、通信IF6を介して、作成された部品表を示す情報を通信網7に送信し、通信網7を介して他のコンピュータ等が前記情報を受信し表示しても良い。
【0053】
本実施例によれば、部品表の属性表示幅を狭くすることができる。例えば、図24に記載の部品表においては、属性表示のための列として9列、属性表示幅として63を必要とするが、本実施例においては、属性表示のための列を4列、属性表示幅を34とする表示が可能である。
【0054】
また、部品表の空欄の割合を小さくすることができる。図24に記載の部品表の属性表示に係る110個の枡目のうち、属性が表示されているのは30個、空欄が80個であり、利用率は30/110=27%である。対して、本実施例の部品表では、属性表示に係る桝目は44個であり、そのうち28個に属性値が表示されており、16個が空欄である。そのため、利用率は28/44=64%である。このように、部品表中の空欄の割合を小さくし、桝目の利用率を向上させ、少ない桝目で多くの情報を効率的に表示することが可能となる。
【0055】
また、部品表の面積を狭くすることができる。例えば、図24における属性表示幅は63、行数は12であるので面積は63×12=756である。対して本実施例の部品表は、属性表示幅が34である。また、品番がP9およびP10である行の行幅が2となっているので、行幅の合計は14である。従って、面積は34×14=467である。すなわち、面積は図24の部品表に対して467/756=63%である。
【0056】
また、本実施例によれば、属性値の数が多い属性に係る属性値を列として表示するので、該属性に係る多くの属性値が列方向に並んで表示される。一般的には、属性値の数が多い属性は、属性値同士を比較することが多い。本実施例の部品表は、前記比較に関し容易である。
【0057】
また、本実施例によれば、属性値が多く存在しない属性に係る属性値を1つの列にまとめて表示するので、空欄が少なくなる確率が高く、かつ行幅が広くなる確率が低い。
【0058】
これを数学的に説明する。表示すべき品番の数がN、第1の属性において表示すべき属性値の数がm1、第2の属性において表示すべき属性値の数をm2とすると、第1の属性と第2の属性とをそれぞれ列として表示する場合の空欄の数は2N−m1−m2である。これを結合して1つの列に表示する場合、空欄の数の期待値は、(N−m1)×(N−m2)/Nである。従って、結合による空欄の減少数は、2N−m1−m2−(N−m1)×(N−m2)/N=N−m1m2/Nである。すなわち、m1、m2の値が小さいほど、空欄を削減できる期待値が大きいことが分かる。
【0059】
また、部品表が行幅に広くなるのは、1つのレコードについて、第1属性に係る属性値と第2属性に係る属性値とが共に存在する場合である。従って、結合によって行幅が広くなる期待値は、m1m2/N行であり、m1、m2の値が小さいほど、行幅が広くなる確率が低い。
【実施例2】
【0060】
本実施例に係る部品表表示装置および部品表示方法は、S4に係る詳細が異なるのみであるので、S4に係る処理詳細についてのみ説明する。
【0061】
S4においては、S2で抽出した属性のうち、S3で集計した属性値の数が多い属性を、列として表示する属性として抽出する。
【0062】
図15(A)に集計例を示す。図11に示す属性番号が4であるレコードを例に説明すると、属性番号が4であるレコードは、品番がP3、P4、P5である計3つであるから、属性値の数は3となる。
【0063】
次にS2で抽出した属性のうち、S3で集計した属性値の数が多い属性を、列として表示する属性として抽出する(S4)。
【0064】
図15(B)に、図15(A)に示すテーブルを、属性値の数をキーとして降順にソートしたものを示す。本明細書においては、属性値の数をキーとして降順にソートしたテーブルにおいて属性値の数の多い属性を「上位」、属性値の数の少ない属性を「下位」と呼ぶ。例えば、属性番号が2である属性は属性番号が4である属性の上位であり、属性番号が3である属性は属性番号が4である属性の下位である。なお、属性番号が3である属性と属性番号が6である属性とのように、属性値の数が同じでいずれが上位/下位であるか不定となる場合、図15(B)のテーブルをソートした時の順位に基づいて上位/下位を特定しても良い。以下の例では、属性番号が3である属性を属性番号が6である属性の上位として説明する。
【0065】
図16は、図15(B)に示すテーブルに図5に示す属性名テーブルの属性名表示幅および属性値表示幅を、属性番号をキーとして結合し、さらに、各属性番号に係る列表示幅、該属性番号に係る属性および該属性より上位の属性を列とて表示する場合の列表示幅合計、備考表示幅、該属性より下位の属性を備考表示する場合の備考表示幅の最大、および属性表示幅を算出したテーブルを示している。
【0066】
列表示幅は、属性名表示幅と属性値表示幅との最大値であり、係る属性値を列として表示する場合に必要とされる表示幅である。例えば、属性番号が1であるレコードは、属性名表示幅が3であり、属性値表示幅が2であるので、2と3との最大値である3を列表示幅の値とする。
【0067】
列表示幅合計は、属性名表示幅を上位より累計した値である。例えば、属性番号が4である列表示幅累計は、属性番号が4であるレコードの列表示幅である7、その上位のレコードである属性番号が2であるレコードの列表示幅である9、その上位のレコードである属性番号が1であるレコードの列表示幅である3、の累計であるから、値は7+9+3=19となる。
【0068】
備考表示幅は、属性名と属性値とを1行で表示した場合の表示幅である。本実施例では、属性名と属性値との区切りを示す文字として「:」を用いる。本実施例においては、備考表示幅は属性名表示幅と属性値表示幅と「:」の文字幅である1を合計した値である。例えば、属性番号が1であるレコードの備考表示幅は属性名表示幅である3と属性値表示幅である2と「:」の文字幅である1と、の合計であるから、3+2+1=6となる。
【0069】
備考表示幅の最大は、各レコードより下位のレコードの備考表示幅の最大値である。例えば、属性番号が4である備考表示幅の最大は、属性番号が4であるレコードより下位のレコードである属性番号が3、6、5、7、8、9、10であるレコードの行表示幅である12、8、15、14、8、9、10の最大値であるから15となる。
【0070】
属性表示幅は、列表示幅合計と備考表示幅の最大との合計である。
【0071】
属性表示幅に基づき、列として表示する属性を抽出する。例えば、部品表において属性表示のために用いることができる表示幅が40であったとすると、属性表示幅が40以下であるレコードであって最も下位のレコードである属性番号である3、およびその上位のレコードの属性番号である1、2、4を抽出する。
【0072】
次に、S2において抽出した属性番号のうち、S4において抽出した属性番号以外の属性値を品番毎に1つにまとめて「備考」フィールドの値とする(S5)。S2で抽出された属性番号は1〜10の10個であり、S4で抽出された属性番号は1、2、4、3の4個であるから、残りの属性番号は、5、6、7、8、9、10の6個である。
【0073】
図17に属性値テーブルより、該属性番号に係るレコードを抽出し、属性番号によって属性名テーブルの属性名を結合し、さらに属性名と属性値とを連結した「備考表示」を追加した状態を示す。備考表示は、属性値と「:」と属性名を文字列と見なして連結した文字列である。例えば、品番がP5、属性番号が5の場合、属性名が「静電容量[pF]」で、属性値が220000であるから、備考表示は、「静電容量[pF]:220000」となる。
【0074】
図18に示す「備考」列は、図17において品番が同じであるレコードの備考表示を、改行コードを挟んで連結し、1つの文字列としたものである。例えば、図17において、品番がP9であるレコードは2つあり、その備考表示は「画面サイズ[インチ]:5.4」と「解像度:QVGA」との2つの文字列であるから、この2つの文字列を、改行コードを挟んで連結して、「画面サイズ[インチ]:5.4(改行コード)解像度:QVGA」とする。なお、(改行コード)は、実際には表示されず、その位置で改行することを表す。
【0075】
最後に部品表を作成・表示をする(S6)。
【0076】
図19に部品表を示す。部品表の行方向の目次は、S1において抽出された品番とする。本実施例においては、P1〜P11が部品表の各行の目次となる。品番の表示においては、親子テーブルに基づき親子関係を示すツリー表示とすることが望ましい。また、親子テーブルに基づき品番(子)に係る員数を表示する。
【0077】
また、品名テーブルに基づき、各行の品番に係る品名を一列に表示する。
【0078】
また、S4において抽出された属性を列として表示する。各行各列が交差する枡目には、該行に係る品番・該列に係る属性に係る属性値を属性値テーブルに基づき表示する。S4において抽出された属性番号は、1、2、4、3であるから、属性名テーブルに基づき、「メーカ」、「サイズ[mm]」、「定格電圧[V]」、「抵抗値[Ω]」の文字列を各列の最上段に目次として表示する。また、属性値テーブルにおいて、品番がP3かつ属性番号が1であるレコードの属性値は「A社」であるから、品番がP3である行かつ属性名が「メーカ」である列の交差する枡目に「A社」を表示する。他の桝目も同様に属性値を表示するが、桝目に対応する属性値が属性値テーブルに存在しない場合は、その桝目は空欄とする。例えば、品番がP6かつ属性番号が4であるレコードは属性値テーブルに存在しない。従って、品番がP6を行の目次としかつ属性番号が4である属性名である定格電圧[V]を列の目次とする枡目は空欄する。
【0079】
また、品番に基づき、S5で作成した文字列を「備考」列として表示する。例えば、図17に示すテーブルにおいて品番P5に係る備考表示は「静電容量[pF]:220000」であるから、品番がP5である行に係る備考列に「静電容量[pF]:220000」と表示する。また、品番がP9またはP11である行のように、備考列に記載する文字列が複数行である場合は、該行の幅を文字列が表示できるように広く表示しても良い。
【0080】
本実施例によれば、部品表の属性表示幅を狭くすることができる。例えば、図24に記載の部品表においては、属性表示のための列として9列、属性表示幅として63を必要とするが、本実施例においては、属性表示のための列を5列、属性表示幅を40とする表示が可能である。
【0081】
また、部品表の空欄の割合を小さくすることができる。図24に記載の部品表の属性表示に係る110個の枡目のうち、属性値が表示されているのは30個、空欄が80個であり、利用率は30/110=27%である。対して、本実施例の部品表では、属性表示に係る桝目は55個であり、そのうち28個に属性値が表示されており、27個が空欄である。そのため、利用率は28/55=51%である。このように、部品表中の空欄の割合を小さくし、桝目の利用率を向上させ、少ない桝目で多くの情報を効率的に表示することが可能となる。
【0082】
また、部品表の面積を狭くすることができる。例えば、図24における属性表示幅は63、行数は12であるので面積は63×12=756である。対して本実施例の部品表は、属性表示幅が40である。また、品番がP9およびP10である行の行幅が2となっているので、行幅の合計は14である。従って、面積は40×14=560である。すなわち、面積は図24の部品表に対して560/756=74%である。
【0083】
また、本実施例によれば、属性表示幅が、部品表において属性表示のために用いる所定の表示幅以下となるように、列として表示すべき属性を抽出するので、属性表示幅を前記所定の表示幅以下に収めることができ、部品表の幅を所定の幅以下とすることができる。これにより、所定の表示幅を表示可能な表示部に部品表を表示する場合に、表示部の表示幅に部品表の表示幅が収まるように表示することができるので、部品表の一覧性を向上させることができる。
【産業上の利用可能性】
【0084】
本発明は、部品表を表示する用途以外にも、表を作成・表示することに関し、利用可能である。
【符号の説明】
【0085】
1 部品表表示装置
2 CPU
3 記憶部
4 表示部
5 手入力部
6 通信IF
【技術分野】
【0001】
本発明は、部品表を表示する技術に関するものである。
【背景技術】
【0002】
自動車やコンピュータ等の工業製品(以下製品)は複数の部品により構成されている。製品を構成する部品を管理するために、製品を構成する部品の属性(部品名、メーカー名など)と、部品の従属関係を管理できる部品表(BOM:Bill of Materials)が広く使われている。
【0003】
特許文献1には、生産品の部品表を生成する部品表生成装置が開示されている。前記部品表生成装置は、部品情報を格納する部品情報DB111を用いて部品表を生成する。図20は、部品情報DB111に登録された部品情報の例を示したテーブルである。図20に示すように、部品情報DB111には、行に相当するレコードごとに、部品の図面番号に対応させて、この部品の仕様として、この部品の図面名称、部品名、寸法、材質および質量の情報を含んで登録されている。
【0004】
また図21には、特許文献1における、部品表情報をディスプレイ装置に出力した場合の画面表示の例を示す。図21に示した部品表400には、部品コード、その部品の図面が属する階層を示す表示、その部品の使用数量、図面番号、部品名、寸法、材質、および、質量などの情報を含んで表示されている。
【0005】
特許文献2には、設計部品表から生産部品表を自動的に作成し、生産部品表の編集作業を効率化する製品部品表編集装置が開示されている。前記製品部品編集装置が備える記憶装置は、品目データDa2を記憶する。品目データDa2で定義される品目仕様は、文字又は数値情報であり、仕様細目名を表す属性と、仕様細目情報を表す属性値のペアの集合となっている。図22に示す品目データDa2は、その一例であり、品目属性として、品目の区分、型式、性能、意匠、数量、納期などの仕様細目が定義されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−139337(平成18年6月1日公開)
【特許文献2】特開2000−202746(平成12年7月25日公開)
【発明の概要】
【発明が解決しようとする課題】
【0007】
前記図20で例示された部品情報DB111においては、部品情報が備える属性は、寸法、材質、質量の3つであり、全ての部品情報が漏れ無く前記3つの属性を備えている。
【0008】
一方、前記図22で例示された品目データDa2においては、品目仕様は、文字又は数値情報であり、仕様細目名を表す属性と、仕様細目情報を表す属性値のペアの集合として定義されている。各部品は共通する属性として、「品目区分」を備えるが、他の属性については、品目毎に備える属性が異なる。例えば、「制御部B」は「入出力仕様」という属性と「制御仕様」という属性を備え、「駆動部C」は「駆動仕様」という属性と「最高速度」という属性を備える。
【0009】
図22の品目データDaのように、品目毎に備える属性が異なる部品情報DBを用いて、図21に示すような部品表を作成する場合、部品表の列の数が多くなり、かつ空白欄が多くなる。
【0010】
図23に示す部品情報を用いて部品表を作成する場合を例にとって、背景技術の問題点を具体的に説明する。部品情報の各レコードは、「品番」および「品名」を備える。品名としては、開発モデル、ユニットA、抵抗、コンデンサ、プリント基板、外観樹脂成型品A、外観樹脂成型品B、液晶パネル、ビス、テープがある。さらに品名毎に、品名によって異なる属性を備える。例えば、品名がコンデンサの場合には、メーカ、サイズ[mm]、静電容量、定格電圧を属性として備える。また、品名がテープの場合には、メーカ、サイズ[mm]、粘着材、厚さを属性として備える。
【0011】
図24に、図23に示す部品情報を用い、背景技術にならって作成した部品表を示す。図24に示す部品表においては、各属性がそれぞれ独立した列として表示される。すなわち、図23に示した部品情報が備える属性であるメーカ、サイズ[mm]、抵抗値[Ω]、静電容量[pF]、定格電圧[V]、粘着材、厚さ[mm]、樹脂、画面サイズ[インチ]、解像度がそれぞれ縦1列として表示される。各品番を示す行と各属性を示す列とが交差する桝目には、該品番によって特定される部品が備える該属性に係る属性値が表示されるが、該部品・該属性に係る属性値が存在しない場合は、空欄を表示する。
【0012】
品名が異なる複数種類の部品からなる部品表を表示しようとする場合、品名によって備える属性が異なるため、表示すべき属性の数が多くなる。例えば、図23に示す部品情報では、1つの品番に係る属性の数は、最大で4個であるが、図24の部品表においては合計10列となっている。そのため、属性を表示するための幅が広くなり、視認性が低下したり、部品表が画面表示幅ないし印字幅に収まらなかったりする場合がある。
【0013】
また、空欄の割合が多くなる場合がある。例えば、図24の部品表では、P1からP11の計11個の品番について、「メーカ」から「解像度」までの10個の属性が存在する。すなわち、属性値を表示する桝目として、11×10=110個の枡目が存在することになるが、そのうち、属性値が表示されているのは、30個にすぎず、残りの80個については空欄である。空欄が多いということは、情報を表示していない面積が広いということである。そのため、表示画面や印字紙面を有効的に活用することができない。
【0014】
また、部品表の面積が広くなる場合がある。図24に示す部品表は、横幅が広く、空欄が多い。そのため、部品表の面積が広い。従って、部品表が表示画面ないし印字紙面に収まらない場合がある。
【0015】
上記に説明した問題に鑑み、本発明は、属性を列として表示する部品表を表示する部品表表示装置および部品表表示方法において、前記列方向の幅を狭くすることを目的とする。
【0016】
また、表中の空欄を少なくし、狭い面積で多くの情報を表示することを目的とする。
【課題を解決するための手段】
【0017】
上記課題を解決するために、本発明の部品表示装置は、複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示装置であって、前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする。
【0018】
また、本発明の部品表示方法は、複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示方法であって、前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする。
【0019】
また、本発明のプログラムは、本発明の部品表表示方法をコンピュータに実行させるためのプログラムである。
【発明の効果】
【0020】
本発明の部品表表示装置は、属性を列として表示する部品表を表示する部品表表示装置および部品表表示方法において、前記列方向の幅を狭くすることができる。
【0021】
また、表中の空欄を少なく、狭い面積で多くの情報を表示することができる。
【図面の簡単な説明】
【0022】
【図1】本実施の形態に係る表示装置である部品表表示装置の構成を示すブロック図である。
【図2】本実施の形態に係る部品情報に係るデータ構造を示す図である。
【図3】本実施の形態に係る品名テーブルの例を示す図である。
【図4】本実施の形態に係る品番テーブルの例を示す図である。
【図5】本実施の形態に係る属性名テーブルの例を示す図である。
【図6】本実施の形態に係る属性値テーブルの例を示す図である。
【図7】本実施の形態に係る親子テーブルのデータ構造を示す図である。
【図8】本実施の形態に係る親子テーブルの例を示す図である。
【図9】本実施の形態に係る部品表を示す図である。
【図10】本実施の形態に係る処理フローを示すフロー図である。
【図11】本実施の形態に係る抽出されたレコードを示す図である。
【図12】各属性番号に係る出現率を算出した例を示す図である。
【図13】本実施の形態に係る「備考表示」を追加したテーブルを示す図である。
【図14】本実施の形態に係る「備考」列を示すテーブルを示す図である。
【図15】本実施の形態に係る属性値の数の集計例を示す図である。
【図16】本実施の形態に係る属性表示幅を算出したテーブルを示す図である。
【図17】本実施の形態に係る「備考表示」を追加したテーブルを示す図である。
【図18】本実施の形態に係る「備考」列を示すテーブルを示す図である。
【図19】本実施の形態に係る部品表を示す図である。
【図20】従来技術に係る部品情報の例を示す図である。
【図21】従来技術に係る画面表示の例を示す図である。
【図22】従来技術に係る品目データの例を示す図である。
【図23】従来技術に係る部品情報の例を示す図である。
【図24】従来技術に係る部品表の例を示す図である。
【発明を実施するための形態】
【0023】
本発明の表示装置および表示方法に係る実施形態について、以下に詳細に説明する。
【実施例1】
【0024】
図1は、本実施例に係る表示装置である部品表表示装置1の構成を示すブロック図である。本実施例の部品表表示装置1は、CPU2、メモリ、ハードディスク等からなる記憶部3、ディスプレイ等からなる表示部4、マウス、キーボード等からなる手入力部5、通信IF6を備える。記憶部3は、本実施例に係る表示方法を実行させるプログラムが記憶されており、CPU2は、前記プログラムに則り、表示部4、手入力部5、通信IF6を制御し、本実施例に係る表示方法を実行する。本実施例の部品表表示装置1は、汎用コンピュータに前記プログラムをインストールすることにより、構成しても良い。なお、通信IF6は、本発明の部品表示装置1の外部にある通信網7と接続され、通信が可能である。
【0025】
記憶部3には、部品情報が記憶されている。本実施例の部品情報は、複数種類の属性に係る属性値を複数備えるレコードを複数備えるテーブルである。なお本願において、レコードとは、関連するフィールドを1つにまとめたデータを意味している。
【0026】
図2に部品情報に係るデータ構造の例を示す。部品情報は、品名テーブルと、品番テーブルと、属性名テーブルと、属性値テーブルからなる。品名テーブルは、品名番号と品名とをフィールドとして備える。品名番号は、品名テーブルにおいてユニークである。品番テーブルは、品番と品名番号とをフィールドとして備える。品番は品番テーブルにおいてユニークである。また、品名番号は、品名テーブルの品名番号を参照する。品番テーブルと品名テーブルとは多:1対応である。属性名テーブルは、属性番号と属性名と属性名表示幅と属性値表示幅とをフィードとして備える。属性番号は属性名テーブルにおいてユニークである。属性値テーブルは、品番と属性番号と属性値をフィールドとして備える。属性値テーブルの品番は品番テーブルの品番を参照する。属性値テーブルと品番テーブルとは多:1対応である。属性値テーブルの属性番号は属性名テーブルの属性番号を参照する。属性値テーブルと属性名テーブルとは多:1対応である。
【0027】
図2のデータ構造によれば、属性名テーブルは複数のレコードを備えるので、複数種類の属性を表現することができる。また、属性値テーブルは属性名テーブルを多:1対応で参照するので、属性に係る複数の属性値を表現することができる。また、属性値テーブルは品番テーブルを多:1に参照するので、品番テーブルは属性値を複数備える部品情報を表現することができる。さらに、品番テーブルは部品情報であるレコードを複数備えるので、レコードを複数備えるテーブルを表現することができる。従って、図2に示すデータ構造は、複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを表現することができる。なお、図2に示したデータ構造は一例にすぎない。複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを表現できるデータ構造であれば、他のデータ構造であっても良い。
【0028】
図3に品名テーブルの例を示す。1〜10の10個のユニークな品名番号に対し、「開発モデル」、「ユニットA」、「抵抗」、「コンデンサ」、「プリント基板」、「外観樹脂成形品A」、「外観樹脂成型品B」、「液晶パネル」、「ビス」、「テープ」の品名が割り当てられている。
【0029】
図4に品番テーブルの例を示す。P1〜P11の11個のユニークな品番に対し、1〜10の品名番号が割り当てられている。該品名番号は、品名テーブルにおける品名番号を参照する。例えば、品番テーブルにおいて、品番が「P4」であるレコードの品名番号は「3」であり、該「3」は、品名テーブルの品名番号の「3」を意味する。品名テーブルにおいて、品名番号が「3」であるレコードの品名は「抵抗」であるから、品番が「P4」である部品の品名は「抵抗」である。
【0030】
図5に属性名テーブルの例を示す。1〜10のユニークな属性番号に対し、「メーカ」、「サイズ[mm]」、「抵抗値[Ω]」、「定格電圧[V]」、「静電容量[pF]」、「樹脂」、「画面サイズ[インチ]」、「解像度」、「粘着材」、「厚さ[mm]」の属性名が割り当てられている。また、各レコードは、属性名を部品表として表示する際の表示幅である属性名表示幅および属性値を表示する際の表示幅である属性値表示幅を備える。
【0031】
図6に属性値テーブルの例を示す。属性値テーブルにおける品番は、品番テーブルにおける品番を参照する。また、属性番号は属性名テーブルにおける属性番号を参照する。例えば、属性値テーブルにおいて、品番が「P3」、属性番号が「1」であるレコードの属性値は「A社」である。これを、品番テーブル、属性名テーブルを参照して解釈すると、品番が「P3」である部品の、属性番号「1」すなわち属性名が「メーカ」である属性に対する属性値は「A社」であると解釈することができる。換言すると、品番がP3である部品のメーカはA社である。
【0032】
また、図7に親子テーブルのデータ構造を示す。親子テーブルは、部品間の親子関係を示すテーブルであり、親にあたる品番と、子にあたる品番と、1つの親に対する子の数を示す員数とをフィールドとして備えるレコードからなる。
【0033】
図8に親子テーブルの例を示す。品番(親)がP2、品番(子)がP3、員数が2であるレコードは、品番がP3である部品が、品番がP2である部品の子部品であり、品番がP2である部品1つに対し品番がP3である部品が2つ必要であることを示す。また、図8に示す親子テーブルは、P3〜P6がP2の子部品であり、P2、P7〜P11がP1の子部品であることを示す。
【0034】
図9に、本実施例において表示すべき部品表を示す。部品表において、各行は品番をユニークな番号とする行であり、該行に該品番に関する情報を表示する。列として、品番、員数、品名、属性であるメーカ、サイズ[mm]、定格電圧[V]、抵抗値[Ω]、および備考を備える。メーカ、サイズ[mm]、定格電圧[V]の列は、当該品番に係る属性値があれば、その属性値を表示し、属性値がなければ空欄を表示する。このように、1つの属性値を列方向に1列に並べて表示することを、本明細書では「属性値を列として表示する」と呼ぶ。また、列として表示しない他の属性値は、品番毎に結合して備考欄に表示する。備考欄では、該属性値に係る属性名と該属性値を「=」で結合して1行で表示する。前記表示方法を、本明細書では「備考表示」と呼ぶ。1つの品番に関し、前記他の属性値が複数ある場合は、それらを結合して行方向に並べて表示する。例えば、品番がP9である行は、備考欄に表示すべき属性として、画面サイズ[インチ]と解像度を有するので、画面サイズ[インチ]に関する備考表示と解像度に関する備考表示とを行方向に並べて2行で表示する。
【0035】
また、本明細書で表示する部品表に係る寸法用語を説明する。属性を列として表示する場合の表示幅を「列表示幅」と呼ぶ。全ての列表示幅を合計したものを「列表示幅合計」と呼ぶ。列表示幅合計と「備考」列の幅との合計を「属性表示幅」と呼ぶ。属性表示幅は部品表において属性を表示する幅である。
【0036】
また、備考表示する幅を「備考表示幅」と呼ぶ。「備考」列の幅は「備考」列に表示された備考表示幅の最大値であるため、全ての備考表示を表示することができる。
【0037】
また、各行の縦方向の長さを「行幅」と呼ぶ。
【0038】
図10に本実施例の表示方法の処理フロー図を示す。該処理フローは、CPU2が、記憶部3に記憶されたプログラムに則り、記憶部3、表示部4、手入力部5、通信IF6を制御することにより実行される。
【0039】
まず初めに表示すべき品番を抽出する(S1)。部品表表示装置1は、手入力部5から品番が入力されたことに対応して、入力された品番を親とする子の品番を親子テーブルから再帰的に検索し、入力された品番および入力された品番の子孫となる品番を抽出する。例えば、手入力部から「P1」が入力された場合、P1、P1の子であるP2、P7〜P11、およびP2の子であるP3〜P6が抽出される。
【0040】
次にS1で抽出された品番に基づき、表示すべき属性を抽出する(S2)。具体的には、属性値テーブルより、S1において抽出されたP1〜P11のいずれかを品番とするレコードを抽出する。
【0041】
図11に抽出されたレコードを示す。
【0042】
次に、属性値の数を属性毎に集計する(S3)。具体的には、S2で抽出された複数のレコードに関して、属性番号毎にレコード数をカウントし、各属性番号に係る属性値の数とする。
【0043】
図12に、S3で集計した属性値の数に基づいて、各属性番号に係る出現率を算出した例を示す。出現率とは、S1で抽出した品番の数に対する属性値の数である。本実施例では、S1で抽出した品番は、P1〜P11であるから、品番の数は11個である。属性番号が1である属性に係る属性値の数は9個であるから、属性番号が1である属性に係る出現率は9/11=82%となる。同様に、属性番号が2〜10である属性に係る出現率を、各属性番号に係る属性値の数を品番の数である11で割って求める。
【0044】
属性値の数が多いか否かは、出現率が所定の閾値より大きいか否かで判断する。例えば、閾値を20%とする場合、属性番号が1、2、4である属性番号を列として表示する属性として抽出する。
【0045】
次に、S2において抽出した属性のうち、S4において抽出した属性以外の属性を品番毎に1つにまとめて「備考」フィールドの値とする(S5)。S2で抽出された属性番号は1〜10の10個であり、S4で抽出された属性番号は1、2、4であるから、残りの属性番号は3、5〜10の7個である。
【0046】
図13に属性値テーブルより、該属性番号に係るレコードを抽出し、属性番号によって属性名テーブルの属性名を結合し、さらに属性名と属性値とを連結した「備考表示」を追加した状態を示す。備考表示は、属性値と「=」と属性名とを文字列と見なして連結した文字列である。例えば、品番がP3、属性番号が3場合、属性名が「抵抗値[Ω]」で、属性値が30000であるから、備考表示は、「抵抗値[Ω]=30000」となる。
【0047】
図14に示す「備考」列は、図13において品番が同じであるレコードの備考表示を、改行コードを挟んで連結し、1つの文字列としたものである。
【0048】
最後に図9の部品表を作成・表示をする(S6)。部品表の行の目次は、S1において抽出された品番とする。また、品名テーブルに基づき、各品番に係る品名を一列に表示する。
【0049】
また、S4において抽出された属性を列として表示する。各行各列が交差する枡目には、該行に係る品番・該行に係る属性に係る属性値を属性値テーブルに基づき表示する。S4において抽出された属性番号は、1、2、4であるから、属性名テーブルに基づき、「メーカ」、「サイズ[mm]」、「定格電圧[V]」の文字列を各列の最上段に目次として表示する。また、「メーカ」、「サイズ[mm]」、「定格電圧[V]」を最上段に表示した列の各枡目には、各属性・各品番に係る属性値を表示する。
【0050】
また、品番に基づき、S5で作成した文字列を「備考」列として表示する。例えば、図14に示すテーブルにおいて品番がP3である備考表示は「抵抗値[Ω]=30000」であるから、品番がP3である行に係る備考列に「抵抗値[Ω]=30000」と表示する。
【0051】
作成された部品表を表示部4に表示する。また、記憶部3に記憶したり、通信IF6を介して通信網7に送信したり、なお、表示部4はプリンタであっても良い。プリンタ等による印刷も広義の意味では表示である。
【0052】
また、通信IF6を介して、作成された部品表を示す情報を通信網7に送信し、通信網7を介して他のコンピュータ等が前記情報を受信し表示しても良い。
【0053】
本実施例によれば、部品表の属性表示幅を狭くすることができる。例えば、図24に記載の部品表においては、属性表示のための列として9列、属性表示幅として63を必要とするが、本実施例においては、属性表示のための列を4列、属性表示幅を34とする表示が可能である。
【0054】
また、部品表の空欄の割合を小さくすることができる。図24に記載の部品表の属性表示に係る110個の枡目のうち、属性が表示されているのは30個、空欄が80個であり、利用率は30/110=27%である。対して、本実施例の部品表では、属性表示に係る桝目は44個であり、そのうち28個に属性値が表示されており、16個が空欄である。そのため、利用率は28/44=64%である。このように、部品表中の空欄の割合を小さくし、桝目の利用率を向上させ、少ない桝目で多くの情報を効率的に表示することが可能となる。
【0055】
また、部品表の面積を狭くすることができる。例えば、図24における属性表示幅は63、行数は12であるので面積は63×12=756である。対して本実施例の部品表は、属性表示幅が34である。また、品番がP9およびP10である行の行幅が2となっているので、行幅の合計は14である。従って、面積は34×14=467である。すなわち、面積は図24の部品表に対して467/756=63%である。
【0056】
また、本実施例によれば、属性値の数が多い属性に係る属性値を列として表示するので、該属性に係る多くの属性値が列方向に並んで表示される。一般的には、属性値の数が多い属性は、属性値同士を比較することが多い。本実施例の部品表は、前記比較に関し容易である。
【0057】
また、本実施例によれば、属性値が多く存在しない属性に係る属性値を1つの列にまとめて表示するので、空欄が少なくなる確率が高く、かつ行幅が広くなる確率が低い。
【0058】
これを数学的に説明する。表示すべき品番の数がN、第1の属性において表示すべき属性値の数がm1、第2の属性において表示すべき属性値の数をm2とすると、第1の属性と第2の属性とをそれぞれ列として表示する場合の空欄の数は2N−m1−m2である。これを結合して1つの列に表示する場合、空欄の数の期待値は、(N−m1)×(N−m2)/Nである。従って、結合による空欄の減少数は、2N−m1−m2−(N−m1)×(N−m2)/N=N−m1m2/Nである。すなわち、m1、m2の値が小さいほど、空欄を削減できる期待値が大きいことが分かる。
【0059】
また、部品表が行幅に広くなるのは、1つのレコードについて、第1属性に係る属性値と第2属性に係る属性値とが共に存在する場合である。従って、結合によって行幅が広くなる期待値は、m1m2/N行であり、m1、m2の値が小さいほど、行幅が広くなる確率が低い。
【実施例2】
【0060】
本実施例に係る部品表表示装置および部品表示方法は、S4に係る詳細が異なるのみであるので、S4に係る処理詳細についてのみ説明する。
【0061】
S4においては、S2で抽出した属性のうち、S3で集計した属性値の数が多い属性を、列として表示する属性として抽出する。
【0062】
図15(A)に集計例を示す。図11に示す属性番号が4であるレコードを例に説明すると、属性番号が4であるレコードは、品番がP3、P4、P5である計3つであるから、属性値の数は3となる。
【0063】
次にS2で抽出した属性のうち、S3で集計した属性値の数が多い属性を、列として表示する属性として抽出する(S4)。
【0064】
図15(B)に、図15(A)に示すテーブルを、属性値の数をキーとして降順にソートしたものを示す。本明細書においては、属性値の数をキーとして降順にソートしたテーブルにおいて属性値の数の多い属性を「上位」、属性値の数の少ない属性を「下位」と呼ぶ。例えば、属性番号が2である属性は属性番号が4である属性の上位であり、属性番号が3である属性は属性番号が4である属性の下位である。なお、属性番号が3である属性と属性番号が6である属性とのように、属性値の数が同じでいずれが上位/下位であるか不定となる場合、図15(B)のテーブルをソートした時の順位に基づいて上位/下位を特定しても良い。以下の例では、属性番号が3である属性を属性番号が6である属性の上位として説明する。
【0065】
図16は、図15(B)に示すテーブルに図5に示す属性名テーブルの属性名表示幅および属性値表示幅を、属性番号をキーとして結合し、さらに、各属性番号に係る列表示幅、該属性番号に係る属性および該属性より上位の属性を列とて表示する場合の列表示幅合計、備考表示幅、該属性より下位の属性を備考表示する場合の備考表示幅の最大、および属性表示幅を算出したテーブルを示している。
【0066】
列表示幅は、属性名表示幅と属性値表示幅との最大値であり、係る属性値を列として表示する場合に必要とされる表示幅である。例えば、属性番号が1であるレコードは、属性名表示幅が3であり、属性値表示幅が2であるので、2と3との最大値である3を列表示幅の値とする。
【0067】
列表示幅合計は、属性名表示幅を上位より累計した値である。例えば、属性番号が4である列表示幅累計は、属性番号が4であるレコードの列表示幅である7、その上位のレコードである属性番号が2であるレコードの列表示幅である9、その上位のレコードである属性番号が1であるレコードの列表示幅である3、の累計であるから、値は7+9+3=19となる。
【0068】
備考表示幅は、属性名と属性値とを1行で表示した場合の表示幅である。本実施例では、属性名と属性値との区切りを示す文字として「:」を用いる。本実施例においては、備考表示幅は属性名表示幅と属性値表示幅と「:」の文字幅である1を合計した値である。例えば、属性番号が1であるレコードの備考表示幅は属性名表示幅である3と属性値表示幅である2と「:」の文字幅である1と、の合計であるから、3+2+1=6となる。
【0069】
備考表示幅の最大は、各レコードより下位のレコードの備考表示幅の最大値である。例えば、属性番号が4である備考表示幅の最大は、属性番号が4であるレコードより下位のレコードである属性番号が3、6、5、7、8、9、10であるレコードの行表示幅である12、8、15、14、8、9、10の最大値であるから15となる。
【0070】
属性表示幅は、列表示幅合計と備考表示幅の最大との合計である。
【0071】
属性表示幅に基づき、列として表示する属性を抽出する。例えば、部品表において属性表示のために用いることができる表示幅が40であったとすると、属性表示幅が40以下であるレコードであって最も下位のレコードである属性番号である3、およびその上位のレコードの属性番号である1、2、4を抽出する。
【0072】
次に、S2において抽出した属性番号のうち、S4において抽出した属性番号以外の属性値を品番毎に1つにまとめて「備考」フィールドの値とする(S5)。S2で抽出された属性番号は1〜10の10個であり、S4で抽出された属性番号は1、2、4、3の4個であるから、残りの属性番号は、5、6、7、8、9、10の6個である。
【0073】
図17に属性値テーブルより、該属性番号に係るレコードを抽出し、属性番号によって属性名テーブルの属性名を結合し、さらに属性名と属性値とを連結した「備考表示」を追加した状態を示す。備考表示は、属性値と「:」と属性名を文字列と見なして連結した文字列である。例えば、品番がP5、属性番号が5の場合、属性名が「静電容量[pF]」で、属性値が220000であるから、備考表示は、「静電容量[pF]:220000」となる。
【0074】
図18に示す「備考」列は、図17において品番が同じであるレコードの備考表示を、改行コードを挟んで連結し、1つの文字列としたものである。例えば、図17において、品番がP9であるレコードは2つあり、その備考表示は「画面サイズ[インチ]:5.4」と「解像度:QVGA」との2つの文字列であるから、この2つの文字列を、改行コードを挟んで連結して、「画面サイズ[インチ]:5.4(改行コード)解像度:QVGA」とする。なお、(改行コード)は、実際には表示されず、その位置で改行することを表す。
【0075】
最後に部品表を作成・表示をする(S6)。
【0076】
図19に部品表を示す。部品表の行方向の目次は、S1において抽出された品番とする。本実施例においては、P1〜P11が部品表の各行の目次となる。品番の表示においては、親子テーブルに基づき親子関係を示すツリー表示とすることが望ましい。また、親子テーブルに基づき品番(子)に係る員数を表示する。
【0077】
また、品名テーブルに基づき、各行の品番に係る品名を一列に表示する。
【0078】
また、S4において抽出された属性を列として表示する。各行各列が交差する枡目には、該行に係る品番・該列に係る属性に係る属性値を属性値テーブルに基づき表示する。S4において抽出された属性番号は、1、2、4、3であるから、属性名テーブルに基づき、「メーカ」、「サイズ[mm]」、「定格電圧[V]」、「抵抗値[Ω]」の文字列を各列の最上段に目次として表示する。また、属性値テーブルにおいて、品番がP3かつ属性番号が1であるレコードの属性値は「A社」であるから、品番がP3である行かつ属性名が「メーカ」である列の交差する枡目に「A社」を表示する。他の桝目も同様に属性値を表示するが、桝目に対応する属性値が属性値テーブルに存在しない場合は、その桝目は空欄とする。例えば、品番がP6かつ属性番号が4であるレコードは属性値テーブルに存在しない。従って、品番がP6を行の目次としかつ属性番号が4である属性名である定格電圧[V]を列の目次とする枡目は空欄する。
【0079】
また、品番に基づき、S5で作成した文字列を「備考」列として表示する。例えば、図17に示すテーブルにおいて品番P5に係る備考表示は「静電容量[pF]:220000」であるから、品番がP5である行に係る備考列に「静電容量[pF]:220000」と表示する。また、品番がP9またはP11である行のように、備考列に記載する文字列が複数行である場合は、該行の幅を文字列が表示できるように広く表示しても良い。
【0080】
本実施例によれば、部品表の属性表示幅を狭くすることができる。例えば、図24に記載の部品表においては、属性表示のための列として9列、属性表示幅として63を必要とするが、本実施例においては、属性表示のための列を5列、属性表示幅を40とする表示が可能である。
【0081】
また、部品表の空欄の割合を小さくすることができる。図24に記載の部品表の属性表示に係る110個の枡目のうち、属性値が表示されているのは30個、空欄が80個であり、利用率は30/110=27%である。対して、本実施例の部品表では、属性表示に係る桝目は55個であり、そのうち28個に属性値が表示されており、27個が空欄である。そのため、利用率は28/55=51%である。このように、部品表中の空欄の割合を小さくし、桝目の利用率を向上させ、少ない桝目で多くの情報を効率的に表示することが可能となる。
【0082】
また、部品表の面積を狭くすることができる。例えば、図24における属性表示幅は63、行数は12であるので面積は63×12=756である。対して本実施例の部品表は、属性表示幅が40である。また、品番がP9およびP10である行の行幅が2となっているので、行幅の合計は14である。従って、面積は40×14=560である。すなわち、面積は図24の部品表に対して560/756=74%である。
【0083】
また、本実施例によれば、属性表示幅が、部品表において属性表示のために用いる所定の表示幅以下となるように、列として表示すべき属性を抽出するので、属性表示幅を前記所定の表示幅以下に収めることができ、部品表の幅を所定の幅以下とすることができる。これにより、所定の表示幅を表示可能な表示部に部品表を表示する場合に、表示部の表示幅に部品表の表示幅が収まるように表示することができるので、部品表の一覧性を向上させることができる。
【産業上の利用可能性】
【0084】
本発明は、部品表を表示する用途以外にも、表を作成・表示することに関し、利用可能である。
【符号の説明】
【0085】
1 部品表表示装置
2 CPU
3 記憶部
4 表示部
5 手入力部
6 通信IF
【特許請求の範囲】
【請求項1】
複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示装置であって、
前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする部品表表示装置。
【請求項2】
複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示方法であって、
前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする部品表表示方法。
【請求項3】
請求項2に記載の部品表表示方法をコンピュータに実行させるためのプログラム。
【請求項1】
複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示装置であって、
前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする部品表表示装置。
【請求項2】
複数種類の属性に係る属性値を複数備える部品情報を複数備えるテーブルを部品表として表示する部品表表示方法であって、
前記属性値の数を属性毎に集計し、前記属性値の数が多い属性に係る属性値を列として表示し、前記属性値の数が多い属性以外の属性値を、部品情報毎に1つに結合して1つの列に表示することを特徴とする部品表表示方法。
【請求項3】
請求項2に記載の部品表表示方法をコンピュータに実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【公開番号】特開2012−18495(P2012−18495A)
【公開日】平成24年1月26日(2012.1.26)
【国際特許分類】
【出願番号】特願2010−154414(P2010−154414)
【出願日】平成22年7月7日(2010.7.7)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
【公開日】平成24年1月26日(2012.1.26)
【国際特許分類】
【出願日】平成22年7月7日(2010.7.7)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
[ Back to top ]