説明

管理番号発番方法

【課題】発番時の入力ミス、発番後の番号取り違えを、番号桁数の増加なく有効に防止できる管理番号発番方法を提供する。
【解決手段】連番部にチェックディジットによる検査桁を連結してなる番号に別途求めた管理数を加算して管理番号とする管理番号発番方法であって、前記管理数が、前記管理番号の連番部分を繰り返し使用するときの繰り返し回数である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、管理番号発番方法に関する。管理番号を発番される対象(管理対象)は有体物でも無体物でもよい。
【背景技術】
【0002】
特許文献1には、有体物あるいは無体物に付与する管理番号の誤認が起き難く、たとえ誤認があっても、その誤認による個体の取り違えを未遂にしうる、有体物及び無体物に対する管理番号の発番方法として、n桁の順列を作成する段階と、該n桁の各桁に排他的に割り振る数値及び/又は文字の組合せを選択する段階とを含む手順により、番号配列に関する二次元マトリックスMを作成し、その二次元マトリックスに従い前記個体識別番号を発番することが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−179536号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の方法では、発番された管理番号の誤認防止には有効であるが、順次発番される番号と番号との間に関連がないため、管理上の不都合が生じていた。例えば、a)ある2つの管理番号を見て、それらが連続して発番されたものか否かが不明である。b)連続して発番された複数の管理番号の最初の番号と最後の番号を見て、それらの複数の管理番号の総数が不明であるという問題である。これらはいずれも管理番号を連番(発番順序を表す番号)とする従来の一般的な発番方法では発生しない問題である。
【0005】
一方、管理番号に連番を用いる場合に誤認防止を図る手段としてはチェックディジット(check digit)が周知である。例えばパソコン用語辞典e-words(http://e-words.jp)に記載されているように、チェックディジットとは、数列の誤りを検出したり捏造を防止したりするために、一定のアルゴリズムに従って付加される数値や記号のことであり、バーコードや銀行の口座番号などに利用されている。もっともよく用いられるチェックディジット生成方式は、各々の値に一定の規則に従った係数を乗じたものの和を求め、それを定められた係数で割った余りを用いるというものである。元の数列の数字の一部が間違っているとチェックディジットが大きく変動するため、誤りを検出することができる。
【0006】
しかし、チェックディジットを使用する場合には、管理番号の桁数が1桁増加するため、以下の問題が生じる。
(1)管理負荷が増大する(管理番号の物品への表示、情報システムへの入力、管理者間での口頭伝達などに際して)。
(2)既存の仕組みに後から導入する場合には、桁数の増加のため管理番号が物理的に表示できない、情報システムの桁数不足によりシステムの修正が必要となる等が生じる場合がある。
【0007】
管理番号を誤ったとしても、誤った管理番号を持つ管理対象が存在しなければ、その誤りは実害を及ぼすには至らない。
一般に、管理番号には連番(発番順序を表す番号)が用いられる。このため、2つの管理番号A,Bの数値の差が小さい場合に、この2つの管理番号を取り違えると、管理対象の取り違えが生じる可能性が高い。逆に、数値の差が大きい管理番号C,Dを取り違えた場合には、誤った管理番号をもつ管理対象が存在せず、未遂となる可能性が高い。(例1)製造業において、製品に製造順に管理番号を発番すると、製品倉庫において数値の差の小さい管理番号が同時期に近しい場所に存在する可能性が高い。数値の差の大きい管理番号間は、時間的、空間的に離れた状態で存在する、または同時に存在しない可能性が高い。(例2)会社において、社員に入社順に管理番号を発番すると、同時期に入社した社員の間で取り違えが生じやすい。(例3)会社において、伝票に発行時刻順に管理番号を発番すると、同一日に処理する伝票の間で取り違えが生じやすい。
【課題を解決するための手段】
【0008】
本発明者は、前記課題を解決するために、発番された管理番号の見間違い、記憶錯誤、転記ミス等による管理対象の取り違えを防止でき、しかも桁数増加も招かない管理番号発番方法を鋭意検討し、その結果、管理番号がn桁のとき、先頭から1桁目〜(n−1)桁目を連番部、n桁目をチェックディジットによる検査桁とし、さらに検査桁に対してある規則に従った数値を加算するという手段に想到し、本発明をなすに至った。すなわち、本発明は以下のとおりである。
(1) 連番部にチェックディジットによる検査桁を連結してなる番号に別途求めた管理数を加算して管理番号とする管理番号発番方法であって、前記管理数が、前記管理番号の連番部分を繰り返し使用するときの繰り返し回数であることを特徴とする管理番号発番方法。
(2) (1)において、
管理番号の末尾桁の値として、検査桁に管理数を加算した解が1桁ならこの解、2桁ならこの解を10で割った余り、を採用し、
連番部が発番可能な最大の値を超えたら、連番部を初期値に戻して管理数の値を1加増することを特徴とする管理番号発番方法。
【0009】
なお、(2)において、前記管理数が2桁となったら、発番不可とするか、あるいは、前記連番部及び前記管理数を初期値に戻し、サイクリックに発番するかのいずれかとすればよい。サイクリックに発番する場合には、同一番号の2回目以降の発番に際しては、前回発番した管理対象が消滅している(重複発番とならない)事を確認した上で発番し、もし重複する場合には、当該番号の次の番号を発番することが好ましい。
【発明の効果】
【0010】
本発明によれば、連番部を有することで2つの管理番号が連続して発番されたものであるか否かの判断が可能、複数の連続して発番された管理番号の総数をその最初の番号と最後の番号から算出が可能などの通常の管理番号を連番とする方法と同等の利便性を持ち、連番部に検査桁を連結した暫定番号に繰り返し使用回数を加算して管理番号としたことで、管理番号の見間違い、記憶錯誤、転記ミス等による管理対象の取り違えを有効に防止でき、しかも、検査桁は管理番号の末尾桁に吸収されるので桁数増加による管理負荷増大やシステム要修正の問題も生じない。
【図面の簡単な説明】
【0011】
【図1】本発明の実施に好適な手順1を示すフロー図
【図2】本発明の実施に好適な手順2を示すフロー図
【図3】本発明の実施例に係る発番結果を示すテーブル図
【発明を実施するための形態】
【0012】
管理番号の各桁および検査桁のとりうる数値は0,1,…,9のいずれかである。
検査桁の値は、連番部の数値に対してチェックディジット算出方法を適用して算出する。チェックディジット算出方法は、一般的に用いられている「モジュラス10/ウェイト3」「モジュラス10/ウェイト2」「モジュラス11/ウェイト2、3、4、5、6、7」「DRチェック・DSRチェック」「モジュラス16」「モジュラス43」「モジュラス103」(例えばhttp://www.numbering.dpi.ne.jp参照)などの中から適宜選んで用いることができる。
【0013】
図1は本発明の実施に好適な手順1を示すフロー図である。この手順1では、前回の発番値を記憶しておき、その連番部分のチェックディジットから前回の管理数を求めるようにしている。
ステップ[1]:前回の発番値の連番部分をn1とし、[2]へ進む。連番部が3桁(管理番号が4桁)の場合、n1の初期値を例えば001とする。
【0014】
ステップ[2]:前回の発番値の検査桁部分をm1とし、[3]へ進む。
ステップ[3]:連番部分n1のチェックディジットを算出し、算出結果をc1として[4]へ進む。
ステップ[4][5]:m1は、(c1+管理数)が1桁ならその値、2桁ならこれを10で割った余り(=これから10を引いた値)とされているから、管理数をdとすると、(A):m1=c1+d、または、(B):m1=c1+d-10である。(A)の場合、m1-c1=d≧0、(B)の場合、m1-c1=d-10<0である。そこで、(m1-c1)を計算してその結果をdとする ([4])。ただし、(m1-c1)=dが負の場合、d+10をdの値とする([5])。そして[6]へ進む。
【0015】
ステップ[6]:n1を1加増し、その結果をn2とし、[7]へ進む。
ステップ[7]:n2が連番部分n1の桁数を超過する(yes)か否(no)かを判定し、yesなら[8]へ、noなら[11]へ進む。この桁数超過成否判定は、連番部の値が発番可能な最大の値を超えるか否かの判定と同等である。
ステップ[8]:dが9である(yes)か否(no)かを判定し、yesなら[15]へ、noなら[9]へ進む。
【0016】
ステップ[9][10]:n2を連番部の初期値に戻し、dを1加増して、[11]へ進む。
ステップ[11][12][13]:n2のチェックディジットを算出([11])し、算出結果にdを加算してその結果をc2とする([12])。ただし、c2>9(2桁の値)の場合、(c2÷10)の余り(=c2の1桁目の値)をc2の値とする([13])。そして[14]へ進む。
ステップ[14]:n2にc2を連結した数値を今回の発番値とし、終了する。
【0017】
ステップ[15]:発番不可とし、終了する。
図2は本発明の実施に好適な手順2を示すフロー図である。この手順2では、前回の発番値に加えて、前回の管理数を記憶しておくようにしている。すなわち、手順2は、手順1において、ステップ[3][4][5]に代えて、ステップ[3A]:前回の発番値の管理数(初期値は0)をdとして[6]へ進む、としたものである。これ以外のステップは手順1と同じである。
【実施例】
【0018】
実施例では、鋼管を管理対象として、5桁の管理番号の末尾の桁を検査桁とし、検査桁以外の4桁を連番部とし、前記手順1により管理番号を発番した。ここでのチェックディジット算出方法は、「モジュラス10/ウェイト3」を用いた。これは、連番部4桁のうちの偶数桁(管理番号5桁のうちの奇数桁)に係数1、連番部4桁のうちの奇数桁(管理番号5桁のうちの偶数桁)に係数3をそれぞれ掛けた結果の合計を求め、これを10で割り、余りが0なら0をチェックディジットとし、余りが0以外なら10から余りを引いた値をチェックディジットとする方法である。
【0019】
発番結果を図3に示す。
図3のように、検査桁=連番部から算出したチェックディジット、管理番号=連番部の後に{検査桁+管理数(=連番部の繰り返し使用回数)}、としている。このため、連番部を参照することで連番方式と同等の利便性を享受することを可能としながら、従来5桁であった管理番号の桁数は5桁のままで増えていない。
【0020】
さらに、発番後に2つの管理番号の取り違えがあっても両者の発番順序の差は大きいため、管理対象の時間的・空間的の離間が大きくて、取り違えが生じる確率は低い。
例えば12370と12379とを取り違えた場合、従来の連番のみの発番では両者の発番順序の差は12370〜12379=9と小さい。これに対し図3では、両者の発番順序の差は、(1237〜9999=8762)+(9999〜0001=1)+(0001〜1237=1236)=9999となって、格段に大きい。

【特許請求の範囲】
【請求項1】
連番部にチェックディジットによる検査桁を連結してなる番号に別途求めた管理数を加算して管理番号とする管理番号発番方法であって、前記管理数が、前記管理番号の連番部分を繰り返し使用するときの繰り返し回数であることを特徴とする管理番号発番方法。
【請求項2】
請求項1において、
管理番号の末尾桁の値として、検査桁に管理数を加算した解が1桁ならこの解、2桁ならこの解を10で割った余り、を採用し、
連番部が発番可能な最大の値を超えたら、連番部を初期値に戻して管理数の値を1加増することを特徴とする管理番号発番方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2011−175586(P2011−175586A)
【公開日】平成23年9月8日(2011.9.8)
【国際特許分類】
【出願番号】特願2010−40737(P2010−40737)
【出願日】平成22年2月25日(2010.2.25)
【出願人】(000001258)JFEスチール株式会社 (8,589)