(57)【特許請求の範囲】
【請求項１】
複数の工程を経て、製造・流通がおこなわれる製造物の工程をコンピュータを用いて管理する工程管理システムにおいて、
前記製造物の種類に対して、その製造物の工程を定義した工程テーブルと、
前記工程の作業順序を定義した工程関係テーブルと、
前記製造物を特定する製造物ＩＤに対して、その製造物の製造・流通の履歴情報を定義した履歴テーブルと、
前記履歴情報が示す履歴の作業順序を定義した履歴関係テーブルとを有し、
前記工程テーブルと前記工程関係テーブルとに基き、入力された履歴情報から前記履歴テーブルと前記履歴関係テーブルとに情報を設定し、
前記履歴テーブルに登録される履歴の工程の前工程または後工程に関する履歴が、前記履歴テーブルに登録されていないときは、前記履歴と前記前工程または後工程に関する履歴との履歴関係を仮登録し、
さらに、前記製造物を特定する製造物ＩＤに対して、その製造物の製造・流通の推定した履歴情報を格納する推定履歴テーブルと、
前記履歴関係テーブルの未設定の履歴に対して、推定された履歴の作業順序を格納した推定履歴関係テーブルとを有し、
前記履歴関係テーブルに設定された履歴に対して、前記工程関係テーブルから導かれる前工程または後工程に関する履歴が未設定であるときに、
前記未設定の履歴に対し、
前記工程テーブルと、前記工程関係テーブルと、前記履歴関係テーブルとに基き、
その製造物ＩＤの製造物に関する履歴を推定して、前記推定履歴テーブルに推定された履歴の履歴情報を設定し、前記推定履歴関係テーブルに推定された履歴の作業順序を設定することを特徴とする工程管理システム。
【請求項２】
前記履歴テーブルに格納されている項目である履歴の作業日時と、前記工程関係テーブルに格納されている工程に関する時間情報とに基き、
前記推定履歴テーブルに、推定された履歴の推定作業日時を設定することを特徴とする請求項１記載の工程管理システム。
【請求項３】
複数の工程を経て、製造・流通がおこなわれる製造物の工程をコンピュータを用いて管理する工程管理方法において、
前記製造物の種類に対して、その製造物の工程を定義するステップと、
前記工程の作業順序を定義するステップと、
製造物ＩＤにより特定された製造物の履歴情報を入力するステップと、
前記入力された履歴情報と、前記定義された工程と工程の作業順序とから、履歴情報と履歴情報が示す履歴の作業順序を設定するステップと、
前記履歴情報が示す履歴の作業順序で、前記工程の作業順序から見て未設定の履歴に関して、前記定義された工程と工程の作業順序とに基き、その履歴を推定するステップと、
前記入力された履歴情報と推定された履歴に基き、前記製造物ＩＤをキーにして、その製造物ＩＤにより特定された製造物の履歴を作業順に並べて出力するステップとを有することを特徴とする工程管理方法。
【請求項４】
前記工程の作業順序から見て未設定の履歴に関して、前記未設定である履歴を監視し、所定時間経過後に所定の処理をおこなうことを特徴とする請求項３記載の工程管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工程管理システム、および、工程管理方法に係り、製造・流通がおこなわれる製造物の工程をコンピュータを用いて管理するシステムであって、製造、流通工程における履歴を収集、構造化し、トレーサビリティ情報を検索し、出力する用途に用いて好適な工程管理システムに関する。
【背景技術】
【０００２】
従来、製造工程における履歴を管理することは、製造物の品質を高めるために重要視されてきた。すなわち、モノ（以下、製造・流通に係る物品を単に「モノ」と表記する）が何からできているのか、モノがどのような経路を通過してきたのか、モノに対してどのような処理がおこなわれたかなどのトレーサビリティ情報を提供することにより、モノの安全性や品質の保証となったり、モノに対して問題が起こった場合の問題箇所の究明に役立てることができる。
【０００３】
コンピュータシステムにより製造工程における履歴を管理するものとしては、以下の特許文献１がある。この特許文献１では、履歴情報を登録する際に、製造工程定義テーブルを参照して前工程を特定し、前工程の工程管理テーブルに、現工程の履歴番号を登録する。履歴情報が蓄えられた後、工程管理テーブル中の履歴を工程順に結合して、工程履歴テーブルを生成、出力する。工程履歴テーブルを見ることにより、製品ごとの製造工程履歴を容易に認識することができる。
【０００４】
【特許文献１】特許第３０６０９８４号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記従来技術は、予め製品ごとに工程管理テーブルを定義しておき、その工程管理情報に基き、工程バッチ番号により連結された工程履歴テーブルを生成するものであった。
【０００６】
しかしながら、製造工程の管理において、履歴情報の収集が不完全なことがしばしばある。例えば、工程により履歴の登録されるまでにかかる時間が違うなどの理由で履歴がすべて登録されていない状況や、履歴の一部が消失してしまった状況がおこりうる。このような状況下では、履歴を構造化して並べることができなかったり、あたかも抜けた履歴の作業がなかったかのような、本来あるべき履歴を飛ばして履歴を並べたものを提示することがあり、工程の履歴管理が十分に実をあげることができないという問題点があった。
【０００７】
本発明は、上記従来技術の問題点を解決するためになされたもので、その目的は、コンピュータシステムにより履歴管理をおこなうにあたって、履歴情報の収集が不完全な場合であっても、製造履歴を推定して、製造物に関する履歴のトレーサビリティを向上させ、使い勝手がよく履歴の管理をおこないやすい工程管理システムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明の工程管理システムにおいては、モノの種類に対して、そのモノの工程を定義した工程テーブルと、工程の作業順序の定義した工程関係テーブルと、モノを特定するモノＩＤに対して、そのモノの製造・流通の履歴情報を定義した履歴テーブルと、前履歴と後履歴の対からなる履歴情報が示す作業の作業順序を定義した履歴関係テーブルとを用意しておき、これらの工程テーブルと工程関係テーブルとに基き、入力された履歴情報から履歴テーブルと履歴関係テーブルとに情報を設定する。そして、モノＩＤから検索して履歴を作業の経過順に出力できるようにする。
【０００９】
また、監視プログラムにより、履歴関係テーブルの設定が保留になっている履歴に対して、作業時間と工程の時間情報に基き、ある時間になると警告を出力したり、規定のアクションをおこなうようにする。
【００１０】
さらに、履歴関係テーブルの保留になっている履歴に関しては、履歴の推定をおこなって、実際におこなわれた作業履歴と推定された履歴を、作業の経過順に出力できるようにする。
【００１１】
これにより、履歴と履歴関係を用いることで、モノが何からできているのか、モノがどのような経路を通過してきたのか、モノに対してどのような処理がおこなわれたかなどの情報を得ることができるので、トレーサビリティの実現を容易におこなうことができる。
【００１２】
履歴情報の集まる順番が工程順でなくても、履歴関係を作成することができる。さらに、履歴情報が届くたびに履歴関係を作成するだけでなく、履歴情報を集めて、適当なタイミングでバッチ的に履歴関係を作成することができるので、リアルタイムに履歴を登録することができないシステムでも、履歴の管理をおこなうことができる。
【００１３】
また、作業は終了したが、履歴情報が届いていないものを、検出することができる。一定時間以上、履歴情報が届かない場合は、警告を出すことができる。そして、履歴情報の一部が届いていない場合や、障害などにより履歴情報が消えてしまった場合にも、推定をおこなうことで、モノの製造・流通経路をいくつかの候補に絞り込んで、提示することができる。
【発明の効果】
【００１４】
本発明によれば、コンピュータシステムにより履歴管理をおこなうにあたって、履歴情報の収集が不完全な場合であっても、製造履歴を推定して、製造物に関する履歴のトレーサビリティを向上させ、使い勝手がよく履歴の管理をおこないやすい工程管理システムを提供することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明に係る各実施形態を、図１ないし図２４を用いて説明する。
【００１６】
〔システム構成〕
先ず、図１を用いて本発明に係る工程管理システムのシステム構成を説明する。
図１は、本発明に係る工程管理システムのシステム構成図である。
【００１７】
本発明のシステムは、ハードディスクなどの記憶装置Ｅ０１００と、ＣＰＵなどの中央処理装置Ｅ０２００と、キーボードやバーコードリーダやＲＦＩＤリーダなどの入力装置Ｅ０３００と、液晶ディスプレイやプリンタなどの出力装置Ｅ０４００と、Ｅｔｈｅｒｎｅｔ（登録商標）などの通信装置Ｅ０５００とが、バスによって接続する構成をとる。
【００１８】
記憶装置Ｅ０１００には、工程テーブルＴ１１００と、工程関係テーブルＴ１２００と、履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００と、推定履歴テーブルＴ１５００と、推定履歴関係テーブルＴ１６００と、履歴登録プログラムＦ１１００と、検索プログラムＦ１２００と、監視プログラムＦ１３００と、履歴推定プログラムＦ１４００とを格納する。
【００１９】
工程テーブルＴ１１００は、いかなる作業工程があり、それぞれの工程でいかなることをするかなどの定義を保持する。
【００２０】
工程関係テーブルＴ１２００は、工程テーブルＴ１１００に登録された工程間の関係の定義を保持する。そして、工程関係により、工程の実行順序などを定義する。
【００２１】
履歴テーブルＴ１３００は、工程テーブルＴ１１００に登録された工程に対応する作業履歴を蓄積する。
【００２２】
履歴関係テーブルＴ１４００は、履歴テーブルＴ１３００に登録された履歴間の関係情報を蓄積する。履歴関係により、履歴の実行順序などを提示することができる。
【００２３】
推定履歴テーブルＴ１５００は、保留となっていて、未だ登録されていない履歴を推定した結果を保持する。
推定履歴関係テーブルＴ１６００は、履歴テーブルＴ１３００の履歴と推定履歴テーブルＴ１５００の履歴の間の関係情報を保持する。
履歴登録プログラムＦ１１００は、入力装置Ｅ０３００や通信装置Ｅ０５００を通して送られてきた履歴情報を、履歴テーブルＴ１３００に登録する。また、工程テーブルＴ１１００と、工程関係テーブルＴ１２００を用いて、履歴テーブルＴ１３００に登録された履歴間の関係情報を作成し、履歴関係テーブルＴ１４００に登録する。
【００２４】
検索プログラムＦ１２００は、入力装置Ｅ０３００や通信装置Ｅ０５００から入力された検索条件に対して、履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００と、推定履歴テーブルＴ１５００と、推定履歴関係テーブルＴ１６００を用いて、履歴の検索をおこない、履歴関係に基づいて履歴を構造化して並べる。そして、検索結果は、出力装置Ｅ０４００や通信装置Ｅ０５００から出力する。
【００２５】
監視プログラムＦ１３００は、履歴テーブルＴ１３００と履歴関係テーブルＴ１４００を監視し、一定の時間以上履歴が登録されない場合に、警告を発したり、履歴推定プログラムＦ１４００を起動して履歴の推定をするなど、規定の動作をする。
【００２６】
履歴推定プログラムＦ１４００は、工程テーブルＴ１１００と、工程関係テーブルＴ１２００と、履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００を用いて、履歴関係テーブルＴ１４００で保留となっている履歴情報を推定する。推定した履歴は、推定履歴テーブルＴ１５００に、推定した履歴と履歴の関係情報は推定履歴関係テーブルＴ１６００に登録する。
【００２７】
〔実施形態１〕
以下、本発明に係る第一の実施形態を、図２ないし図１０を用いて説明する。
図２は、ＰＣの製造と流通の工程モデルを示す工程ダイアグラムである。
図３は、工程テーブルＴ１１００の一例を示す図である。
図４は、工程関係テーブルＴ１２００の一例を示す図である。
図５は、モノ属性テーブルＴ１７００の一例を示す図である。
図６は、履歴テーブルＴ１３００の一例を示す図である。
図７は、本発明の第一の実施形態に係る履歴テーブルＴ１３００の生成の途中の様子を示す図である。
図８は、本発明の第一の実施形態に係る履歴関係テーブルＴ１４００の一例を示す図である。
図９は、本発明の第一の実施形態に係る履歴登録プログラムＦ１１００の処理を示すフローチャートである。
図１０は、検索プログラムＦ１２００の処理を示すフローチャートである。
図１１は、本発明の第一の実施形態に係る履歴の検索結果を作業順に出力した例を示す図である。
【００２８】
本実施形態では、モノがＰＣである場合をモデルにして、それに関連する履歴情報の登録し、履歴関係を作成する例を説明する。この例では、モノに関する履歴情報が、そのモノの工程順に集まらなくてもよい。
【００２９】
本実施形態で採りあげるＰＣは、図２に示されたような製造と流通の工程モデルを有するものとする。図２（ａ）がＰＣの流通部分で、図２（ｂ）がＰＣの製造部分である。ここで、Ｐ１１、Ｐ１２、…、Ｐ５５、Ｐ５６は、工程を識別する番号である。例えば、工程Ｐ１１は、工場１での出荷工程を示している。また、工程と工程を結ぶ矢印は、工程間の関係であり、工程の実行順序を示している。例えば、工程Ｐ１１から工程Ｐ２１への工程関係Ｔ１２１１は、ＰＣを工場１で出荷し、次に倉庫１で検品をおこなうことを示している。
【００３０】
図２（ａ）の工程Ｐ１１からは分岐して、工程Ｐ２１への工程関係Ｔ１２１１と、工程Ｐ２２への工程関係Ｔ１２１２と二つの工程関係がある。これは、あるＰＣは倉庫１に送り、別のあるＰＣは倉庫２に送るという２つの経路の可能性があることを示している。図２（ｂ）の枠Ｔ１２２５で囲んだ部分は、工程関係Ｔ１２２２と工程関係Ｔ１２２３がグループであることを示している。グループの中の矢印は、複数の経路の可能性があるという意味ではなく、複数の矢印すべての経路が必要という意味となる。すなわち、工程Ｐ５５のＰＣ合成のためには、工程関係Ｔ１２２２を通して工程Ｐ５２から来た演算装置と、工程関係Ｔ１２２３を通して工程Ｐ５４から来たディスプレイ、両方の経路が必要であり、両方を組み合わせる工程が工程Ｐ５５となる。ＰＣに関する工程モデルは、以下の図３に示される工程テーブルＴ１１００と、図４に示される工程関係テーブルＴ１２００により、定義することができる。
【００３１】
工程テーブルＴ１１００は、図３に示されるように、全工程中で工程を一意に識別する「工程ＩＤ」と、作業をおこなう場所を示す「作業場所」と、作業をおこなう対象となるモノの種類を示す「モノ種類」と、工程でいかなる作業をおこなうかを示す「作業内容」などの項目を有している。そして、作業場所、モノ種類、作業内容などの項目の組み合わせにより、工程を判別することができるように定義する。例えば、工程Ｐ１１の工程は、工場１でＰＣに対しておこなう出荷工程であることを示している。この工程テーブルＴ１１００には、システム使用者があらかじめデータを登録しておく必要がある。
【００３２】
一方、工程関係テーブルＴ１２００は、図４に示されるように、遷移前の工程を示す「前工程ＩＤ」と、遷移後の工程を示す「後工程ＩＤ」と、遷移前の作業から遷移後の作業までの間の平均的な時間差を示す「推定時間」と、複数の工程関係をグループ化するための「グループＩＤ」などの項目を有している。例えば、工程関係Ｔ１２１１のレコードは、前工程がＰ１１であり、後工程がＰ２１であるから、工程Ｐ１１の次に工程Ｐ２１を実行することを示している。また、工程関係Ｔ１２１１と工程関係Ｔ１２１４より、工程Ｐ１１、工程Ｐ２１、工程Ｐ３１の順に流れる工程の経路があることを定義できる。なお、推定時間は、「１時間」のような単一の時間だけでなく、「１時間〜２時間」のような範囲で示しても良い。この工程関係テーブルＴ１２００には、システム使用者があらかじめデータを登録しておく必要がある。
【００３３】
モノ属性テーブルＴ１７００は、図５に示されるように全モノ中でモノを一意に識別する「モノＩＤ」と、モノがどのような種類のモノであるかを示す「モノ種類」などの項目を有する。例えば、モノ属性情報Ｔ１７１１は、モノＩＤがＰＣ１であるモノの種類は、ＰＣであるということを示している。より具体的には、モノ種類は、ＰＣの型番であり、モノＩＤは、シリアル番号、あるいは、運搬の対象となるパレットにつけられるパレットＩＤに対応するものである。モノ属性テーブルＴ１７００には、システム使用者があらかじめデータを登録しておくか、初めて履歴を登録する際に、モノの属性情報も登録するようにして、データの登録をおこなう。このモノ属性テーブルＴ１７００は、履歴情報を登録する際の参照情報として用いられる。
【００３４】
履歴テーブルＴ１３００は、図６に示されるように全履歴中で履歴を一意に識別する「履歴ＩＤ」と、作業がおこなわれた日時を示す「作業日時」と、作業がおこなわれた場所を示す「作業場所」と、作業をおこなった対象となるモノを示す「モノＩＤ」と、作業の内容を示す「作業内容」と、作業が属する工程を示す「工程ＩＤ」などの項目を有する。例えば、履歴Ｈ１１は、「１２月１日の１０時に工場１にて、ＰＣ１を出荷した」という内容を示し、工程Ｐ１１に属することを示している。図には示さないが、履歴テーブルＴ１３００には、作業をおこなった者を示す「作業者ＩＤ」などの項目を含んでも良い。履歴テーブルＴ１３００には、後に説明するように履歴登録プログラムＦ１１００により、データを登録する。
【００３５】
履歴関係テーブルＴ１４００は、図８に示されるように遷移前の履歴を示す「前履歴ＩＤ」と、遷移後の履歴を示す「後履歴ＩＤ」などの項目を有する。例えば、履歴関係Ｔ１４１１は、履歴Ｈ１１の作業をおこなった後に、履歴Ｈ２１の作業をおこなったことを示している。履歴関係テーブルＴ１４００には、後に説明するように履歴登録プログラムＦ１１００により、データを登録する。
【００３６】
次に、図９を用いて履歴登録プログラムＦ１１００の処理を説明する。
【００３７】
履歴登録プログラムＦ１１００は、履歴情報を引数にして起動する。
【００３８】
先ず、最初の状態として、履歴テーブルＴ１３００は、図７（ａ）に示されているように、履歴Ｈ１１、Ｈ２１が登録されている状況であり、履歴関係テーブルＴ１４００は、図８（ａ）に示されているようにそれぞれ前履歴ＩＤ、後履歴ＩＤに履歴Ｈ１１、Ｈ２１が登録されている状況であるとする。
【００３９】
最初に、履歴登録プログラムＦ１１００が、「作業日時：１２／０３  １６：００、作業場所：店舗１、作業内容：入荷、モノＩＤ：ＰＣ１」という履歴情報を引数に起動すると、次のようになる。
【００４０】
モノ属性テーブルＴ１７００を用いて、モノＩＤがＰＣ１であるため、モノ種類がＰＣであることを検索する。そして、工程テーブルＴ１１００のレコードを検索し、モノ種類、作業場所、作業内容をマッチングされて、「モノＩＤ：ＰＣ１、作業場所：店舗１、作業内容：入荷」である工程は、工程Ｐ４１ということがわかる（ステップＦ１１０１）。なお、引数の履歴情報に工程ＩＤが渡される場合には、モノ属性テーブルＴ１７００や、工程テーブルＴ１１００を用いずに、履歴情報から直接工程ＩＤを取り出しても良い。
【００４１】
そして、履歴登録プログラムＦ１１００が、履歴情報に対して、全履歴中で履歴を一意に識別する履歴ＩＤを発行する。例えば、この履歴情報に対しては、Ｈ４１という履歴ＩＤを発行する。履歴ＩＤを含んだ履歴情報を、履歴テーブルＴ１３００に登録する。図７（ｂ）の履歴Ｈ４１のようになる（ステップＦ１１０２）。
【００４２】
そして、ステップＦ１１０３〜ステップＦ１１０６で、履歴Ｈ４１と前工程の履歴との間の履歴関係を作成して、履歴関係テーブルに登録する。
【００４３】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ４１の前工程を検索する。すると、「後工程ＩＤ：Ｐ４１」である工程関係として、工程関係Ｔ１２１７と工程関係Ｔ１２１８の二つが見つかる。すなわち、前工程が存在する。なお、前工程が存在しない場合、すなわち、その製造に係る第一工程の場合は、前工程の履歴との履歴関係を作成するステップを飛ばす（ステップＦ１１０３）。
【００４４】
工程関係Ｔ１２１７「前工程ＩＤ：Ｐ３１、後工程ＩＤ：Ｐ４１」に関して、工程Ｐ３１の履歴でのモノＩＤを取得する（ステップＦ１１０４）。履歴Ｈ４１におけるモノＩＤはＰＣ１で、工程Ｐ３１と工程Ｐ４１ではモノ種類は変化していない。よって、工程Ｐ３１の履歴でのモノＩＤはＰＣ１であろうと推測される。
【００４５】
また、工程関係Ｔ１２１８「前工程ＩＤ：Ｐ３２、後工程ＩＤ：Ｐ４１」に関して、工程Ｐ３２の履歴でのモノＩＤを取得する（ステップＦ１１０４）。履歴Ｈ４１におけるモノＩＤはＰＣ１で、工程Ｐ３２と工程Ｐ４１ではモノ種類は変化していない。よって、工程Ｐ３２の履歴でのモノＩＤはＰＣ１であろうと推測される。
【００４６】
モノＩＤと工程ＩＤにより、履歴を特定することができる。工程関係Ｔ１２１７に対応する履歴関係を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ３１」であるような履歴を検索する。しかし、図７（ｂ）の履歴テーブルＴ１３００には、そのような履歴は見つからない。よって、工程関係Ｔ１２１７に対応する履歴関係は登録されていないことがわかる。次に、工程関係Ｔ１２１８に対応する履歴関係を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ３２」である履歴を検索する。しかし、図７（ｂ）の履歴テーブルＴ１３００には、そのような履歴は見つからない。よって、工程関係Ｔ１２１８に対応する履歴関係は登録されていないことがわかる。以上より、工程関係Ｔ１２１７と工程関係Ｔ１２１８に対応する履歴関係がないことがわかる（ステップＦ１１０５）。
【００４７】
この結果、前工程の履歴を保留を表現するコードを用いて、履歴関係を履歴関係テーブルＴ１４００に仮登録する。仮に、そのコードとして「Ｐｅｎｄｉｎｇ」を用いるとすると、図８（ｂ）の履歴関係Ｔ１４１３のように、「前履歴ＩＤ：Ｐｅｎｄｉｎｇ、後履歴ＩＤ：Ｈ４１」という履歴関係を作成して、履歴関係テーブルＴ１４００に追加する（ステップＦ１１０６）。
【００４８】
次に、ステップＦ１１０８で、履歴Ｈ４１と後工程の履歴との間の履歴関係を作成する。
【００４９】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ４１の後工程を検索する。すると、「前工程ＩＤ：Ｐ４１」である工程関係は見つからない。よって、後工程の履歴との履歴関係を作成するステップを飛ばす（ステップＦ１１０８）。
【００５０】
以上の処理により、履歴Ｈ４１が登録され、履歴関係テーブルＴ１４００は、図８（ｂ）のようになる。
【００５１】
続いて、履歴登録プログラムＦ１１００が、「作業日時：１２／０３  １１：００、作業場所：センター１、作業内容：検品、モノＩＤ：ＰＣ１」という履歴情報を引数に起動すると、次のようになる。
【００５２】
履歴情報のうち、工程を特定する情報から、履歴がどの工程に属するかを取得する。履歴情報は工程Ｐ３１に属することがわかる（ステップＦ１１０１）。
履歴情報を、履歴テーブルＴ１３００に登録する。図７（ｃ）に示された履歴テーブルＴ１３００の履歴Ｈ３１のようになる（ステップＦ１１０２）。
【００５３】
そして、ステップＦ１１０３〜ステップＦ１１０６で、履歴Ｈ３１と前工程の履歴との間の履歴関係を作成する。
【００５４】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ３１の前工程を検索する。すると、「後工程ＩＤ：Ｐ３１」である工程関係として、工程関係Ｔ１２１４が見つかる（ステップＦ１１０３）。すなわち、前工程が存在する。
【００５５】
工程関係Ｔ１２１４「前工程ＩＤ：Ｐ２１、後工程ＩＤ：Ｐ３１」に関して、工程Ｐ２１の履歴でのモノＩＤを取得する（ステップＦ１１０４）。履歴Ｈ３１におけるモノＩＤはＰＣ１で、工程Ｐ２１と工程Ｐ３１ではモノ種類は変化していない。よって、工程Ｐ２１の履歴でのモノＩＤはＰＣ１であろうと推測される。
【００５６】
次に、工程関係Ｔ１２１４に対応する履歴関係を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ２１」である履歴を検索する。すると、履歴Ｈ２１が見つかる。履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ２１」である履歴を検索する。すると、図８（ｂ）の履歴関係Ｔ１４１２が見つかる（ステップＦ１１０５）。
【００５７】
これで、「前履歴ＩＤ：Ｈ２１」の後の履歴がＨ３１であることがわかったので、図７（ｃ）の履歴関係Ｔ１４１２のように、Ｐｅｎｄｉｎｇ部分を履歴Ｈ３１に書き換える（ステップＦ１１０６）。
【００５８】
次に、ステップＦ１１０８〜ステップＦ１１１２で、後工程の履歴との間の履歴関係を作成する。
工程関係テーブルＴ１２００を用いて、工程Ｐ３１の後工程を検索する。すると、「前工程ＩＤ：Ｐ３１」である工程関係として、工程関係Ｔ１２１７が見つかる。すなわち、後工程が存在する（ステップＦ１１０８）。
工程関係Ｔ１２１７「前工程ＩＤ：Ｐ３１、後工程ＩＤ：Ｐ４１」に関して、工程Ｐ４１の履歴でのモノＩＤを取得する（ステップＦ１１０９）。履歴Ｈ３１におけるモノＩＤはＰＣ１で、工程Ｐ３１におけるモノ種類と工程Ｐ４１におけるもの種類は変化していないので、工程Ｐ４１の履歴でのモノＩＤはＰＣ１であろうと推測される。
【００５９】
そして、工程関係Ｔ１２１７に対応する履歴関係を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程Ｐ４１」である履歴を検索する。すると、履歴Ｈ４１が見つかる。履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ４１」である履歴を検索する。すると、図７（ｂ）の履歴関係Ｔ１４１３が見つかる（ステップＦ１１１０）。
【００６０】
これで、「後履歴ＩＤ：Ｈ４１」の前の履歴が履歴Ｈ３１であることがわかったので、図７（ｃ）の履歴関係Ｔ１４１３のように、Ｐｅｎｄｉｎｇ部分を履歴Ｈ３１に書き換える（ステップＦ１１１２）。
【００６１】
以上の処理により、履歴Ｈ３１が登録され、履歴関係テーブルＴ１４００は図７（ｃ）のようになる。
【００６２】
次に、図１０を用いて検索対象とするモノＩＤを引数として検索し、履歴情報を出力する処理について説明する。
【００６３】
検索プログラムＦ１２００が、「モノＩＤ：ＰＣ１」を引数にして起動すると、次のようになる。
【００６４】
履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１」である履歴を検索する（ステップＦ１２０１）。すると、履歴Ｈ１１、Ｈ２１、Ｈ３１、Ｈ４１の四つが見つかる。この四つの履歴の中からまず一つの履歴を選択する。ここでは履歴Ｈ３１を選択するとする。
【００６５】
ステップＦ１２０１で見つかった履歴のうち、履歴Ｈ３１は未検索である（ステップＦ１２０２）。
【００６６】
履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ３１」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４１２「前履歴ＩＤ：Ｈ２１、後履歴ＩＤ：Ｈ３１」が見つかる。
【００６７】
また、履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ２１」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４１１「前履歴ＩＤ：Ｈ１１、後履歴ＩＤ：Ｈ２１」が見つかる。
【００６８】
履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ１１」である履歴関係を検索する（ステップＦ１２０３）。しかし、そのような履歴関係は見つからない。したがって、履歴Ｈ１１が現在までの履歴の先頭である。このように前履歴をたどることにより、「履歴Ｈ１１→履歴Ｈ２１→履歴Ｈ３１」であることがわかる。
【００６９】
次に、履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ３１」である履歴関係を検索する（ステップＦ１２０４）。すると、履歴関係Ｔ１４１３「前履歴ＩＤ：Ｈ３１、後履歴ＩＤ：Ｈ４１」が見つかる。
履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ４１」である履歴関係を検索する。しかし、そのような履歴関係は見つからない。このように後履歴をたどることにより、「履歴Ｈ３１→履歴Ｈ４１」であることがわかる。（ステップＦ１２０４）
ステップＦ１２０１で見つかった履歴のうち、未検索の履歴がないときに、検索を終了する（ステップＦ１２０２）。
【００７０】
以上の処理により、「履歴Ｈ１１→履歴Ｈ２１→履歴Ｈ３１→履歴Ｈ４１」がＰＣ１の経路であることがわかる。
【００７１】
このＰＣ１に関して検索した結果を、図１１に示されように出力装置や通信装置を通して出力する。これにより、ＰＣ１がどのような工程をどのような順番で通ってきたかわかる。
【００７２】
〔実施形態２〕
以下、本発明に係る第二の実施形態を、図１２ないし図１６を用いて説明する。
【００７３】
工程管理において、作業がおこなわれたあとでも、履歴情報は必ずしも即座に反映されるものではなく、タイムラグがあったり、なんらかのトラブルにより更新されないときもある。本実施形態では、そのようなときに、工程と工程関係の設定情報を基にして、抜けている履歴を推定して表示するものである。
図１２は、監視プログラムＦ１３００の処理を示すフローチャートである。
図１３は、本発明の第二の実施形態に係る推定履歴テーブルＴ１５００の一例を示す図である。
図１４は、本発明の第二の実施形態に係る推定履歴関係テーブルの一例を示す図である。
図１５は、履歴推定プログラムＦ１４００の処理を示すフローチャートである。
図１６は、検索プログラムＦ１２００を使って、ＰＣ１に関して検索した場合の検索結果の表示の一例である。
【００７４】
図８に示した履歴関係テーブルＴ１４００において、前履歴ＩＤがＰｅｎｄｉｎｇで、後履歴が登録されている履歴関係が存在するということは、前履歴の作業は終了しているが、前履歴の履歴情報がシステムにまだ届いていないことを意味している。
【００７５】
図８（ｂ）に示されている状況、すなわち、履歴登録プログラムＦ１１００により履歴Ｈ１１、Ｈ２１、Ｈ４１が登録され、履歴Ｈ３１がまだ登録されていない状況での、監視プログラムＦ１３００の動作は、次のようになる。
【００７６】
履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｐｅｎｄｉｎｇ」であるような履歴関係を検索する（ステップＦ１３０１）。すると、履歴関係Ｔ１４１３が見つかる。
【００７７】
履歴関係Ｔ１４１３は、「前履歴ＩＤ：Ｐｅｎｄｉｎｇ、後履歴ＩＤ：Ｈ４１」である。履歴Ｈ４１の作業日時から現在までの時間が、システムによって決められた警告時間を超えているかどうかを調べる（ステップＦ１３０２）。このときには、履歴テーブルＴ１３００の作業日時の項目と、工程関係テーブルＴ１２００の推定時間差の項目が参照される。
【００７８】
警告時間を超えている場合は、警告を発したり、履歴関係Ｔ１４１３を引数にして履歴推定プログラムＦ１４００を起動するなど、システムによって決められたアクションを実行をする（ステップＦ１３０３）。
【００７９】
次に、履歴関係テーブルＴ１４００を用いて、他の「前履歴ＩＤ：Ｐｅｎｄｉｎｇ」である履歴関係を検索する（ステップＦ１３０１）。そのような履歴関係が見つからない場合は、終了となる。
【００８０】
監視プログラムＦ１３００は、これを定期的に実行し、履歴の未到着時間が警告時間を超えているものに対してアクションを実行する。
【００８１】
以下では、規定のアクションとして、あるモノＩＤに対して履歴を推定して出力する手順について説明する。
【００８２】
履歴の推定をおこなうときには、これまで説明してきたテーブルに加えて、推定履歴テーブルＴ１５００と、推定履歴関係テーブルＴ１６００が用いられる。
【００８３】
推定履歴テーブルＴ１５００は、図１３に示されるように全履歴中で履歴を一意に識別する「履歴ＩＤ」と、作業がおこなわれたと考えられる日時の範囲を示す「推定作業日時」と、作業がおこなわれた場所を示す「作業場所」と、作業をおこなった対象となるモノを示す「モノＩＤ」と、作業でおこなった内容を示す「作業内容」と、作業が属する工程を示す「工程ＩＤ」などの項目を有する。例えば、推定履歴ＨＸ３１は、「センター１において、ＰＣ１に対して検品作業をおこなったという履歴があるということが推測され、作業は１２／０３  １０：００から１２／０３  １２：００までの間におこなわれたであろうと推測される」ということを示している。推定履歴テーブルＴ１５００は、種別などの項目を設けて、履歴と推定履歴の区別をつけることができれば、履歴テーブルＴ１３００と同一にしても良い。推定履歴テーブルＴ１５００は、後に説明するように履歴推定プログラムＦ１４００により、データを登録する。
【００８４】
推定履歴関係テーブルＴ１６００は、図１４に示されるように遷移前の履歴を示す「前履歴ＩＤ」と、遷移後の履歴を示す「後履歴ＩＤ」など項目を有する。
【００８５】
推定履歴関係テーブルＴ１６００は、種別などの項目を設けて履歴関係と推定履歴関係の区別をつけることができれば、履歴関係テーブルＴ１４００と同一にしても良い。推定履歴関係テーブルＴ１６００は、後に説明するように履歴推定プログラムＦ１４００により、データを登録する。
【００８６】
次に、図１５を用いて履歴推定プログラムＦ１４００の処理を説明する。
【００８７】
図１５Ａが履歴推定プログラムＦ１４００のメイン部分で、図１５Ｂが工程履歴列検索サブルーチン部分である。なお、工程履歴列検索サブルーチンは、再起呼び出しをおこなっていることに注意を要する。
【００８８】
先ず、履歴推定プログラムＦ１４００は、履歴関係を引数にして起動する。「工程履歴列検索」サブルーチンは、引数で渡す履歴から一番近い過去の履歴を検索し、引数で渡す履歴から見つかった履歴までのパスを工程履歴列として返す。
【００８９】
工程履歴列とは、「履歴ＩＤ」または「工程ＩＤ（モノＩＤ）」を要素と持つリスト構造である。例えば、履歴Ｈ２１、工程Ｐ３１（ＰＣ１）、履歴Ｈ４１を要素として持つ工程履歴列は、仮に［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］と表記する。「工程Ｐ３１（ＰＣ１）」とは、工程Ｐ３１での履歴で、ＰＣ１に関するものという意味である。
【００９０】
履歴推定プログラムＦ１４００は、履歴の推定をおこなう際に、工程テーブルＴ１１００と工程関係テーブルＴ１２００を使用する。工程テーブルＴ１１００により、作業場所や作業内容などを推定することができる。また、工程関係テーブルＴ１２００の推定時間は、前後工程の履歴との時間の差を定義しているので、前後工程の履歴を利用して作業日時を推定することができる。
【００９１】
監視プログラムＦ１３００より、履歴推定プログラムＦ１４００が、履歴関係Ｔ１４１３を引数にして起動されると、次のようになる。
【００９２】
履歴関係Ｔ１４１３のＰｅｎｄｉｎｇでない履歴はＨ４１である。履歴Ｈ４１では、モノＩＤがＰＣ１、工程ＩＤがＰ４１である。「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ４１、工程履歴列：［Ｈ４１］」を引数として、サブルーチン「工程履歴列検索」を起動する（ステップＦ１４０１）。
【００９３】
工程Ｐ４１の前工程を検索する。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ４１」である工程関係を検索すると、工程関係Ｔ１２１７と工程関係Ｔ１２１８の二つが見つかる（ステップＦ１４１１（Ａ））。よって、前工程が存在する。ここで、ステップＦ１４１１（Ａ）は、ステップＦ１４１１は、再起呼出しで呼ばれる他のステップと区別するための表記である。
【００９４】
ステップＦ１４１１（Ａ）での検索で見つかった工程関係Ｔ１２１７「前工程ＩＤ：Ｐ３１、後工程ＩＤ：Ｐ４１」は未導出である（ステップＦ１４１２）。
【００９５】
未導出のときは、工程Ｐ３１の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ４１の履歴でのモノＩＤはＰＣ１で、工程Ｐ３１と工程Ｐ４１ではモノ種類は変化してない。よって、工程Ｐ３１でのモノＩＤはＰＣ１であろうと推測される。
【００９６】
工程Ｐ３１の履歴を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ３１」である履歴を検索する（ステップＦ１４１４）。しかし、そのような履歴は見つからない。
【００９７】
「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ３１、工程履歴列：［Ｐ３１（ＰＣ１），Ｈ４１］」を引数として、工程履歴列検索サブルーチンを起動する（ステップＦ１４１５）。すなわち、工程履歴列検索サブルーチンは再起呼び出しされる。
【００９８】
先ず、工程Ｐ３１の前工程を検索する（ステップＦ１４１１（Ｂ））。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ３１」である工程関係を検索すると、工程関係Ｔ１２１４が見つかる。よって、前工程が存在する。
【００９９】
ステップＦ１４１１（Ｂ）で見つかった工程関係Ｔ１２１４「前工程ＩＤ：Ｐ２１、後工程ＩＤ：Ｐ３１」は未導出である。（ステップＦ１４１２）
未導出のときは、工程Ｐ２１の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ３１の履歴でのモノＩＤはＰＣ１で、工程Ｐ２１と工程Ｐ３１ではモノ種類は変化していない。よって、工程Ｐ２１でのモノＩＤはＰＣ１であろうと推測される。
【０１００】
次に、工程Ｐ２１の履歴を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ２１」である履歴を検索する（ステップＦ１４１４）。すると、履歴Ｈ２１が見つかる。
【０１０１】
次に、工程関係Ｔ１２１４に対応する履歴関係を検索する。履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ２１、後履歴の工程ＩＤ：Ｐ３１」である履歴関係を検索する（ステップＦ１４１７）。しかし、そのような履歴関係は見つからない。
【０１０２】
工程履歴列［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］をメモリに保存する（ステップＦ１４１８）。これが、工程履歴列検索サブルーチンの戻り値となる。
【０１０３】
そして、ステップＦ１４１１（Ｂ）での検索で見つかった履歴関係のうち、未導出のものはない。したがって、工程履歴列検索サブルーチンを終了する（ステップＦ１４１２）。これで、再起呼び出しされた工程履歴列検索サブルーチンが終了することになる（Ｆ１４１５の呼び出し終了）。
【０１０４】
次に、ステップＦ１４１１（Ａ）での検索で見つかった工程関係Ｔ１２１８「前工程ＩＤ：Ｐ３２、後工程ＩＤ：Ｐ４１」は未導出である（ステップＦ１４１２）。
【０１０５】
未導出のときは、工程Ｐ３２の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ４１の履歴でのモノＩＤはＰＣ１で、工程Ｐ３２と工程Ｐ４１ではモノ種類は変化していない。よって、工程Ｐ３２でのモノＩＤはＰＣ１であろうと推測される。
【０１０６】
次に、工程Ｐ３２の履歴を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ３２」である履歴を検索する（ステップＦ１４１４）。しかし、そのような履歴は見つからない。
【０１０７】
「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ３２、工程履歴列：［Ｐ３２（ＰＣ１），Ｈ４１］」を引数として、工程履歴列検索サブルーチンを起動する（ステップＦ１４１５）。すなわち、工程履歴列検索サブルーチンは再起呼び出しされる。
【０１０８】
先ず、工程Ｐ３２の前工程を検索する（ステップＦ１４１１（Ｃ））。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ３２」である工程関係を検索すると、工程関係Ｔ１２１５と工程関係Ｔ１２１６の二つが見つかる。よって、前工程が存在する。
【０１０９】
ステップＦ１４１１（Ｃ）で見つかった工程関係Ｔ１２１５「前工程ＩＤ：Ｐ２１、後工程ＩＤ：Ｐ３２」は未導出である（ステップＦ１４１２）。
【０１１０】
未導出のときは、工程Ｐ２１の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ３２の履歴でのモノＩＤはＰＣ１で、工程Ｐ２１と工程Ｐ３２ではモノ種類は変化していない。よって、工程Ｐ２１でのモノＩＤはＰＣ１であろうと推測される。
【０１１１】
次に、工程Ｐ２１の履歴を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ２１」である履歴を検索する（ステップＦ１４１４）。すると、履歴Ｈ２１が見つかる。
【０１１２】
次に、工程関係Ｔ１２１５に対応する履歴関係を検索する（ステップＦ１４１７）。履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ２１、後履歴の工程ＩＤ：Ｐ３２」である履歴関係を検索する。しかし、そのような履歴関係は見つからない。
【０１１３】
したがって、工程履歴列［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］をメモリに保存する（ステップＦ１４１８）。これが、工程履歴列検索の戻り値となる。
【０１１４】
次に、ステップＦ１４１１（Ｃ）で見つかった工程関係Ｔ１２１６「前工程ＩＤ：Ｐ２２、後工程ＩＤ：Ｐ３２」は未導出である（ステップＦ１４１２）。
【０１１５】
未導出のときは、工程Ｐ２２の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ３２の履歴でのモノＩＤはＰＣ１で、工程Ｐ２２と工程Ｐ３２ではモノ種類は変化していない。よって、工程Ｐ２２でのモノＩＤはＰＣ１であろうと推測される。
【０１１６】
次に、工程Ｐ２２の履歴を検索する（ステップＦ１４１４）。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ２２」である履歴を検索する。しかし、そのような履歴は見つからない。
【０１１７】
したがって、再び「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ２２、工程履歴列：［Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］」を引数として、工程履歴列検索サブルーチンを起動する（ステップＦ１４１５）。すなわち、再び、工程履歴列検索サブルーチンは、再起呼出しされる。
【０１１８】
先ず、工程Ｐ２２の前工程を検索する（ステップＦ１４１１（Ｄ））。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ２２」である工程関係を検索すると、工程関係Ｔ１２１２と工程関係Ｔ１２１３の二つが見つかる。
【０１１９】
このとき、ステップＦ１４１１（Ｄ）での検索で見つかった工程関係Ｔ１２１２「前工程ＩＤ：Ｐ１１、後工程ＩＤ：Ｐ２２」は未導出である（ステップＦ１４１２）。
【０１２０】
未導出のときは、工程Ｐ１１の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ２２の履歴でのモノＩＤはＰＣ１で、工程Ｐ１１と工程Ｐ２２ではモノ種類は変化していない。よって、工程Ｐ１１でのモノＩＤはＰＣ１であろうと推測される。
【０１２１】
次に、工程Ｐ１１の履歴を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ１１」である履歴を検索する（ステップＦ１４１４）。すると、履歴Ｈ１１が見つかる。
【０１２２】
次に、工程関係Ｔ１２１２に対応する履歴関係を検索する（ステップＦ１４１７）。履歴テーブルＴ１３００と履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ１１、後履歴の工程ＩＤ：Ｐ２２」である履歴関係を検索する。しかし、そのような履歴関係は見つからない。
【０１２３】
したがって、工程履歴列［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３１（ＰＣ１），Ｈ４１］をメモリに保存する（ステップＦ１４１８）。これが、工程履歴列サブルーチンの戻り値である。
【０１２４】
次に、ステップＦ１４１１（Ｄ）での検索で見つかった工程関係Ｔ１２１３「前工程ＩＤ：Ｐ１２、後工程ＩＤ：Ｐ２２」は未導出である（ステップＦ１４１２）。
【０１２５】
未導出のときは、工程Ｐ１２の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ２２の履歴でのモノＩＤはＰＣ１で、工程Ｐ１２と工程Ｐ２２ではモノ種類は変化していない。よって、工程Ｐ１２でのモノＩＤはＰＣ１であろうと推測される。
【０１２６】
次に、工程Ｐ１２の履歴を検索する（ステップＦ１４１４）。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ１２」である履歴を検索する。しかし、そのような履歴は見つからない。
【０１２７】
したがって、「モノＩＤ：ＰＣ１、工程ＩＤ：Ｐ１２、工程履歴列：［Ｐ１２（ＰＣ１），Ｐ２２（ＰＣ１），Ｐ３１（ＰＣ１），Ｈ４１］」を引数として、工程履歴列検索サブルーチンを起動する（ステップＦ１４１５）。すなわち、再び、工程履歴列検索サブルーチンが再起呼出しされる。
【０１２８】
次に、工程Ｐ１２の前工程を検索する（ステップＦ１４１１（Ｅ））。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ１２」である工程関係を検索すると、そのような工程関係は見つからない。よって、前工程は存在しない。
【０１２９】
したがって、工程履歴列［Ｐ１２（ＰＣ１），Ｐ２２（ＰＣ１），Ｐ３１（ＰＣ１），Ｈ４１］をメモリに保存する（ステップＦ１４１６）。これが工程履歴列検索サブルーチンの戻り値である。工程履歴列検索サブルーチンを終了する（ステップＦ１４１５の呼出し終了）。
【０１３０】
ステップＦ１４１１（Ｄ）での検索で見つかった履歴関係のうち、未導出のものはない（ステップＦ１４１２）。工程履歴列検索サブルーチンを終了する（ステップＦ１４１５の呼出し終了）。
ステップＦ１４１１（Ｃ）での検索で見つかった履歴関係のうち、未導出のものはない（ステップＦ１４１２）。工程履歴列検索サブルーチンを終了する（ステップＦ１４１５の呼出し終了）。
【０１３１】
ステップＦ１４１１（Ａ）での検索で見つかった履歴関係のうち、未導出のものはない（ステップＦ１４１２）。工程履歴列検索サブルーチンを終了する。
【０１３２】
このようにして、工程履歴列検索サブルーチン実行によってメモリに保存された工程履歴列は、［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］、［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］、［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］、［Ｐ１２（ＰＣ１），Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］の四つである。
【０１３３】
ここまでで、図２（ａ）の工程関係を基にして推測される履歴Ｈ４１の前の作業となる推定履歴がわかったことになる。そして、工程履歴列の中に、先頭要素が履歴となる工程履歴列は、［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］、［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］、［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］の三つがある。先頭要素が履歴となっていないということは、その工程のパスは、これまでに履歴情報としての登録がなかったことを意味する。したがって、履歴が登録されたパスに比べて、作業がおこなわれた可能性は低いと考えられる。
【０１３４】
よって、先頭要素が履歴のものがある場合には、先頭要素が履歴となっていないものは、推定履歴の候補から外すことにする。
【０１３５】
なお、先頭要素が履歴となる工程履歴列がない場合、すなわち、すべての工程履歴列の先頭要素が工程の場合は、工程履歴列を候補から外すステップを飛ばし（ステップＦ１４０２）、それらを候補となる工程履歴列とする。
【０１３６】
もし、先頭要素が工程となる工程履歴列を採用すると、通らない履歴が出てきてしまう。そのため、工程履歴列の中で、先頭要素が工程となる工程履歴列を取り除く。工程履歴列［Ｐ１２（ＰＣ１），Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］の先頭要素Ｐ１２は工程である。よって、残る工程履歴列は、［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］、［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］、［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］の三つとなる（ステップＦ１４０３）。
【０１３７】
工程履歴列［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］、［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］、［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］の先頭要素はＨ１１とＨ２１である。履歴Ｈ１１とＨ２１の工程は、それぞれ工程Ｐ１１とＰ２１であり、工程Ｐ１１から工程Ｐ２１へのパスが存在するが、工程Ｐ２１から工程Ｐ１１へのパスは存在しない。もし、工程履歴列［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］を採用すると、工程Ｐ２１から工程Ｐ１１へのパスが存在しないため、履歴Ｈ２１を通らなくなってしまう。一方、工程履歴列［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］や［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］を採用した場合は、工程Ｐ１１から工程Ｐ１２へのパスが存在するため、履歴Ｈ１１を通らないということはない。
【０１３８】
これらを考慮すると、工程履歴列［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］の可能性は、他の二つに比べて低いことがわかる。よって、工程履歴列［Ｈ１１，Ｐ２２（ＰＣ１），Ｐ３２（ＰＣ１），Ｈ４１］を候補から取り除く（ステップＦ１４０４）。残る工程履歴列は［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］、［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］の二つとなる。
【０１３９】
次に、得られた候補となる工程履歴列から推定履歴を作成する（Ｆ１４０５）。
【０１４０】
先ず、工程履歴列［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］の工程Ｐ３１の履歴を推定する。推定する履歴に対して、全履歴中で履歴を一意に識別する履歴ＩＤ：ＨＸ３１を発行する。工程Ｐ３１の履歴でのモノＩＤはＰＣ１である。工程テーブルＴ１１００より、工程Ｐ３１の履歴は「作業場所：センター１、作業内容：検品」と決まる。前履歴Ｈ２１の作業日時「１２／０２  １０：００」と、工程Ｐ２１とＰ３１の間（工程関係Ｔ１２１４）の推定時間「２４時間」より、推定作業日時は「１２／０３  １０：００」となる。後履歴Ｈ４１の作業日時「１２／０３  １６：００」と、工程Ｐ３１とＰ４１の間（工程関係Ｔ１２１７）の推定時間「６時間」より、推定作業日時は「１２／０３  １２：００」となる。よって、推定作業日時は１２／０３  １０：００から１２／０３  １２：００までの間となる。総合して、履歴ＩＤ：ＨＸ３１の内容として、図１３に示されるように「履歴ＩＤ：ＨＸ３１、推定作業日時：１２／０３  １０：００〜１２：００、作業場所：センター１、モノＩＤ：ＰＣ１、作業内容：検品、工程ＩＤ：Ｐ３１」という推定履歴を作成し、推定履歴テーブルＴ１５００に登録する。同様にして、工程履歴列  ［Ｈ２１，Ｐ３２（ＰＣ１），Ｈ４１］の工程Ｐ３２に対して、推定履歴ＨＸ３２として、図１３に示されるように「履歴ＩＤ：ＨＸ３２、推定作業日時：１２／０３  １０：００−１２：００、作業場所：センター２、モノＩＤ：ＰＣ１、作業内容：検品、工程ＩＤ：Ｐ３２」という推定履歴を作成し、推定履歴テーブルＴ１５００に登録する。
【０１４１】
次に、推定された履歴を基にして、推定履歴関係を作成する（Ｆ１４０６）。
【０１４２】
先ず、工程履歴列［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］に対して、推定履歴関係を作成する。工程Ｐ３１の推定履歴はＨＸ３１であるので、図１４の推定履歴関係Ｔ１６１１と推定履歴関係Ｔ１６１２に示されるように「前履歴ＩＤ：Ｈ２１、後履歴ＩＤ：ＨＸ３１」と「前履歴ＩＤ：ＨＸ３１、後履歴ＩＤ：Ｈ４１」という推定履歴関係を作成し、推定履歴関係テーブルＴ１６００に登録する。
【０１４３】
同様にして、工程履歴列［Ｈ２１，Ｐ３１（ＰＣ１），Ｈ４１］に対して、図１４の推定履歴関係Ｔ１６１３と推定履歴関係Ｔ１６１４に示されるように「前履歴ＩＤ：Ｈ２１、後履歴ＩＤ：ＨＸ３２」と「前履歴ＩＤ：ＨＸ３２、後履歴ＩＤ：Ｈ４１」という推定履歴関係を作成し、推定履歴関係テーブルＴ１６００に登録する。
【０１４４】
以上の処理により、推定が完了する。
【０１４５】
履歴の推定がおこなわれた状況で、検索プログラムＦ１２００が、「モノＩＤ：ＰＣ１」を引数にして起動すると、次のようになる。
【０１４６】
履歴テーブルＴ１３００と、推定履歴テーブルＴ１５００を用いて、「モノＩＤ：ＰＣ１」である履歴を検索する（図１０のステップＦ１２０１）。すると、履歴Ｈ１１、Ｈ２１、Ｈ４１の三つと、推定履歴ＨＸ３１、ＨＸ３２の二つの計五つが見つかる。この五つの履歴の中から、まず一つの履歴を選択する。ここでは、推定履歴ＨＸ３１を選択するとする。
【０１４７】
ステップＦ１２０１で見つかった履歴のうち、推定履歴ＨＸ３１は未検索である（ステップＦ１２０２）。
【０１４８】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「後履歴ＩＤ：ＨＸ３１」である履歴関係を検索する（ステップＦ１２０３）。すると、推定履歴関係Ｔ１６１１「前履歴ＩＤ：Ｈ２１、後履歴ＩＤ：ＨＸ３１」が見つかる。
【０１４９】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「後履歴ＩＤ：Ｈ２１」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４１１「前履歴ＩＤ：Ｈ１１、後履歴ＩＤ：ＨＸ２１」が見つかる。
【０１５０】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「後履歴ＩＤ：Ｈ１１」である履歴関係を検索する（ステップＦ１２０３）。しかし、そのような履歴関係は見つからない。このように前履歴をたどることにより、「履歴Ｈ１１→履歴Ｈ２１→推定履歴ＨＸ３１」であることがわかる。
【０１５１】
また、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「前履歴ＩＤ：ＨＸ３１」である履歴関係を検索する（ステップＦ１２０４）。すると、推定履歴関係Ｔ１６１２「前履歴ＩＤ：ＨＸ３１、後履歴ＩＤ：Ｈ４１」が見つかる。
【０１５２】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「前履歴ＩＤ：Ｈ４１」である履歴関係を検索する（ステップＦ１２０４）。しかし、そのような履歴関係は見つからない。このように後履歴をたどることにより、「推定履歴ＨＸ３１→履歴Ｈ４１」であることがわかる。
【０１５３】
ステップＦ１２０１で見つかった履歴のうち、推定履歴ＨＸ３２は未検索である。（ステップＦ１２０２）
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「後履歴ＩＤ：ＨＸ３２」である履歴関係を検索する（ステップＦ１２０３）。すると、推定履歴関係Ｔ１６１３「前履歴ＩＤ：Ｈ２１、後履歴ＩＤ：ＨＸ３２」が見つかる。
【０１５４】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「後履歴ＩＤ：Ｈ２１」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４１１「前履歴ＩＤ：Ｈ１１、後履歴ＩＤ：ＨＸ２１」が見つかる。
【０１５５】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「後履歴ＩＤ：Ｈ１１」である履歴関係を検索する（ステップＦ１２０３）。しかし、そのような履歴関係は見つからない。このように前履歴をたどることにより、「履歴Ｈ１１→履歴Ｈ２１→推定履歴ＨＸ３２」であることがわかる。
【０１５６】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「前履歴ＩＤ：ＨＸ３２」である履歴関係を検索する（ステップＦ１２０４）。すると、推定履歴関係Ｔ１６１４「前履歴ＩＤ：ＨＸ３２、後履歴ＩＤ：Ｈ４１」が見つかる。
【０１５７】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「前履歴ＩＤ：Ｈ４１」である履歴関係を検索する（ステップＦ１２０４）。しかし、そのような履歴関係は見つからない。このように後履歴をたどることにより、「推定履歴ＨＸ３２→履歴Ｈ４１」であることがわかる。
【０１５８】
ステップＦ１２０１で見つかった履歴のうち、未検索の履歴はない（ステップＦ１２０２）。よって、検索を終了する。
【０１５９】
以上の処理により、「履歴Ｈ１１→履歴Ｈ２１→推定履歴ＨＸ３１→履歴Ｈ４１」または「履歴Ｈ１１→履歴Ｈ２１→推定履歴ＨＸ３２→履歴Ｈ４１」がＰＣ１の経路であることがわかる。
【０１６０】
検索プログラムＦ１２００を使って、ＰＣ１に関して検索した場合の検索結果の表示を示すと、図１６に示されるようになる。この表示では、ＰＣ１に関して推定した二つの経路を提示しており、また、それぞれの工程がいつおこなわれたかの推定日時も提示している。
【０１６１】
〔実施形態３〕
以下、本発明に係る第三の実施形態を、図１７ないし図２０を用いて説明する。
【０１６２】
これまでの実施形態は、モノが変化しない場合、すなわち単一の製造物を工程間で受け継ぐ場合について説明してきた。実際の工程では、合成、分解、梱包、開梱のようなモノの変化はしばしばおこりうる。本実施形態では、そのような場合の履歴情報の登録および履歴関係を作成する方法について説明する。ここでは、図２（ｂ）に示されるように、演算装置とディスプレイからＰＣを組み立てる工程関係モデルを例にとることにする。
図１７は、モノ関係テーブルＴ１８００の一例を示す図である。
図１８は、本発明の第三の実施形態に係る履歴関係テーブルＴ１４００の生成の途中の様子を示す図である。
図１９は、本発明の第三の実施形態に係る履歴関係テーブルＴ１４００の一例を示す図である。
図２０は、本発明の第三の実施形態に係る履歴の検索結果を作業順に出力した例を示す図である。
【０１６３】
本実施形態では、工程間でモノが変化するもので、その関係を登録する必要がある。モノ関係テーブルＴ１８００は、そのようなモノの関係情報を保持する保持すテーブルである。
【０１６４】
モノ関係テーブルＴ１８００は、図１７に示されるように、遷移前のモノＩＤを示す「遷移前モノＩＤ」と、遷移後のモノＩＤを示す「遷移後モノＩＤ」などの項目を有する。例えば、モノ関係情報Ｔ１８１１は演算装置２がＰＣ２に遷移することを、モノ関係情報Ｔ１８１２はディスプレイ２がＰＣ２に遷移することを示している。そして、モノ関係情報Ｔ１８１１、Ｔ１８１２を合わせて、演算装置２とディスプレイ２からＰＣ２ができることを示している。モノ関係テーブルＴ１８００には、システム使用者があらかじめデータを登録しておく必要がある。
【０１６５】
以下、既出の図９を用いて履歴登録プログラムＦ１１００の処理を説明する。
【０１６６】
履歴テーブルＴ１３００は、図１８（ａ）に示されるように、履歴Ｈ５１、Ｈ５３が登録され、履歴関係テーブルＴ１４００は、図１９（ａ）に示されような関係が登録されているものとする。
【０１６７】
履歴登録プログラムＦ１１００が、「作業日時：１２／０２  １０：３０、作業場所：工場１、作業内容：合成、モノＩＤ：ＰＣ２」の履歴情報を引数に起動すると、次のようになる。
【０１６８】
履歴情報のうち、工程を特定する情報から、履歴がどの工程に属するかを取得する（ステップＦ１１０１）。工程テーブルＴ１１００と、モノ属性テーブルＴ１７００を用いて、「モノＩＤ：ＰＣ２、作業場所：工場１、作業内容：合成」である工程は、工程Ｐ５５ということがわかる。
【０１６９】
次に、履歴登録プログラムＦ１１００が、履歴情報に対して、全履歴中で履歴を一意に識別する履歴ＩＤを発行する（ステップＦ１１０２）。例えば、この履歴情報に対しては、Ｈ５５という履歴ＩＤを発行する。履歴ＩＤを含んだ履歴情報を、履歴テーブルＴ１３００に登録する。図１８（ｂ）の履歴Ｈ５５のようになる。
【０１７０】
そして、ステップＦ１１０３〜ステップＦ１１０６で、履歴Ｈ５５と前工程の履歴との間の履歴関係を作成する。
【０１７１】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ５５の前工程を検索する（ステップＦ１１０３）。すると、「後工程ＩＤ：Ｐ５５」である工程関係として、工程関係Ｔ１２２２と工程関係Ｔ１２２３の二つが見つかる。すなわち、前工程が存在する。この二つの履歴の中から、まず一つの履歴を選択する。ここでは履歴Ｈ５５を選択するとする。
【０１７２】
工程関係Ｔ１２２２「前工程ＩＤ：Ｐ５２、後工程ＩＤ：Ｐ５５」に関して、工程Ｐ５２の履歴でのモノＩＤを取得する（ステップＦ１１０４）。履歴Ｈ５５におけるモノＩＤはＰＣ２で、工程Ｐ５２におけるモノ種類は演算装置、工程Ｐ５５におけるモノ種類はＰＣと、モノ種類は変化している。このとき、モノ属性テーブルＴ１７００と、モノ関係テーブルＴ１８００を用いて、「遷移前モノＩＤのモノ種類：演算装置、遷移後モノＩＤ：ＰＣ２」であるモノ関係を検索する。すると、モノ関係Ｔ１８１１が見つかる。工程Ｐ５２の履歴でのモノＩＤは演算装置２である。また、工程関係Ｔ１２２３「前工程ＩＤ：Ｐ５４、後工程ＩＤ：Ｐ５５」に関して、工程Ｐ５４の履歴でのモノＩＤを取得する。履歴Ｈ５５におけるモノＩＤはＰＣ２で、工程Ｐ５４におけるモノ種類はディスプレイ、工程Ｐ５５におけるモノ種類はＰＣと、モノ種類は変化している。モノ属性テーブルＴ１７００と、モノ関係テーブルＴ１８００を用いて、「遷移前モノＩＤのモノ種類：ディスプレイ、遷移後モノＩＤ：ＰＣ２」であるモノ関係を検索する。すると、モノ関係Ｔ１８１２が見つかる。工程Ｐ５２におけるモノＩＤは、ディスプレイ２である。なお、前履歴でのモノＩＤから後履歴でのモノＩＤを作成するような手段がある場合は、モノ関係テーブルＴ１８００がなくても良い。例えば、演算装置ＡＡＡとディスプレイＢＢＢから作成するＰＣに対して、ＡＡＡＢＢＢというモノＩＤをつけるとする。この場合、演算装置とディスプレイでのモノＩＤがわかれば、自動的にＰＣのモノＩＤを得ることができる。また、ＰＣのモノＩＤから、演算装置でのモノＩＤと、ディスプレイでのモノＩＤを得ることもできる。
【０１７３】
次に、工程関係Ｔ１２２２に対応する履歴関係を検索する（ステップＦ１１０５）。履歴テーブルＴ１３００を用いて、「モノＩＤ：演算装置２、工程ＩＤ：Ｐ５２」であるような履歴を検索する。しかし、そのような履歴は見つからない。よって、工程関係Ｔ１２２２に対応する履歴関係は登録されていないことがわかる。また、工程関係Ｔ１２２３に対応する履歴関係を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ディスプレイ２、工程ＩＤ：Ｐ５４」である履歴を検索する。しかし、そのような履歴は見つからない。よって、工程関係Ｔ１２２３に対応する履歴関係は登録されていないことがわかる。以上より、工程関係Ｔ１２２２と工程関係Ｔ１２２３に対応する履歴関係がないことがわかる。
【０１７４】
次に、前工程の履歴を保留を表現するコードを用いて、履歴関係を履歴関係テーブルＴ１４００に仮登録する。工程関係Ｔ１２２２と工程関係Ｔ１２２３は同じグループＧ１に属するので、工程関係Ｔ１２２２に対応する履歴関係と、工程関係Ｔ１２２３に対応する履歴関係は、どちらも必要であり、二つの履歴関係を仮登録することになる。図１７（ｂ）の履歴関係Ｔ１４２３のように「前履歴ＩＤ：Ｐｅｎｄｉｎｇ、後履歴ＩＤ：Ｈ５５」という履歴関係と、図１９（ｂ）の履歴関係Ｔ１４２４のように「前履歴ＩＤ：Ｐｅｎｄｉｎｇ、後履歴ＩＤ：Ｈ５５」という履歴関係を作成し、履歴関係テーブルＴ１４００に登録する（ステップＦ１１０７）。
【０１７５】
そして、ステップＦ１１０８〜ステップＦ１１１１で、履歴Ｈ５５と後工程の履歴との間の履歴関係を作成する。
【０１７６】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ５５の後工程を検索する（ステップＦ１１０８）。すると、「前工程ＩＤ：Ｐ５５」である工程関係として、工程関係Ｔ１２２４が見つかる。すなわち、後工程が存在する。
【０１７７】
工程関係Ｔ１２２４「前工程ＩＤ：Ｐ５５、後工程ＩＤ：Ｐ５６」に関して、工程Ｐ５６の履歴でのモノＩＤを取得する（ステップＦ１１０９）。工程Ｐ５５の履歴でのモノＩＤはＰＣ２で、工程Ｐ５５とＰ５６ではモノ種類は変化していない。よって、工程Ｐ５６の履歴でのモノＩＤはＰＣ２であろうと推測される。
【０１７８】
次に、工程関係Ｔ１２２４に対応する履歴関係を検索する。履歴テーブルＴ１３００を用いて、「モノＩＤ：ＰＣ２、工程ＩＤ：Ｐ５６」である履歴を検索する（ステップＦ１１１０）。しかし、そのような履歴は見つからない。よって、工程関係Ｔ１２２４に対応する履歴関係は登録されていないことがわかる。
【０１７９】
次に、後工程の履歴を保留を表現するコードを用いて、履歴関係を履歴関係テーブルＴ１４００に仮登録する。図１９（ｂ）の履歴関係Ｔ１４２５のように、「前履歴ＩＤ：Ｈ５５、後履歴ＩＤ：Ｐｅｎｄｉｎｇ」という履歴関係を作成する（ステップＦ１１１１）。
【０１８０】
以上の処理により、履歴Ｈ５５が登録され、履歴関係テーブルＴ１４００は図１９（ｂ）のようになる。
【０１８１】
続いて、履歴登録プログラムＦ１１００が、履歴Ｈ５２の履歴情報を引数に実行すると、履歴テーブルＴ１３００は、図１８（ｃ）に示されるようになり、履歴関係テーブルＴ１４００は、図１９（ｃ）に示されるようになる。
【０１８２】
続いて、履歴登録プログラムＦ１１００が、履歴Ｈ５４の履歴情報を引数に実行し、その後、履歴Ｈ５６の履歴情報を引数に実行すると、履歴テーブルＴ１３００は、図１８（ｄ）に示されるようになり、履歴関係テーブルＴ１４００は、図１９（ｄ）に示されるようになる。
【０１８３】
そして、履歴テーブルＴ１３００と、推定履歴テーブルＴ１５００を用いて、「モノＩＤ：ＰＣ２」である履歴を検索する（図１０のステップＦ１２０１）。すると、履歴Ｈ５５、Ｈ５６の二つが見つかる。
【０１８４】
ステップＦ１２０１で見つかった履歴のうち、履歴Ｈ５５は未検索である（ステップＦ１２０２）。
【０１８５】
そこで、履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ５５」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４５３と履歴関係Ｔ１４５４の二つが見つかる。
【０１８６】
次に、ステップＦ１２０３の検索で見つかった履歴関係Ｔ１４５３「前履歴ＩＤ：Ｈ５２、後履歴ＩＤ：Ｈ５５」に関して、履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ５２」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４１１「前履歴ＩＤ：Ｈ５１、後履歴ＩＤ：Ｈ５２」が見つかる。
【０１８７】
次に、履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ５１」である履歴関係を検索する（ステップＦ１２０３）。しかし、そのような履歴関係は見つからない。このように前履歴をたどることにより、「履歴Ｈ５１→履歴Ｈ５２→履歴Ｈ５５」であることがわかる。
【０１８８】
次に、ステップＦ１２０３の検索で見つかった履歴関係Ｔ１４５４「前履歴ＩＤ：Ｈ５４、後履歴ＩＤ：Ｈ５５」に関して、履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ５４」である履歴関係を検索する（ステップＦ１２０３）。すると、履歴関係Ｔ１４１１「前履歴ＩＤ：Ｈ５１、後履歴ＩＤ：Ｈ５２」が見つかる。
【０１８９】
次に、履歴関係テーブルＴ１４００を用いて、「後履歴ＩＤ：Ｈ５３」である履歴関係を検索する（ステップＦ１２０３）。しかし、そのような履歴関係は見つからない。このように前履歴をたどることにより、「履歴Ｈ５３→履歴Ｈ５４→履歴Ｈ５５」であることがわかる。
【０１９０】
次に、履歴関係テーブルＴ１４００と、推定履歴関係テーブルＴ１６００を用いて、「前履歴ＩＤ：Ｈ５５」である履歴関係を検索する（ステップＦ１２０４）。すると、推定履歴関係Ｔ１６１４「前履歴ＩＤ：Ｈ５５、後履歴ＩＤ：Ｈ５６」が見つかる。
【０１９１】
次に、履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ５６」である履歴関係を検索する（ステップＦ１２０４）。しかし、そのような履歴関係は見つからない。このように後履歴をたどることにより、「履歴Ｈ５５→履歴Ｈ５６」であることがわかる。
【０１９２】
ステップＦ１２０１で見つかった履歴のうち、未検索な履歴はない（ステップＦ１２０２）。よって、検索を終了する。
【０１９３】
以上の処理により、「履歴Ｈ５１→履歴Ｈ５２→履歴Ｈ５５→履歴Ｈ５６」および「履歴Ｈ５３→履歴Ｈ５４→履歴Ｈ５５→履歴Ｈ５６」がＰＣ２の経路であることがわかる。
【０１９４】
このＰＣ１に関して検索した結果を、図２０に示されように出力装置や通信装置を通して出力する。これにより、ＰＣ２が演算装置２とディスプレイ２からできており、それぞれがどのような経路を通ってきたかがわかる。
【０１９５】
〔実施形態４〕
以下、本発明に係る第四の実施形態を、図２１および図２２を用いて説明する。
【０１９６】
本実施形態は、第三の実施形態と同じく工程間でモノが変化する場合で、抜けている履歴を推定する方法である。
図２１は、本発明の第四の実施形態に係る推定履歴テーブルＴ１５００の一例を示す図である。
図２２は、本発明の第四の実施形態に係る推定履歴関係テーブルの一例を示す図である。
【０１９７】
ここで、履歴関係テーブルＴ１４００は、図１９（ｃ）に示されるように履歴Ｈ５１、Ｈ５２、Ｈ５３、Ｈ５５が登録されている状況であったとする。
【０１９８】
履歴関係Ｔ１４２４は、前履歴ＩＤがＰｅｎｄｉｎｇで、後履歴ＩＤがあるため、前履歴の作業は終了しているが、まだ登録されていないことがわかる。
【０１９９】
履歴推定プログラムＦ１４００が、履歴関係Ｔ１４２４を引数にして起動すると、次のようになる。
【０２００】
履歴関係Ｔ１４２４のＰｅｎｄｉｎｇでない履歴はＨ５５である。履歴Ｈ５５では、モノＩＤがＰＣ２、工程ＩＤがＰ５５である。「モノＩＤ：ＰＣ２、工程ＩＤ：Ｐ５５、工程履歴列：［Ｈ５５］」を引数として、サブルーチン「工程履歴列検索」を起動する（図１５ＡのステップＦ１４０１）。
【０２０１】
工程Ｐ５５の前工程を検索する。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ５５」である工程関係を検索すると（図１５ＢのステップＦ１４１１（Ａ））、工程関係Ｔ１２２２と工程関係Ｔ１２２３の二つが見つかる。よって、前工程が存在する。
【０２０２】
ステップＦ１４１１（Ａ）での検索で見つかった工程関係Ｔ１２２２「前工程ＩＤ：Ｐ５２、後工程ＩＤ：Ｐ５５」は未導出である（ステップＦ１４１２）。
【０２０３】
このとき、工程Ｐ５２の履歴でのモノＩＤを取得する（ステップＦ１４１３）。工程Ｐ５５の履歴でのモノＩＤはＰＣ２で、工程Ｐ５２におけるモノ種類は演算装置、工程Ｐ５５におけるモノ種類はＰＣと、モノ種類は変化している。モノ属性テーブルＴ１７００と、モノ関係テーブルＴ１８００を用いて、「遷移前モノＩＤのモノ種類：演算装置、遷移後モノＩＤ：ＰＣ２」であるモノ関係を検索する。すると、モノ関係Ｔ１８１１が見つかる。工程Ｐ５２の履歴でのモノＩＤは、演算装置２である。
【０２０４】
次に、工程Ｐ５２の履歴を検索する（ステップＦ１４１４）。履歴テーブルＴ１３００を用いて、「モノＩＤ：演算装置２、工程ＩＤ：Ｐ５２」である履歴を検索する。すると、履歴Ｈ５２が見つかる。
【０２０５】
次に、工程関係Ｔ１２２２に対応する履歴関係を検索する（ステップＦ１４１７）。履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ５２、後履歴の工程ＩＤ：Ｐ５５」な履歴関係を検索する。すると、履歴関係Ｔ１４２３が見つかる。
【０２０６】
ステップＦ１４１１（Ａ）での検索で見つかった工程関係Ｔ１２２３「前工程ＩＤ：Ｐ５４、後工程ＩＤ：Ｐ５５」は未導出である（ステップＦ１４１２）。
【０２０７】
次に、工程Ｐ５４の履歴でのモノＩＤを取得する（ステップＦ１４１３）。履歴Ｈ５５におけるモノＩＤはＰＣ２で、工程Ｐ５４におけるモノ種類はディスプレイ、工程Ｐ５５におけるモノ種類はＰＣと、モノ種類は変化している。そこで、モノ属性テーブルＴ１７００と、モノ関係テーブルＴ１８００を用いて、「遷移前モノＩＤのモノ種類：ディスプレイ、遷移後モノＩＤ：ＰＣ２」なるモノ関係を検索する。すると、モノ関係Ｔ１８１２が見つかる。工程Ｐ５２におけるモノＩＤは、ディスプレイ２である。
【０２０８】
次に、工程Ｐ５４の履歴を検索する（ステップＦ１４１４）。履歴テーブルＴ１３００を用いて、「モノＩＤ：ディスプレイ２、工程ＩＤ：Ｐ５４」な履歴を検索する。しかし、そのような履歴は見つからない。
【０２０９】
「モノＩＤ：ディスプレイ２、工程ＩＤ：Ｐ５４、工程履歴列：［Ｐ５４（ディスプレイ２），Ｈ５５］」を引数として、工程履歴列検索サブルーチンを起動する（ステップＦ１４１５）。すなわち、工程履歴列検索サブルーチンは再起呼出しされる。
【０２１０】
次に、工程Ｐ５４の前工程を検索する（ステップＦ１４１１（Ｂ））。工程関係テーブルＴ１２００を用いて、「後工程ＩＤ：Ｐ５４」である工程関係を検索すると、工程関係Ｔ１２２１が見つかる。よって、前工程が存在する。
【０２１１】
ステップＦ１４１１（Ｂ）で見つかった工程関係Ｔ１２２１「前工程ＩＤ：Ｐ５３、後工程ＩＤ：Ｐ５４」は未導出である（ステップＦ１４１２）。
【０２１２】
このとき、工程Ｐ５３の履歴でのモノＩＤを取得する（ステップＦ１４１３）。履歴Ｈ５４におけるモノＩＤはディスプレイ２で、工程Ｐ５３と工程Ｐ５４ではモノ種類は変化していない。よって、工程Ｐ５３におけるモノＩＤは、ディスプレイ２であろうと推測される。
【０２１３】
次に、工程Ｐ５３の履歴を検索する（ステップＦ１４１４）。履歴テーブルＴ１３００を用いて、「モノＩＤ：ディスプレイ２、工程ＩＤ：Ｐ５３」である履歴を検索する。すると、履歴Ｈ５３が見つかる。
【０２１４】
そして、履歴テーブルＴ１３００と、履歴関係テーブルＴ１４００を用いて、「前履歴ＩＤ：Ｈ５３、後履歴の工程ＩＤ：Ｐ５４」である履歴関係を検索する（ステップＦ１４１７）。しかし、そのような履歴関係は見つからない。
【０２１５】
そこで、工程履歴列［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］をメモリに保存する（ステップＦ１４１８）。これが、工程履歴列サブルーチンの戻り値である。
【０２１６】
ステップＦ１４１１（Ｂ）での検索で見つかった履歴関係のうち、未導出のものはない。そこで、工程履歴列検索サブルーチンを終了する（ステップＦ１４１２）。これで、再起呼び出しされた工程履歴列検索サブルーチンが終了することになる（Ｆ１４１５の呼び出し終了）。
【０２１７】
次に、ステップＦ１４１１（Ａ）での検索で見つかった履歴関係のうち、未導出のものはない。工程履歴列検索サブルーチンを終了する（ステップＦ１４１２）。
【０２１８】
このようにして、工程履歴列検索サブルーチンの実行によってメモリに保存された工程履歴列は、［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］である。工程履歴列［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］は先頭要素が履歴となる工程履歴列である。
【０２１９】
工程履歴列の中で、先頭要素が工程となる工程履歴列を候補から外す（ステップＦ１４０２）。工程履歴列［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］は先頭要素が工程ではないので候補から外されない。残る工程履歴列は［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］となる（ステップＦ１４０３）。
【０２２０】
工程履歴列は［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］の一つだけなので、この工程履歴列を採用することにより、通らなくなる履歴が発生することはないので、候補から外されない（ステップＦ１４０４）。したがって、残る工程履歴列は［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］となる。
【０２２１】
次に、工程履歴列［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］の工程Ｐ５４の履歴を推定する（ステップＦ１４０５）。推定する履歴に対して、全履歴中で履歴を一意に識別する履歴ＩＤ：ＨＸ５４を発行する。工程Ｐ５４でのモノＩＤはディスプレイ２である。工程テーブルＴ１１００より、工程Ｐ５４の履歴は、「作業場所：工場１、作業内容：出庫」と決まる。前履歴Ｈ５３の作業日時「１２／０１  １０：００」と、工程Ｐ５３とＰ５４の間（工程関係Ｔ１２２１）の推定時間「１週間」より、推定作業日時は「１２／０８  １０：００」となる。後履歴Ｈ５５の作業日時「１２／０２  １０：３０」と、工程Ｐ５４とＰ５５の間（工程関係Ｔ１２２３）の推定時間「３０分」より、推定作業日時は「１２／０２  １０：００」となる。前工程Ｐ５４での作業日時が、後工程Ｐ５５での作業日時より後になることはないことを踏まえると、推定作業日時は１２／０２  １０：００から１２／０２  １０：３０までの間となる。総合して、「履歴ＩＤ：ＨＸ５４、推定作業日時：１２／０２  １０：００−１０：３０、作業場所：工場１、モノＩＤ：ディスプレイ２、作業内容：出庫、工程ＩＤ：Ｐ５４」という推定履歴を作成し、推定履歴ＨＸ５４として、図２１に示されるように推定履歴テーブルＴ１５００に登録する。
【０２２２】
次に、工程履歴列［Ｈ５３，Ｐ５４（ディスプレイ２），Ｈ５５］に対して、推定履歴関係を作成する（ステップＦ１４０６）。工程Ｐ５４の推定履歴はＨＸ５４であるので、「前履歴ＩＤ：Ｈ５３、後履歴ＩＤ：ＨＸ５４」と「前履歴ＩＤ：ＨＸ５４、後履歴ＩＤ：Ｈ５５」という推定履歴関係を作成して、図２１の推定履歴関係Ｔ１６２１と推定履歴関係Ｔ１６２２に示されるように、推定履歴関係テーブルＴ１６００に登録する。
【０２２３】
以上の処理により、推定が完了する。
【０２２４】
〔実施形態５〕
以下、本発明の第五の実施形態を、図２３および図２４を用いて説明する。
【０２２５】
第一の実施形態で、履歴テーブルと履歴関係テーブルを設定する方法について説明したが、本実施形態は、履歴関係テーブル作成のための一変形方法であるということができる。
図２３は、本発明の第五の実施形態に係る履歴テーブルＴ１３００の生成の途中の様子を示す図である。
図２４は、本発明の第五の実施形態に係る履歴登録プログラムＦ１５００の処理を示すフローチャートである。
【０２２６】
本実施形態では、図２３に示されるように、保留状態の履歴に対してＰｅｎｄｉｎｇＩＤという識別子を振り当て、保留状態の履歴を区別する。
【０２２７】
履歴登録プログラムＦ１５００は、前工程から受け取ったＰｅｎｄｉｎｇＩＤと、履歴情報を引数にして起動する。
【０２２８】
第一工程の履歴を登録するときは、前工程がないため、ＰｅｎｄｉｎｇＩＤはない。履歴登録プログラムＦ１５００が、「ＰｅｎｄｉｎｇＩＤ：なし」および「作業日時：１２／０１  １０：００、作業場所：工場１、作業内容：入庫、モノＩＤ：演算装置２」という履歴を引数にして起動すると、次のようになる。
【０２２９】
履歴情報のうち、工程を特定する情報から、履歴がどの工程に属するかを取得する（ステップＦ１５０１）。工程テーブルＴ１１００と、モノ属性テーブルＴ１７００を用いて、「モノＩＤ：演算装置２、作業場所：工場１、作業内容：入庫」である工程は、工程Ｐ５１ということがわかる。なお、履歴情報に工程ＩＤが渡される場合は、モノ属性テーブルＴ１７００や、工程テーブルＴ１１００を用いずに、履歴情報から直接工程ＩＤを取り出しても良い。
【０２３０】
次に、履歴登録プログラムＦ１５００が、履歴情報に対して、全履歴中で履歴を一意に識別する履歴ＩＤを発行する（ステップＦ１５０２）。例えば、この履歴情報に対しては、Ｈ５１という履歴ＩＤを発行する。履歴ＩＤを含んだ履歴情報を履歴テーブルＴ１３００に登録する。図６の履歴Ｈ５１のようになる。
【０２３１】
次に、履歴Ｈ５１と前工程の履歴との間の履歴関係を作成する（ステップＦ１５０３）。
【０２３２】
履歴登録プログラムＦ１５００は、ＰｅｎｄｉｎｇＩＤを受け取っていない。よって、ＰｅｎｄｉｎｇＩＤを書き換えるステップを飛ばす（ステップＦ１５０３）。
【０２３３】
そして、ステップＦ１５０５〜ステップＦ１５０６で、履歴Ｈ５１と後工程の履歴との間の履歴関係を作成する。
【０２３４】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ５１の後工程を検索する（ステップＦ１５０５）。すると、「前工程ＩＤ：Ｐ５１」である工程関係として、工程関係Ｔ１２２０が見つかる。つまり、後工程は存在する。なお、後工程が存在しない場合、つまり最終工程の場合は、後工程の履歴との履歴関係を作成するステップを飛ばす。
【０２３５】
次に、履歴関係テーブルＴ１４００に、工程関係Ｔ１２２０「前工程ＩＤ：Ｐ５１、後工程ＩＤ：Ｐ５２」に対応する履歴関係を仮登録する（ステップＦ１５０６）。履歴登録プログラムＦ１５００が、工程Ｐ５２における履歴に対して、仮履歴ＩＤとしてＰｅｎｄｉｎｇ１を割り当てる。図２３（ａ）の履歴関係Ｔ１４３１のように、「前履歴ＩＤ：Ｈ５１、後履歴ＩＤ：Ｐｅｎｄｉｎｇ１」という履歴関係を作成する。
【０２３６】
以上の処理により、履歴Ｈ５１の登録と履歴関係が作成され、出力としてＰｅｎｄｉｎｇ１を受け取る。作業対象のモノを次の工程に移動させるときに、モノと一緒にＰｅｎｄｉｎｇＩＤの情報も運ぶ。ＲＦＩＤなどを使用する場合には、このＰｅｎｄｉｎｇＩＤをＲＦＩＤなどに記憶させても良い。
【０２３７】
続いて、履歴登録プログラムＦ１５００が、「ＰｅｎｄｉｎｇＩＤ：Ｐｅｎｄｉｎｇ１」および「作業日時：１２／０２  １０：００、作業場所：工場１、作業内容：出庫、モノＩＤ：演算装置２」という履歴を引数にして起動すると、次のようになる。
【０２３８】
履歴情報のうち、工程を特定する情報から、履歴がどの工程に属するかを取得する（ステップＦ１５０１）。工程テーブルＴ１１００と、モノ属性テーブルＴ１７００を用いて、「モノＩＤ：演算装置２、作業場所：工場１、作業内容：出庫」である工程は、工程Ｐ５２ということがわかる。
【０２３９】
履歴登録プログラムＦ１５００が、履歴情報に対して、全履歴中で履歴を一意に識別する履歴ＩＤを発行する。例えば、この履歴情報に対しては、Ｈ５２という履歴ＩＤを発行する。履歴ＩＤを含んだ履歴情報を履歴テーブルＴ１３００に登録する（ステップＦ１５０２）。履歴Ｈ５２は、図６に示されるになる。
【０２４０】
そして、ステップＦ１５０３〜ステップＦ１５０４で、履歴Ｈ５２と前工程の履歴との間の履歴関係を作成する。
【０２４１】
履歴登録プログラムＦ１５００は、Ｐｅｎｄｉｎｇ１を受け取っている（ステップＦ１５０３）。
【０２４２】
履歴関係テーブルＴ１４００のＰｅｎｄｉｎｇ１部分を履歴Ｈ５２に書き換える（ステップＦ１５０４）。 Ｔ１４３１は、図２１（ｂ）に示されるようになる。
【０２４３】
そして、ステップＦ１５０５〜ステップＦ１５０６で、履歴Ｈ５２と後工程の履歴との間の履歴関係を作成する。
【０２４４】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ５１の後工程を検索する（ステップＦ１５０５）。すると、「前工程ＩＤ：Ｐ５２」である工程関係として、工程関係Ｔ１２２２が見つかる。すなわち、後工程が存在する。
【０２４５】
次に、履歴関係テーブルＴ１４００に、工程関係Ｔ１２２２「前工程ＩＤ：Ｐ５２、後工程ＩＤ：Ｐ５５」に対応する履歴関係を仮登録する（ステップＦ１５０６）。履歴登録プログラムＦ１５００が、工程Ｐ５５における履歴に対して、仮履歴ＩＤとしてＰｅｎｄｉｎｇ２を発行する。図２３（ｂ）の履歴関係Ｔ１４３２のように、「前履歴ＩＤ：Ｈ５２、後履歴ＩＤ：Ｐｅｎｄｉｎｇ２」という履歴関係を作成する。
【０２４６】
以上の処理により、履歴Ｈ５２の登録と履歴関係がおこなわれ、出力としてＰｅｎｄｉｎｇ２を受け取る。
【０２４７】
続いて、履歴登録プログラムＦ１５００により、履歴Ｈ５３と履歴Ｈ５４を登録すると、履歴関係テーブルＴ１４００は、図２３（ｃ）のようになる。履歴Ｈ５４を登録したときの実行結果として、Ｐｅｎｄｉｎｇ４を受け取る。
【０２４８】
演算装置２とディスプレイ２からＰＣ２を合成するときは、演算装置２よりＰｅｎｇｉｎｄ２と、ディスプレイ２よりＰｅｎｄｉｎｇ４を受け取っている。履歴登録プログラムＦ１５００が、「ＰｅｎｄｉｎｇＩＤ：Ｐｅｎｄｉｎｇ２，Ｐｅｎｄｉｎｇ４」および「作業日時：１２／０２  １０：３０、作業場所：工場１、作業内容：合成、モノＩＤ：ＰＣ２」という履歴を引数にして起動すると、次のようになる。
【０２４９】
履歴情報のうち、工程を特定する情報から、履歴がどの工程に属するかを取得する（ステップＦ１５０１）。工程テーブルＴ１１００と、モノ属性テーブルＴ１７００を用いて、「モノＩＤ：ＰＣ２、作業場所：工場１、作業内容：合成」である工程は、工程Ｐ５５ということがわかる。
【０２５０】
次に、履歴登録プログラムＦ１５００が、履歴情報に対して、全履歴中で履歴を一意に識別する履歴ＩＤを発行する。例えば、この履歴情報に対しては、Ｈ５５という履歴ＩＤを発行する。履歴ＩＤを含んだ履歴情報を履歴テーブルＴ１３００に登録する（ステップＦ１５０２）。履歴Ｈ５５は、図６に示されるようになる。
【０２５１】
そこで、ステップＦ１５０３〜ステップＦ１５０４で、履歴Ｈ５５と前工程の履歴との間の履歴関係を作成する。
【０２５２】
履歴登録プログラムＦ１５００は、Ｐｅｎｄｉｎｇ２およひＰｅｎｄｉｎｇ４を受け取っている（ステップＦ１５０３）。
【０２５３】
したがって、履歴関係テーブルＴ１４００に対して、Ｐｅｎｄｉｎｇ２部分及びＰｅｎｄｉｎｇ４部分を履歴Ｈ５５に書き換える（ステップＦ１５０４）。すると、図２３（ｄ）のＴ１４３２およびＴ１４３４のようになる。
【０２５４】
次に、ステップＦ１５０５〜ステップＦ１５０６で、履歴Ｈ５５と後工程の履歴との間の履歴関係を作成する。
【０２５５】
先ず、工程関係テーブルＴ１２００を用いて、工程Ｐ５５の後工程を検索する（ステップＦ１５０５）。すると、「前工程ＩＤ：Ｐ５５」である工程関係として、工程関係Ｔ１２２４が見つかる。すなわち、後工程が存在する。
【０２５６】
次に、履歴関係テーブルＴ１４００に、工程関係Ｔ１２２４「前工程ＩＤ：Ｐ５５、後工程ＩＤ：Ｐ５６」に対応する履歴関係を仮登録する（ステップＦ１５０６）。履歴登録プログラムＦ１５００が、工程Ｐ５６における履歴に対して、仮履歴ＩＤとしてＰｅｎｄｉｎｇ５を発行する。図２３（ｄ）の履歴関係Ｔ１４３５のように、「前履歴ＩＤ：Ｈ５５、後履歴ＩＤ：Ｐｅｎｄｉｎｇ５」という履歴関係を作成する。
【０２５７】
以上の処理により、履歴Ｈ５５の登録と履歴関係を作成し、出力としてＰｅｎｄｉｎｇ５を受け取る。
【図面の簡単な説明】
【０２５８】
【図１】本発明に係る工程管理システムのシステム構成図である。
【図２】ＰＣの製造と流通の工程モデルを示す工程ダイアグラムである。
【図３】工程テーブルＴ１１００の一例を示す図である。
【図４】工程関係テーブルＴ１２００の一例を示す図である。
【図５】モノ属性テーブルＴ１７００の一例を示す図である。
【図６】履歴テーブルＴ１３００の一例を示す図である。
【図７】本発明の第一の実施形態に係る履歴テーブルＴ１３００の生成の途中の様子を示す図である。
【図８】本発明の第一の実施形態に係る履歴関係テーブルＴ１４００の一例を示す図である。
【図９】本発明の第一の実施形態に係る履歴登録プログラムＦ１１００の処理を示すフローチャートである。
【図１０】検索プログラムＦ１２００の処理を示すフローチャートである。
【図１１】本発明の第一の実施形態に係る履歴の検索結果を作業順に出力した例を示す図である。
【図１２】監視プログラムＦ１３００の処理を示すフローチャートである。
【図１３】本発明の第二の実施形態に係る推定履歴テーブルＴ１５００の一例を示す図である。
【図１４】本発明の第二の実施形態に係る推定履歴関係テーブルの一例を示す図である。
【図１５Ａ】履歴推定プログラムＦ１４００の処理を示すフローチャートである。
【図１５Ｂ】履歴推定プログラムＦ１４００の処理を示すフローチャートである。
【図１６】検索プログラムＦ１２００を使って、ＰＣ１に関して検索した場合の検索結果の表示の一例である。
【図１７】モノ関係テーブルＴ１８００の一例を示す図である。
【図１８】本発明の第三の実施形態に係る履歴関係テーブルＴ１４００の生成の途中の様子を示す図である。
【図１９】本発明の第三の実施形態に係る履歴関係テーブルＴ１４００の一例を示す図である。
【図２０】本発明の第三の実施形態に係る履歴の検索結果を作業順に出力した例を示す図である。
【図２１】本発明の第四の実施形態に係る推定履歴テーブルＴ１５００の一例を示す図である。
【図２２】本発明の第四の実施形態に係る推定履歴関係テーブルの一例を示す図である。
【図２３】本発明の第五の実施形態に係る履歴テーブルＴ１３００の生成の途中の様子を示す図である。
【図２４】本発明の第五の実施形態に係る履歴登録プログラムＦ１５００の処理を示すフローチャートである。
【符号の説明】
【０２５９】
Ｅ０１００  記憶装置
Ｅ０２００  中央処理装置
Ｅ０３００  入力装置
Ｅ０４００  出力装置
Ｅ０５００  通信装置
Ｔ１１００  工程テーブル
Ｔ１２００  工程関係テーブル
Ｔ１３００  履歴テーブル
Ｔ１４００  履歴関係テーブル
Ｔ１５００  推定履歴テーブル
Ｔ１６００  推定履歴関係テーブル
Ｔ１７００  モノ属性テーブル
Ｔ１８００  モノ関係テーブル
Ｆ１１００  履歴登録プログラム
Ｆ１２００  検索プログラム
Ｆ１３００  監視プログラム
Ｆ１４００  履歴推定プログラム
Ｆ１５００  履歴登録プログラム
【図１】
0004599242.tif 000002
【図２】
0004599242.tif 000003
【図３】
0004599242.tif 000004
【図４】
0004599242.tif 000005
【図５】
0004599242.tif 000006
【図６】
0004599242.tif 000007
【図７】
0004599242.tif 000008
【図８】
0004599242.tif 000009
【図９】
0004599242.tif 000010
【図１０】
0004599242.tif 000011
【図１１】
0004599242.tif 000012
【図１２】
0004599242.tif 000013
【図１３】
0004599242.tif 000014
【図１４】
0004599242.tif 000015
【図１５Ａ】
0004599242.tif 000016
【図１５Ｂ】
0004599242.tif 000017
【図１６】
0004599242.tif 000018
【図１７】
0004599242.tif 000019
【図１８】
0004599242.tif 000020
【図１９】
0004599242.tif 000021
【図２０】
0004599242.tif 000022
【図２１】
0004599242.tif 000023
【図２２】
0004599242.tif 000024
【図２３】
0004599242.tif 000025
【図２４】
0004599242.tif 000026