2019年11月のご挨拶

新・コンピューター事始め(Basic から Access)(2)

目次

(1)はじめに
(2)システム化構想
 機能分析図見つかる
 システム化のきっかけ
(3)パンチカードシステム(PCS)
 カード型?データベース
 困難を分割せよ
 カードの穴で分類
(4)プログラムからシステムへ
 システムへのジャンプ
(5)用語とコード
 品目、品目CD
 工場登録、工場登録番号
 型式確認、型式有効期間
 型式区分
 型式確認番号
(6)ホレリスの統計機
 必要は発明の母
 パンチカードの大きさ
 集計方法
 特許
(7)インチ・ヤード
(8)終わりにあたって

(1)はじめに

2019年7月のご挨拶では、『新・コンピューター事始め(Basic から Access)(1)』を掲載しました。今回の(2)では、システム化が『型式管理』から始まった理由とそのきっかけ、基本的な用語とコード(番号)などを取り上げましょう。また、『型式管理』は、システム化以前に、『パンチカードシステム(PCS)』の一種を利用した管理が検討された時期があったようです。そこで、『パンチカードシステム(PCS)』とその先駆者である『ホレリスの統計機』についても取り上げています。
目次に戻る

(2)システム化構想

機能分析図見つかる

「主任、A氏の資料から、1981年11月14日の日付がある『機能分析図』が見つかりました!」

「どれどれ、なるほど。A氏が、協会に勤め始めた当時、協会の主な機能を書きだしたものだな。パソコンやワープロもなかったから、当然ながら手書きじゃのう。Excelで書き直したものを以下に示す。(文字を多少修正)

 

一つ一つの四角は、『機能』を表し、A氏が当時、必要とした目的に応じて、左から右に細分化されていて、場合により、上から下へ時間が経過する様を表しているようだが、必ずしもそうなっていないものもある。また、機能と部所は、必ずしも対応していない。部所単位ではなく、あくまでも、『機能』に着目していることに注意して欲しい。ちなみに、協会の財団法人化に伴い、基準や手数料の大臣承認は、なくなっているということだ。また、それ以外にも変更されている個所があったり、当時、A氏が誤解していたと思われる部分もあるが、なるべく、当時、A氏の手書き資料を再現してみた。(特定製品に関する業務は省略して描いている)

「主任、A氏は、こういった情報をどうやって集めたのかしら?」

「おおまかには、勤務先の各種リーフレットや業務方法書などを元にしたそうだ。あとは、『聞き込み』かのう」

「ちょっと、『聞き込み』じゃないでしょ。担当者さんへの『聞き取り』でしょうが!」

「おっと、たしかにのう。細かな点は、先輩のM氏から話を聞いた他、新人の強みで、関係する部所から聞いたようだ。中には、やや、困惑された担当者さんもおられたという。ところで、A氏がシステム化を図ろうとしたのが、上の図でオレンジ色の枠線で表示している『型式管理』機能の部分だな」

「えーと、A氏は、どうして、型式管理をシステム化しようと思ったのかしら?」
目次に戻る

システム化へのきっかけ

「うん。それは、『コンピュータ事始め(東芝パソピア)』に、ご自身が書いているが、『型式管理』業務を主として、担当するように言われたことによるという。しかし、それだけで、新人のA氏が、いきなり、パソコンによるシステム化を考えたり、実行に移したりするとは、思えんじゃろう。

その点をA氏に確認すると、その背景には、先輩のM氏の言葉があったそうだ。A氏が前の勤務先で、コンピューターのプログラマーであったと知ったM氏から、特に期限切れ型式データのセレクトや型式の更新案内などにコンピューターを活用できないかという話があったという。話し合った時期は、配属されてから数日後のことだったらしい。それがきっかけで、A氏は、パソコンの下調べを始めたと言うことじゃ」

「でも、A氏は、COBOL語のプログラミングは、知っていたけど、BASIC語は、知らなかったんでしょ。第一、パソコンも持ってなかったし?」

「いや、まったく、その通りだのう。前述の『コンピュータ事始め(東芝パソピア)』にも出ているが、1980年初頭、会社等の業務で使われていたコンピューターは、オフコンか大型コンピューターとその端末ぐらいだった。そのため、A氏が所属することになった数十名規模の組織でコンピューターが使われていることは、ほとんど、なかったろう。M氏は、そのあたりの情勢をよくご存じなかったかも知れんが、むしろ、そのことが幸いしたと、わしは、思うがな」

「え!どうして?」

「つまり、なまじ、M氏がコンピューターに詳しい方だったなら、当時のオフコンのシステム開発の工数や費用、リース料が高額だということもご存じだったろうし、パソコンとて、1970年~1980年頃は、個人向けのゲームなどのホビー用途が主だったので、とても、型式管理には、使えないだろうと思ったろうからな」

「なるほど。だけど、A氏が入る前年の1980年にNECのPC 8001、その翌年1981年に東芝のパソピアなどが発売され、パソコンを取り巻く状況が大きく変わってきた訳ね。前回取り上げたパソピアの取扱説明書の図や説明を読むと、明らかに、東芝さんが規模の小さな会社や個人事務所などを視野に入れて準備したことが分かるものね」

「A氏もアメリカ製のパソコン(当時は、マイコンと呼んでいた)を前職の不動産会社で見たことがあったようだ。小さいながらブラウン管と本体が一体となった、おしゃれなデザインで、会社の総務部長さんが個人で購入したものだったという。A氏によれば、おもちゃのような感じで、とても、現在のパソコンのように発展するとは、見通せなかったということだ。A氏は、M氏の話を聞いて、あらためて、パソコンの現状を把握するため、カタログ等を収集したり、秋葉原のショップを見に行ったりし始めたという」

「まさに、グッドタイミングだったということね」

「A氏が当時、ブームとなっていたNEC PC 8001ではなく、なぜ、東芝のパソピアを購入するに至ったかも前述の『コンピュータ事始め(東芝パソピア)』に書かれている。一番のポイントとなったのは、外部記憶装置として、フロッピーディスク装置(280KB×2台)が用意されていたためじゃった。その頃、パソコンの記憶装置として一般的だったカセットテープデッキでは、事務用として、データの信頼性を保てないと考えたという。

これは、A氏が測量会社に勤めていた頃、利用していたオフコンにカセットテープ装置が付属しており、一部のデータやプログラムを保存できるようになっていた。しかし、結構な頻度で読み取りエラーを起こし、再度、『紙テープ』(これが当時の基本的な入力用データの形態)から読み込み直す必要があったという。このため、『カセットテープ』と聞いただけで、『こいつは、信用できん』と思ったということじゃ。

実際、パソコンのプログラムをカセットテープに保存した場合、読み込みエラーを起こしがちで、当時のパソコン誌で、カセットテープの読み込みエラー対策特集記事が掲載されたこともあった」

「コンピューターのファイルフォーマットやコード等を決めるためには、(システム化以前の)既存の文書処理で、どのような入出力帳票や台帳が使われているか、また、処理の時間的な順番や条件を明らかにしておく必要があるわね。

つまり、捜査には、『証拠集め』が必須なのよ。どこかの警察のように防犯カメラ映像だけで満足して、なすべき捜査を尽くさないと、容易にえん罪を生んでしまうおそれがある。そうなると、まさに、『未確認捜査実態』だわね。

閑話休題。ここで言う、『証拠』は、入出力帳票や台帳などね。出力帳票に記載されている項目やその内容を見落として、システムを設計してしまうと、後日、ファイルフォーマットなどの修正が必要となり、余計な手数がかかってしまうもの」

「たしかに。そのような無駄な手数を減らすには、入出力帳票や台帳は、白紙のひな形だけでなく、実データが記載されているもののコピーも入手しておくと良いじゃろう。ひな形では、こうなっているが、実際は、こんな風に記載している、などという事実が現場のテスト段階にきて発覚することがあるからな。こうなると、システムの初期にさかのぼっての修正が必要となるなど、開発のつまづきの石となってしまう」

 A氏の例は、パソコン草創期であり、担当者自身が開発した例です。このため、業務データに開発者(=担当者)がアクセスするのに支障は、ありませんでした。一方、後年は、外部業者にシステム開発を委託するのが通例となりましたので、帳票やデータのサンプルを渡す場合は、会社名、住所等を別の文字や数字に置き換えるなどの配慮をしたり、紙の帳票は、差し障りがある個所を墨塗りしたりする必要があります。しかし、システム開発が進めば、実データのコピーを渡す場面も出てきますので、業者との開発契約に守秘義務を盛り込むのは当然として、契約先から再委託される可能性を踏まえた目配りも必要となっています。
目次に戻る

(3)パンチカードシステム

カード型?データベース

「当時、M氏が工場登録と型式管理の双方を担当されていたが、型式管理について、上司のKT課長からは、以前から、紙の『カード』を使ったらどうかと言われていたということじゃった」

「へー。カードって言うのは、パンチカードでコンピューターに入力すること?」

「いや、コンピューターは、使わないというか、コンピューターが世に出る前に、アメリカで開発されたデータ管理技法(PCS:パンチカードシステム)のことだと思う。1960年代~1970年代、大型コンピューターやオフコンが使われるようになっても、リース料やシステム化費用が高額だったり、専門知識を持つ人材が必要だったりしたため、中小規模の会社等では、利用が困難な状態は、続いた。

そんな折、協会では、使われなかったものの、PCSの一つである手で棒を操作してカードを分類する『ハンドソートパンチカード』(日本の会社の商品名)などが、結構、利用されたらしい。なお、PCSで使用された一部のカード(例えば、IBMのパンチカード)は、コンピューターのデータやプログラムの入力用として、長く使われたことは、よく知られているじゃろう。

ところで、カードで情報管理と聞いて、わしが思い出すのは、(主として閉架式の)図書館の『図書目録』かのう。ともちゃんの世代は、果たして、知っているかどうか。厚紙のカード1枚に1件分の図書のデータが手書きまたはタイプされていた。図書目録(索引=インデックス)に書かれていたのは、書名、著者名、分野、出版年等々だな。検索しやすくするために、書名索引と著者名索引の両方が作られている場合もあった。

もし、索引カードによる管理を『型式管理』に応用すれば、(発行する)型式確認証が『本』で、その項目の一部(品目CD、工場登録番号、型式確認日、型式期限日、型式区分等)を抜き書きしたものがカードにあたる。カードは、台帳に比べて、かさ張るものの、1ページに複数の型式確認の内容が記載されている『台帳』に比べれば、扱いがずっと楽になる」
目次に戻る

困難を分割せよ

「1件のデータを1つの物に対応させるというアイデア、この1件分のデータを1枚の物に記入して管理するという仕組みを『ユニットレコード』という。例えば、図書館の索引カードは、ユニットレコードの一例である。すなわち、パンチカードシステムは、ユニットレコードの概念に含まれる。このユニットレコードの概念を発展させた人物は、博物学者、書誌学者のコンラート・ゲスナー(1516年~1565年)としている。』(この個所は、ウィキペディアの『パンチカードシステム』によった。)のように、かなり、以前からあったと思われる。多数の対象をまとめてしまうと管理が難しくなるが、バラバラに分割すると容易になるということだな」

「主任のお好きな言葉、デカルトの箴言:『困難を分割せよ、しかる後に総合せよ』)にかなっているわね」

「ははは、わしの座右の銘じゃ。1ページに複数の型式データが記帳されている台帳を分割して、1つの型式毎に1枚のカードを割り当てて、カードの束に分解するイメージじゃな。

さて、型式カードを何らかの定められた順番(例:品目CD、工場連番順)に並べておき、型式確認の追加や失効に応じて、当該カードの追加や削除を行えば、カードの検索やセレクトは、台帳で行うよりも、実用的じゃろう。セレクトする際は、該当するカードを収納ボックスから抜き出してしまえば良いのだからな。

しかし、目で並び順を頼りに探すので、台帳よりも便利ではあるものの、著しく能率的とまでは、言えんじゃろう。まして、正しい順に並んでいないと先頭から順に探す必要があるので大変じゃ。また、抜き出したカードを正しい位置に戻すのも面倒だな。

ま、収納箱に移動できる品目毎の仕切り版を設けるとか、カードの色やマーカーペンで色分付けするとか、いくつか工夫の余地は、残されていると思う。ここで、色分けと言えば、『国民健康保険証』なども、更新の度に紙の色が変わるじゃろう。それは、市町村の区別とか、期限切れかどうかなどを知る工夫だと思うがの」
目次に戻る

カードの穴で分類

「単に目で探すという原始的な方法から大きく一歩を踏み出すために、アナログ的ではあるが、カードに適切に設計された穴を開けて、重ねたカードの束に細い丈夫な棒を通すことにより、必要な複数のカードを取り出す方法が考えられるじゃろう。下図のような感じかな。

17番のカードをセレクトする原理。

 青い矢印は、細長い棒を通しているところを示す。2回、棒を通せば、品目CDが17の値を持つ複数のカードを抜き出せる。ただ、この方法だと、項目の個数を増やせない。たとえば、2段目に穴を開けられない(1段目の穴の開き方に影響されてしまうからのう)。

そこで、考えられる手立ては、下図のように、カードの他の辺を利用する方法だろう。

 こうして他の辺も利用すれば、他の項目、たとえば、工場連番や型式確認日を穴により表現可能だ。原理は簡単で、用途は広いが、カードの最大4辺までしか使えない。カードの内部に文字は、書けるがもったいないじゃろう。

なお、左辺、あるいは、右辺の穴に棒を通して抜き取る場合は、カードの束全体を回転させてから、行う必要があるだろう。回転するとなると、カードの形は、正方形の方がよいかも知れんな」

「あんまり周りの辺に穴を開けてしまうと、カードが弱くなって、傷つきやすくなるんじゃない。それより、前にテレックスのところで出てきたでしょ、紙テープを使って、データをさん孔する方法よ。なにも、棒なんか使わずに、紙テープの穴を読み取れるでしょ?」

「テレックス(1900年頃発明された)などの紙テープの読み取りは、金属製のブラシを使う電気的な方式だ。A氏も前職で、オフラインで使用する『紙テープさん孔機』や『光学式紙テープリーダー』を使っていた。光学式紙テープリーダーは、コンピューターに付属していて、サーという小さな音ともに紙テープが高速で送られて読み取られる。対して、さん孔機は、ブラシを使って電気的な導通により、穴の開き方を判断するため低速である。ザッ、ザッという低い音とともに紙テープが進んでいったそうだ。


 上図は、プログラムなどがさん孔された紙テープ

紙テープは、当時、大量のデータを作成して、まとめて、コンピューターに読み込ませるために安価で、かつ、効率的な媒体だった。しかし、情報管理という面では、紙テープは、向かないのじゃ。なぜかというと、紙テープは、(一巻きのデータ容量を増やすために)薄い紙で作られるので、破れやすく、また、湿気を帯びると保存性が良くないこと、表面に穴しかないので目で見て記録内容が確認しづらいことなどだな。その点、厚手の紙のカードは、丈夫で長期保存が可能であり、表面にタイプまたは手書きで文字を書くことができ、目でも確認できる点が優れている。

KT課長がM氏に示唆した『カードを利用した型式管理』がどのようなものかは、今となっては、定かではないが、ヒントとなりそうな情報がウイキペディアの『パンチカード』に前述の『ハンドソートパンチカード』という項にあった。

それによると、ハンドソートパンチカードは、『手操作により簡単に扱えるカードとして、事務用や調査データの処理用に以前は盛んに用いられたものである。英語では edge-notched card(en:Edge-notched card)という(日本では、日本パンチカード工業(株)が、『ハンドソートパンチカード』という名前で製造販売していた)。カードの周囲に多数の孔を開けたもので、特定の孔の部分を切符の改札のように切り取ることで情報を記録し、孔に棒を通して引き上げると、そこが切られたカードだけが振り落とされる、というものである(ここで使われている「ソート」の語は広義の用法で、数値的に昇順or降順に並べるという意味より広く、分類する、といったような意味である)』とある。

一つ、注意しておくと、この『ハンドソートパンチカード』は、前述で説明したものと、穴の開け方が逆になっている。すなわち、前述では、穴が縁まで切れているのが通常で、切れていない穴で情報を表している。一方、ハンドソートパンチカードでは、多数の切れていない穴が開いたカードがあり、必要な個所の穴を縁まで切り抜いて、それで情報を表すものだ。言葉では、分かりにくいと思うので、下図で示そう。


 上の図で、上半分で示したのが、17のカードを抜き取る考え方じゃ。17の2個所の穴のみ、縁まで、切り抜かれておらず、残りは、切り抜かれている。一方、図の下半分のものは、ハンドソートパンチカードの考え方じゃ。17の2個所のみが縁まで切り抜かれていて、残りの穴は、縁まで達していない。すなわち、必要なカードを抜き取るのではなくて、抜き落とす、という感じかのう。17のカード達のみが棒ですくい上げられない残りのカードという訳だ。

得られるカードは、同じじゃが、ハンドソートパンチカードの方法が、より、利便性が高いことが分かる。あらかじめ(縁まで、切り抜かれていない)穴が開いたカードを販売することにより、利用者が(昔の)鉄道の切符のように、必要な個所のみに切り込みを入れれば、良いのだからな。(この緑字の個所は、2019/11/20追記)

KT課長がM氏に話したというシステムは、この種のものかと思われる。(日本パンチカード工業は、1956年(昭和31年)創業)

このような、カードによる分類集計は、PCS(パンチカードシステム)と呼ばれるもので、アメリカで開発された。そこで、奥の脇道となるが、アメリカの国勢調査(1890年(明治23年))の集計作業で初めて使われた『ホレリスの統計機』について、(6)節で取り上げた。コンピューターのご先祖様のひとつにあたる機械だ」
目次に戻る

(4)プログラムからシステムへ

システムへのジャンプ

「それで、型式管理のシステム化がスタートしたと言うことね」

「ま、そうだが、その前にA氏が乗り越えなければならない山がいくつかあったと思うのう。一つは、プログラムからシステムへの跳躍じゃ」

「プログラムは単体だけど、システムは、複数のプログラムの集まりだから?」

「もちろんそれもあるが、A氏が作ろうとしたシステムは、『データベース』ということだな。そのために、データを保存するためのマスターファイルや作業ファイルが必要となる。どんなファイルを作るか、そこにどんな項目を盛り込むかなど、決めることはたくさんある。

しかし、Basic言語には、Accessのようなデータベース管理機能がないため、すべて自前のプログラムでデータの管理(ファイルの作成、レコードの追加、変更、削除等)を行う必要があるのだな。それは、Accessのテーブル設計と同様に、どのようなファイル(≒テーブル)を設けるか、そこにどんな項目を作るか、項目の内容をどのタイミングでどう変更していくかなどは、Accessでも通じるものがあり、(コンピューター)システムが十分に機能するかどうかの成否を握ると言えるじゃろう。

なお、Basicでは、Accessのようなフォームやレポートの機能もないので、フォームの代わりに、ディスプレイにPrint文で表示させる、レポートは、LPrint文でプリンターに出力することで、紙に印字するなど、すべてを自前のプログラムで制御する必要があるのじゃな」

「なるほど、ガッテンです。それと、複数のプログラムがあるってことは、その実行の順番をコントロールする必要が出てくるわね。ま、オペレーターが定められた順に個々のプログラムを呼び出して実行することも可能でしょうけど、業務用としては、物足りない。そこで、機能分析図や機能関連図を作って検討した訳ね」

「そうだな。A氏は、描いた機能分析図や機能関連図をM氏に見せたところ、国からの委託業務であった特定製品との関係が抜けているという指摘があったという。型式管理について、それらの品目のみに適用される一種の例外処理が必要となるのじゃが、読者の方をいたずらに混乱させるだけだと思うので、今後、必要となった際に触れることにしよう。

さて、具体的に設計するためには、帳票や台帳の項目とその内容の分析とともに、必要となるレコードの長さと最大データ件数を想定することが必要だ。それにより、当時のパソピアのFD(1枚当たり約280KB)に入るかどうかが左右されるからな。FDに収まらない設計では、まさに、絵に描いた餅じゃ」

「主任、残念ながら、そのあたりの資料は、見つかりませんね」

「たしかにパソピアの時代のファイルフォーマットは、残っておらんのう。A氏の記憶によれば、品目数が当時約50だったことから、システムの寿命を10年と考え、最大品目数を100、最大登録工場数を1000、最大型式件数を2500程度と想定したというがの。ただ、読者のみなさんには、『用語』の話をしてからでないと十分に伝わらんと思うので、次節で用語とコードの話をしよう」
目次に戻る

(5)用語とコード

品目、品目CD

「コード(番号)は、ファイルの項目内容に単語や文章に代わる簡易な数字または文字を割り当てる仕組みで、一意であるため文字表記の揺れ等に起因するあいまいさを排除でき、データ量の圧縮や処理の高速化に必要じゃ。既存のコードがあれば、優先して採用を検討するのがよいだろう。

今回、基本的な用語のみを取り上げることにしよう。

まずは、『品目』じゃな。果物にたとえて言えば、リンゴ、ミカン、ナシ、バナナ、といった果物の分類名にあたるものだな」

「リンゴならば、その中の品種(ふじ、ジョナゴールド、陸奥など)ではなくてね。で、品目数は、いくつあったのかしら?」

「A氏が勤め始めた頃は、前述のように約50個だったという。品目のコードは、すでに、前ゼロ3桁の数字で、001、002、・・というコード化が使用されていたので、品目コード(品目CD)として、そのまま採用したという」

「『前ゼロ3桁』というのは、3桁に満たない数では、数字の前に複数個の0を追加して全体として3桁にするという意味ね。だけど、これだと、品目数が1000になるとオーバーしてしまうよね?」

「たしかにな。とは言え、協会設立から約10年で50だったので、仮にそのペース(5個/年)で品目数が増えても、1000に達するのに、約190年かかるので、A氏は、よしとしたのじゃろうな。

断っておくが、前ゼロ3桁という条件は、ファイルフォーマットで、品目CDの型を文字型とするか、数値型とするかを制約する条件ではないぞ。実際、Basicシステムでは、整数型、後年のAccessでは、文字型であった。特に、ハードディスクが登場する以前は、いかに1件当たりのレコード長を短くするかが極めて大切だったので、1バイトでも少なくなるようにデータ型を選択したのだろう」

「品目CDを数値型とした場合は、画面や紙に出力する場合は、前ゼロ3桁に整形しないといけないわね」

「そうだな。必ずしも方法は、一つではないが、AccessのVBAであれば、Right("00"+Trim(Cstr(数値)),3)とすれば、簡単かな」

「Cstr(引数)は、引数を文字列に変換する関数ね。Trim(引数)は、引数から余分なスペースを省く関数、そして、Right(第1引数,第2引数)は、第1引数の右端から第2引数分の文字列を取り出す関数ね」

「もっとも、前述の書き方だと、3桁以外に対応できないし、必要な場所にいちいち書かないといけないため、Accessになってからは、ユーザー定義関数、PMaezero(w As Long, keta As Integer) を作成していた。なお、第1引数 wには、長整数を入れ、第2引数のketaに整数で桁数を指定する。
Public Function FPMaezero(w As Long, keta As Integer) As String
  Dim k As Integer
  If w < 0 Or keta < 1 Then FPMaezero = "": Exit Function
  FPMaezero = Trim(Str(w))
  k = Len(FPMaezero)
  If k < keta Then
   FPMaezero = String(keta - k, "0") + FPMaezero
  End If
End Function

のようにな。

ただし、パソピアのBasicでは、ユーザー定義関数を利用できなかったので、似た働きをする『サブルーチン』を作成して、サブルーチンで特定の大域変数に整形後の値をセットして利用していた。なお、後年のMS-DOS版のBasic 98 には、ユーザー定義関数の機能も用意されていたが、使わなかったようだ。A氏が使わなかった背景には、パソピアのBasicにその機能がなかった以外に、A氏が習得した頃のCOBOL語(JIS 1972年)の入門書に利用者定義関数の解説がなかったことも影響したと思う。今の新しいCOBOL語では、取り入れられている」

※ 『品目CD』だけでは、品目によっては、数量の集計作業や手数料の違いに十分に対応できないことが分かった。そこで、『品目CD』を補うものとして、『品目補助CD』(00~の前ゼロ数字2桁)を新規に作成した。パソピアの時代は、型式区分の特定の要素の値で区別していた可能性がある。『品目補助CD』の導入時期は、NEC 9801へ移行した時か、その後のラベル集計を追加した時かは、不明である。なお、今回、説明している『工場登録番号』や『型式確認番号』には、品目補助CDは、使われていないので、『品目補助CD』に関する説明は、後日、必要に応じて行う予定である。

※ 品目毎の基準の改正等により、型式区分や手数料などにも変更が出る可能性がある。BasicシステムからAccessシステム(Ver 1)へ移行時に、そのような変更に備えて、品目毎に『履歴CD』を設けて、『品目CD』の上位に置いて、管理する提案も出たが、複雑になるので、見送られた。履歴CDと同等な役割をする『品目改訂番号』を追加したのは、Accessシステムのバージョン2(Ver1から2011/11に移行)であった。
目次に戻る

工場登録、工場登録番号

「工場登録制度は、品目毎に定められた一定の水準以上の製造設備及び検査設備並びに品質管理基準を満たす工場の製造事業者の工場登録申請に基づき、審査の上、合格すれば、『工場登録』を行う制度だ。登録された工場には、『工場登録証』が交付される。不合格の場合は、不合格通知書が交付される。なお、登録された工場を『登録工場』と呼び、登録工場には、品目毎に1番から始まる固有の番号が付く。品目CDと組み合わせて『工場登録番号』というコードになるのだな」

「あー、ムズイわね。数学の定義みたい。でも、読者の皆さまは、あまり、具体的に製造設備や検査設備のことを考えなくても良いのよ。『なんか、品目というヤツがあって、その品目毎に登録できる工場に一定の基準があるんだな』と思ってくださいね。

そして、『うちの工場も、その品目の製品を作っているんで、登録工場になりたいなと思って申請した』とか、想像してくださいね。また、この審査っていう奴が前掲の機能分析図を見ると書類審査とか工場審査とかに分かれるんだけど、そこも、『世の中、たいてい、そういうもんでしょ』と思っていていただければ、結構ですよ」

「ははは、今回、品目とか工場とか使わずに、『分類』や『対象』と命名しても良かったが、書き手のわしらも混乱するし、読者の方にもわかりにくいじゃろう。皆さまには、全体をいわば、例え話として、ご理解いただき、何かシステム化したいと思っていらっしゃる方は、ご自身の例に引き寄せて、お読みください。

さて、『工場登録番号』は、すでに、品目CD-工場連番という形式で、001-001、001-002、・・・、あるいは、002-001、002-002、と使われていた。ここで、『工場連番』は、品目CD毎に1から始まる数字で、表記の際は、前ゼロ3桁で表されるものじゃ」

「工場連番も3桁なんだ」

「そうだな。1000を超えると品目CDと同様に問題となるが、工場連番は、品目毎に1から始まるため、1000を超えるのは、あり得ないと思ったのだろう。ただ、後年、ラベル数量の集計もシステム化することになり、『工場登録』とは別の制度である『ロット認定』(今回は説明しない)とともにマークの表示数量の集計を行うようになった。その際、ロット認定業者の工場連番に相当する数字を4桁としたので、システム変更以降、内部的には、登録工場の工場連番も4桁で保持するようにしたという。

とは言え、Basicの時代は、工場連番も整数型としていたため、マスターファイルのフォーマットに関しては、3桁も4桁も大きな変更では、なかったということじゃ」

「登録工場は、廃止とか取り消しがあるんだけど、廃止などした場合は、その番号は、どうなるのかしら?」

「廃止になったりして有効でなくなった登録工場の工場連番は、いわば、永久欠番扱いとなり、他の工場用に使われない。もっとも、Accessに移行する以前の工場登録の管理は、基本的には、手作業だった。例外として、毛筆で手書きしていた『工場登録証』を筆文字で印字できるソフトを使って印刷するようにしたくらいじゃったという。そのおかげで、字の下手なA氏の書いた工場登録証が交付されて、外部に恥をさらすことは、なくて済んだようだ。

なお、当然ながら、Basicシステムでも、登録工場のデータを保存しているマスターファイルがあったので、会社名、住所や代表者の変更や変更日、登録廃止の場合は、廃止日や廃止理由などをマスターに反映するため、Basicシステムのメンテナンスプログラムを使って、項目内容を変更した。しかし、登録工場の合併や譲渡・譲り受け処理が後年増えたことに伴い、型式確認を含めると、手作業で、それらのメンテナンスを行うのは、なかなか、面倒だったようだ」
目次に戻る

型式確認、型式有効期間

「前節の工場登録事業者が品目毎に別途定められている『型式区分』毎に、任意の製品について、『型式確認』申請を行い、型式試験に合格して認められれば、『型式確認』が行われる。このとき、発行されるのが『型式確認証』であり、不合格の場合は、『型式確認不合格通知書』が発行されることになるのだな。図で書くとこんな感じかな。

 この品目には、4つの型式区分(1,1、1,2、2,1、2,2)がある。一方、この品目の登録工場は、品目に属する製品のA、B、D、E と品目に属さない製品Cを製造している。品目に属する製品で、マークの表示を希望する場合は、各型式区分毎に品番A(またはB)、品番D(またはE)を検査機関に提出し、同時に、協会宛に型式確認の申請を行う。検査に合格して、型式確認証の交付を受ければ、その型式区分に属する製品に対して、自社検査のみで、マーク表示が認められるということだな」

「またしても、面倒なことだわね。ところで、一度、型式確認を受けると登録工場のように取り消されたりしない限り、ずっと有効なのかしら?」

「いや、型式確認は、品目毎に決められている1年~の有効期間があるのじゃな。なので、型式確認日+有効期間(年)=型式期限日が前述の型式確認証に印字されて交付されている。もし、型式期限日までに型式確認の更新申請がないと、その型式確認は、期限切れのため失効してしまうことになる。なお、期限内であっても、工場登録の廃止や取り消しがあれば、型式確認は、自動的に失効する仕組みだ。

同じように、有効期限がある制度で身近なものとしては、自動車の運転免許があるじゃろう。免許証も有効期限を過ぎてしまうと失効してしまう。期限前に免許の更新手続きが必要なことは、似ているな」

「なるほどね」

「型式確認は、基本的には、1件ごとに『型式確認日』がまちまちなので、定期的、たとえば、毎月、まもなく(例:2ヶ月後に)型式期限日を迎える型式確認データの1ヶ月分を正確に把握する必要がある。これは、更新の申請をする登録工場側も同様で、特に規模の大きな工場だと前回の型式確認日から数年後には、担当者が変わられていることがある。すると、更新申請の必要性が意識されていなかったり、うっかりと期限が来たのに気がつかないこともあったようだ」

「それで、登録工場に型式確認の更新案内を送っていたのね?」

「そうだな。前任のM氏の頃、すでに、更新の案内状とともに申請用紙等を一緒に送付していた。M氏によれば、当時は、手作業で台帳からセレクトしていたので、もれなく、かつ、申請済みの分を除いて選択するのが難しかったという。A氏によれば、この点は、M氏から、特に改善を要望されたという」

「えーと、自動車の運転免許の更新も案内ハガキが来るよね?」

「そうじゃな。M氏も、型式確認の更新案内を、適切な時期に、正確に送れれば、サービスの向上になるし、また、更新申請が来ない登録工場に電話をして、更新するかどうかを尋ねたり、早く申請するように催促したりする時間と費用を削減する効果を期待したということだ」

「その型式有効期間といのは、品目毎に決まっていると言ったけど、ずーと変わらないものなの?」

「ともちゃん、非常に良い質問ぞな。こういう、一見不変と思われる項目が、将来、変更される可能性を想像する力が大切じゃ。仮に、システム化をお願いする説明者が(今の制度では)不変であると言っても、変わった場合の対応を考えておくことが求められる。

説明者が言うように、品目毎の型式有効期間が不変であれば、前述のように『型式確認日』と(品目CDで決まる)『型式有効期間』から『型式期限日』を計算できるため、型式マスターに型式期限日を無理に保存しておく必要がなくなる。それにより、型式確認データのレコード長を短くできる。

しかし、法律や制度も変わる可能性があることを忘れてはいけない。実際には、型式有効期間は、めったに変わらないものの、不変ではなく、変わったこともある。基準が改正されたタイミングなどでだ。その際、取得済みの型式確認の期限日は、普通、変わることはない。例えば、型式有効期間が3年から2年に短縮されても、すでに取得済みの型式期限日が短かくなることは、まあ、ない。逆に、2年から3年に延びたとしても、型式期限日が自動的に延びることは、ほぼ、ないじゃろう」

「つまり、型式確認データに『型式確認日』とともに『型式期限日』も保存しておかないといけないということね」

「そういうことだ。別の例では、たとえば、消費税率やそれに基づく消費税額など、後日変更される可能性が少しでも考えられる項目は、マスターにデータを追加(変更)した当時の税率や金額を保存する設計にした方がよい。Accessのテキストなどでは、税額などは、計算項目として、マスターに保存しない例も見受けられるがの。

しかし、税率が変わった場合はもちろんとして、税率が同じでも、税額は、端数の丸め方により、変わってくる場合がある。企業が丸め方法を変更した場合、税率及び税抜き額が変わらなくても、税額、従って、税込み金額は、変わる可能性があることに注意する必要があるじゃろう。

Accessの場合、税率や税額を計算項目とする場合は、マスターではなくて、作業ファイルに設定しておく。そして、作業ファイルをもとに選択クエリーなどを使って、(連結)フォームを作成し、そのフォームに入力(変更)してもらうのが良い。フォームのデータを追加(または変更、削除)してよいと入力者が判断して初めて、作業ファイルの内容を元にマスターに追加(変更または削除)する。一見すると、回りくどいように思えるかも知れんが、経験では、もっとも確実だ」
目次に戻る

型式区分

「分かったわ。次は、『型式区分』って、何なの?」

「前に書いたように、登録工場は、基本的には、自社内で製造や検査を行えるわけじゃ。そこで、マークを表示したい製品は、本来、設計段階から、基準に適合するように設計するべきなのだな。また、本当に基準を満たしているかどうかを、自社で検査し、その結果を適切に記録し、常に基準以上の品質が保たれるように管理しなければならない。簡単に言えば、適切な『品質管理』を行う義務がある。

もし、これをきちんと守っている理想的な登録工場があるとすれば、工場側から見れば、型式確認は、不要な手続きとも言えるじゃろう。一方、マークを発行する協会から言えば、果たして、そこまで、登録工場を信頼して良いものかと疑うのも事実じゃ。

人は間違いやすい者であるし、まして、昨今、大手の著名な工場でも、法定検査の省略や検査データのねつ造などが散発的に発生しているご時世では、なおさらじゃ。

そこで、厳格な立場からは、登録工場から、設計が異なるすべてのサンプルを提出してもらって検査を受けてもらう必要があると考える人もおるじゃろう。ちなみに、『ULマーク』は、こちらに近いと聞いたことがある。

しかし、設計が異なるすべての製品というと、品目にもよるが、対象製品の数が多くなりすぎて、こんどは、登録工場の経済的・時間的な負担が大きくなりすぎてしまい、肝心のマーク表示の意欲がそがれ、世の中に出回る製品の品質が下がるおそれもある。

そこで、ある種の妥協策ではあるが、品目毎に細かなカテゴリーを設けて、それを『型式区分』と名付ける。そして、すでに型式確認を受けている製品と同一の『型式区分』に属するそれ以外の製品は、自社検査のみでマークを表示できる仕組みとしているのだな」

「そうすると型式マスターには、『型式区分』を含める必要があるわね。区分は、材質とか寸法とかで分類するということかしら?」

「具体的な要素は、品目毎に異なるが、たとえば、
 材質:1=鉄製のもの、2=合成樹脂製のもの、3=その他のもの、
 寸法:1=100cm以下のもの、2=100cmを超えるもの、
 などのようなものじゃ。この場合は、材質で3種類、寸法で2種類の併せて、6種類の型式区分が考えられる。すると、型式マスターの型式区分項目は、『2,1』のようなベクトルでその値を保存することが考えられるじゃろう。

実際は、レコード長を短くするため、たとえば、2,1の場合、カンマを入れずに、21のような文字列で『型式区分』を保存している。しかし、要素によっては、その区分数が9種類を超える場合がある。その場合でも、区分番号の2桁の数字と型式区分の対応する1桁の文字列を1対1に対応させるために、パソピアの時代は、0~Fまでの16進数表記の文字(区分数が0~15までを0~9、A、B、C、D、E、F)に変換して1つの文字列として保存したという。(後年、区分の種類が15を超える品目が現れたため、0~Z(ゼット)までの27進数表示で保存することになった)」

「でも、型式確認データの方に型式区分を『21』のように、コードで保存すると、別途、その内容を明文化するための『型式区分マスター』のようなものが必要になるでしょ?」

「よう気がついたな。実は、コード化は、簡潔で便利だが、そのコードが何を表すのかを具体的な文字でシステムから紙などに出力したい場合、コードをキーとするマスターファイルを設けるか、または、関係するプログラム内にコードとその名称等を結びつけるための配列等を持っておかないと出力しようがない。

たとえば、後述のように、品目CDに対しては、『品目マスター』があり、品目名や型式手数料、検査料、委託検査機関などの情報が保存されている。また、『工場登録番号』に対しても、初期のBasicシステムでは、(登録)『工場マスター』があって、会社名や工場名、住所、代表者などを保存していた訳だ。

しかし、『型式区分マスター』は、Basicシステムで、その構想は、あったものの、データ容量と作成する手間がかかるため、システムから出力した『型式確認証』に、別途、品目毎に印刷してある『型式区分表』なる印刷物を添付していたのじゃ。

たとえば、型式確認証に印字されている『型式区分:2,1,2,2』は、添付されていた、下図のような型式区分表をご覧いただくことにより、『材質が合成樹脂製、寸法が1m以下、重量が10キログラムを超え、付属品がない』ものであることが分かるという仕組みだった」

「またしてもの、なるほどです。つまり、Accessに移行して初めて、型式区分の内容を普通の文字で型式確認証に印字できるようになったと言うことね」

「ま、上述のように、Accessにしたから、技術的に可能になったのではなかったがの。結果的には、ということだな。

あと、ついでに書いておくと、型式区分の要素の中には、製品によっては、除外というか対象外となる要素もあった。たとえば、仮に、『メガネの種類』という要素があったとして、その区分が、『1:メガネ、2:コンタクトレンズ』だったとしよう。メガネをかけない人は、この要素に対しては、対象外となるので、 -、で表記していた。こういうものは、型式区分の文字で、0 を割り振った」
目次に戻る

型式確認番号

「次に、肝心の『型式確認番号』の説明をせにゃならんな。ともちゃんも想像できるように、『型式確認番号』は、システム化以前に、次の形式ですでに使われていた。型式確認番号:品目CD-工場連番-型式連番-年-月、ここで、型式連番は、品目毎に1から始まる3桁の数字。年月は、『型式確認日』の年月じゃ」

「工場連番と違って、型式連番の3桁は、心もとない気もするけどね」

「型式確認は、前述のように、更新申請が行われることが多い。更新した場合は、基本的には、型式連番の数字は、変わらずに、年の部分のみが変更される。これにより、型式連番の増加は、かなり抑えられるのじゃ。また、年月が付いているので、型式確認番号全体で考えると、重複することは、ないのじゃ。(ここは、やや正確ではない。後年のBasicシステムやAccessシステムでは、型式確認のレコードは、『品目CD、型式連番、発行年』の3つ1組で一意(連結主キー)になるようにしている。発行月が不要な理由は、型式有効期間が年単位だからだな。2019/11/18追記)

「なーる。それで、年月の年は、西暦だったの、それとも、和暦だったのかしら?」

「年月の年は、パソピアの昔から西暦下2桁(数字前ゼロ2桁)じゃった。年を和暦ではなく、西暦で設計するのは、常識的な判断だったろう。型式有効期間のところでも触れたが、変更される可能性がある項目は、変更されても良いように設計すべきじゃからな。

パソピアの時代(昭和56年~57年)、いずれ、昭和が変わることは、目に見えておったからのう。(システム内の)年に和暦を選択することは、あり得んじゃろう。この点は、『年の表記方法(和暦と歴史、六十干支、西暦の改暦)』(2018年3月のご挨拶)でも記載しているので、これ以上は、書かんがのう」

「するてぇっーと、工場登録日や型式確認日も、最初は、すべて、西暦年下2桁+月2桁+日2桁の合計6桁で、保存していたのね?」

「そのとおり。より根本的には、パソピアやNECのN88 Basic、DOS版のBasic 98には、データ型に『日付型』がなかったこともあるじゃろう。従って、日付は、数値として扱い、たとえば、1985/11/1は、『851101』、という数値として保存していた。

昭和から平成に変わったのは、1989年1月8日(平成元年1月8日)からだが、Basicシステムでは、この改暦は、型式確認証など数個所のプログラム上で、日付が昭和か平成かのいずれかを判別して、印字し分けるために、プログラムの微修正が必要になったほかは、ほとんど影響なかったそうじゃ。

しかし、この和暦の改暦作業を経験したことで、来たるべき『西暦2000年問題』を乗り切るためには、日付の項目を含んだマスターファイルや作業ファイルや入出力帳票・画面などの大幅な手直しを迫られるのが火を見るよりも明らかとなったという」

「そうすると、『西暦2000年問題』に対応した後のシステムでは、年は、西暦4桁となったのね。1985/11/1は、『19851101』で保存した。えーと、最後にもう一つ、確認なんだけど、不合格の場合は、年月は、どうなるのかしら?」

「後年のBasicシステムやAccessシステムでは、(型式確認のレコードは)前述のように、『品目CD、型式連番、発行年』の3つの項目を連結主キーとしている。ここで、型式確認申請が受付中のものは、発行年を100、不合格のものは、200、合格して型式確認が行われたものは、『型式確認日』の年(=発行年という)を割り振ったということだ。

このあたりは、以前のBasicシステムの中でも、大きな変遷があった点の一つだ。今後、(3)回以降で、ファイルフォーマットを扱う際に、再び、取り上げることにしよう」
目次に戻る

(6)ホレリスの統計機

必要は発明の母

「アメリカの『ホレリス』により、カードによる統計機の基本的な発明がなされたのは、1889年(明治22年)のことであった。

計算機の歴史』(ハーマン・H・ゴールドスタイン著:末包良太、米口肇、犬伏茂之 訳:共立出版:1980年初版3刷)によると、『この発明には、『ハーマン・ホレリス』(H.Hollerith)(1860年(万延元年)~1929年(昭和4年))とジョン・ショウ・ビリングズ(J.S.Billings)(1839年(天保9年~1913年(大正2年))の両氏が関わっている』と書かれている。

上の本の一部を要約すると『ドイツの3月革命(1848年)の混乱からアメリカに渡ったドイツ人夫妻の息子として生まれたホレリスは、コロンビア大学鉱山学科で、タビュレーティング(作表)方式について、論文を書き、それが認められて、アメリカの内務省(今の国務省)の統計調査室に就職した。先に行われた1870年(明治3年)の国勢調査の集計作業に7年も要したことから、当時、作業効率の改善が急務となっていた。アメリカの国勢調査は、10年ごとなので、次に行われる1880年(明治13年)では、人口や集計項目の増加のため、より一層、作業量が多くなり、遅延が予想されていた。

ホレリスは、このような状況下で、新設された『統計調査室』に1879年(明治12年)から勤務することになった。彼は、統計調査室に1883年(明治16年)まで、在籍し、その後、1年ほど、特許局で勤務後、人口統計のための統計機の開発に着手、1889年(明治22年)、統計機に関する重要な特許を取得した。この統計機は、1890年(明治23年)の国勢調査で実際に使われ、約2年間という短い期間で集計を終了させて非常な成功を収めた』という。

ホレリスの統計機が市場に出荷されたのは、ホレリスが1896年(明治29年)に設立した『タビュレーティング・マシン社』(Tabulating Machine Company)からだという。このタブュレーティング・マシン社は、1911年(明治44年)に『コンピュータ・タビュレーティング・レコーディング社』(CTR社)となり、1914年に(大正3年)に先代のトマス・J・ワトソンが入社し、そのワトソンの優れた指導力によって、1924年(大正13年)には、『インターナショナル・ビジネス・マシンズ社』(IBM)になった』ということだな」

「ホレリスさんの統計機から、後年、IBM社が生まれたという訳ね。たしかに、ホレリスの統計機がコンピューターのご先祖様って言う感じが分かるわ。ところで、タビュレーティング(tabulating)って、聞き慣れない言葉だわね」

「英語の、tabulateは、数字や事実などを表にする、表で表すという動詞で、tabulatingは、作表作業。また、tabulatorは、図表作成装置と訳されるようだ(ジーニアス英和辞典 第5版)

一方、ネット検索で見つかった『タビュレーター』(Tb)は、スノーボード競技会の資格の一つで、『アルパイン(AL)・スノーボードクロス(SX)・フリースタイル(FS)の各種目毎にタビュレーター資格がある。アルパイン競技ではタイム、フリースタイル競技ではジャッジスコアを計算し、順位を集計するのがタビュレーターの仕事。スタートリストの作成から競技途中の出走リスト、リザルト出しまでを行う。』(日本スノーボード協会:https://www.jsba.or.jp/)を表す用語にもなっている。強いて訳すと『計測員』という感じなのかな」

「これは、知らなかったわ。えーと、ビリングズ氏は、どういった立場で、ホレリスの統計機に関わったのかしら?」

「ビリングズ氏は、ホレリス氏より20歳以上年上で、『1870年の国勢調査のため、当時の統計調査室長官が陸軍に要請した結果、軍医副総監だったビリングズ氏が協力することになった。彼は、その仕事に強い興味を持ったらしく、1880年、1890年の2つの国勢調査において、データの集計と作表の業務の責任者となっていた。ビリングズ氏は、若いホレリスに、カードの穴により織物の模様をコントロールする『ジャガード織機』をヒントに、調査票の集計を効率的化できないかというアイデアを与えたという。』ことだな。ビリングズ氏との議論の後、ホレリスは、鉄道の切符や紙テープなど、様々な媒体を試した末に紙のカードに行き着いたという」

「ホレリスの統計機は、日本にも輸入されたのかしら?」

「ウィキペディアの『パンチカードシステム』の『日本』の項によれば、ホレリスの統計機を模した国産機の試みはあったものの、1923年(大正12年)の関東大震災の被害により、国産計画は、頓挫し、アメリカから、輸入された。
 『内閣統計局、鉄道省、横浜税関など (1923年、パワーズ)、日本生命 (1925年、パワーズ)、日本陶器 (1925年、ホレリス C-T-R/IBM機)、日本生命 (1934年、バロース)、帝国生命 (1934年、ホレリス)、住友生命 (1937年、ホレリス)、第一生命 (1938年、ホレリス)、川崎飛行機 (1938年、ホレリス)。
こうして第二次世界大戦前は、1920年代にはパワーズ(Powers Accounting Machine、後にレミントンランドに吸収)が多く、鉄道省のは世界最大数ともいわれた。しかし、1930年代には米国でもIBMがほぼ独占的になり、ホレリス機が多くなった。
』ということで、ホレリス(CTR社)の統計機、あるいは、後発のパワーズ(後にレミントンランドに吸収⇒スペリーランド社⇒バローズ社⇒ユニシス)などの機械だ。ホレリスの統計機などの用途は、国勢調査に限られず、汎用的であったため、在庫管理、契約管理など様々な応用が考えられたことを示している。汎用的というところは、後年のコンピューターを彷彿とさせる点じゃ」
目次に戻る

パンチカードの大きさ

「ホレリスの統計機のカード1枚には、どのくらいの穴が開けられたのかしら?」

「『計算機の歴史』では、『最大で288個所の穴が開けられるようになっていた。カードの大きさは、ドル紙幣と同じとされ、6と5/8インチ×3と1/4インチ≒19.3675cm×8.255cm』と書かれている。(一度に多くの穴は、開けない)

この当時(1880年~1890年)は、1929年(昭和4年)以前のため、米ドルの寸法は、Large size と言われるもので、7と3/8インチ×3と1/8インチ≒18.7325cm×7.9375cmである。

ちなみに、現代のSmall size と言われるドル紙幣の大きさは、6.14インチ×2.61インチ=15.59cm×6.63cm、となっている。(日本の紙幣と異なり、米ドルは、額面が違ってもサイズは、すべて同一)」

「えーと、ホレリスのカードは、当時のドル紙幣より、長辺で、0.635cm、短辺で、0.3175cm、それぞれ大きいことになるわね。

でも、ウィキペディアの『パンチカード』では、『1890年の国勢調査のためにホレリスが提案したカードは、最初、『5.5インチ×3インチ』≒13.97cm×7.62cmとなっていたが、その後、変更されて、7と3/8インチ×3と1/4インチ≒18.7325cm×8.255cm、となった』とある。何か、食い違っているのよ」

「なるほど。ウィキペディアの記事の元となったコロンビア大学の資料を見ると、
The card measures 3.25 by 7.375 inches, the same size as the 1887 US paper currency because Hollerith used Treasury Department containers as card boxes (pictures not actual size, but all to the same scale):』
(http://www.columbia.edu/cu/computinghistory/census-tabulator.html
)とあるので、ホレリスが1887年のドル紙幣の製造規格の寸法を採用したことが分かる。(それが、7と3/8×3と1/4インチであろう)

一方、ドル紙幣の寸法は、ウィキペディアの英語版を見ると、Large Sizeは、7と3/8インチ×3と1/8インチと書かれている。
(https://en.wikipedia.org/wiki/United_States_one-dollar_bill#Small_size_notes)。

短辺の長さの1/8と1/4の違いは、気になるものの、1890年の国勢調査の集計で使われたホレリスカードの寸法は、7と3/8インチ×3と1/4インチ、と見て、ほぼ、間違いはないじゃろう」

「と言うことは、『計算機の歴史』に記載の 6と5/8インチ×3と1/4インチは、短辺の値は、3と1/4インチで等しいけど、長辺が少し違っているとわね」

「そうなるのう。『計算機の歴史』にも、ホレリスのカードの大きさは、
とあり、また、
ドル紙幣と同じサイズにした』という記載があるので、当時のドル紙幣の大きさとほぼ同じであることには、違いがない。ドル紙幣の大きさは、前述のとおりなので、原著の単純なミスか、あるいは、訳書の印刷ミスかな。ところで、ともちゃんは、IBMのカードを見たことがあるかのう?」

「さー、実物は、見たことがないよ」

「1つの角のみ切り欠きが作られている。下図のようにな。

 これは、カードを重ねたときにカードの上下や左右を正しい向きとは別にしないようにするための工夫だ。IBMのパンチカードでは、1行80桁で、12行の穴を開けられる行があった。COBOLやFORTRANのコーディングシートやパソピアのドットプリンターなど、1行80桁となっているのは、このカードに由来するということだ」
目次に戻る

集計方法

「そもそも、ホレリスの機械では、パンチカードの穴をどうやって、読み取っていたのかしら?」

「そうじゃな。『計算機の歴史』には、『ホレリスの統計機』の写真が一つ掲載されている。これは、コロンビア大学のページに載っているものと同じじゃな。それ以外には、図や写真がないので、『コンピュータの発明』(能澤 徹 著:テクノレビュー社:2003年12月8日初版第1刷)を参照すると、読み取り機構は、こんな感じだったという。

 バネの付いた針がカードの穴の位置に対応するように多数植えてある板が自動的にカードを突き刺す。
 このとき、穴の開いている個所の針は、下の水銀に触れて、その際、電線に電流が流れる仕組みだ


「へー、水銀って、危険じゃない?」

「今は、こんな風に開放した空気中で水銀を使うことは、しないだろう。なお、水銀の製品への使用は、法律で規制されている。例えば、『蛍光灯は、製品によって、2018/1/1~2020/12/31の間で、順次国内での製造が禁止され、輸出・輸入も禁止される』とのこと。かつては、身近にあった『水銀電池は、すでに1995年に生産を停止している』そうだ。
(環境省 https://www.env.go.jp/chemi/tmms/tobira/riyo.html)」

「なるほど、体温計や血圧計なんかも、電子式に置き換わっているもの。えーと、本題に戻るけど、集計は、電流が流れることにより、計測用の時計のような目盛を1つ進めることで行われるのね。内部的に演算装置があるわけじゃなかったということか」

「『コンピュータの発明』によれば、下図のように『時計のような計測器は、全部で40個あった』という。

 『2つが1組となって、目盛は、0~99まであり、一方の目盛が1周すると、片方の目盛が1つ進んだ。これにより、2つ1組で10,000までを勘定できた

一方、同書によれば、『ホレリスの統計機は、235個の組み合わせに対して、そのカードの枚数を勘定できた』という。目盛の組は、20組しかないので、『最大で、7回、同じカードの組を読ませる必要があった』そうだ」

「目盛の駆動装置と針との間は、配線をつなぎ替えて、さまざまな集計に対応したということかしら」

「目盛の制御装置に『電磁リレーを採用していたので、複数の穴の導通を同時に検知できた』という。これは、複数個の針の導通を同時にカウントできたということだと思う。すなわち、針(A、B、C、・・)と目盛制御装置(α、β、γ、・・)とを考えた時、α=A、β=B、・・と配線で対応づける。

このとき、もし、AがOn(穴が開いている)、かつ、BもOnの数は、どうやってカウントしたかというと、まず、カード全体を機械に通して、AがOnのカードとそれ以外に分類する(読み終わったカードを流し入れるべき箱のふたが自動的に開く仕組みであったが、箱に入れるのは人手に頼っていた)。

この時、AがOnの数が、α、BがOnの数は、βの目盛で読み取れる。続いて、目盛をリセットして、AがOnのカードのみを機械に通して、βの目盛を読めば、A AND B の数をカウントすることができよう。穴が開いているか、いないかの2通りなので、一つの項目に着目すると、n回通せば、2^n個の組に分解してカウントできた、ということではないかな」

「電磁石とスイッチを組み合わせれば、A AND B も1回でカウントできそうだけど」

「そういう機構は、まだ、実装できなかったんじゃないかのう。α=A OR B、は、原理的には、簡単そうだが、電気信号が同時に目盛制御装置に到達しないで、タイミングがずれると、αで2重にカウントされそうな気もする。分類とカウントを繰り返した方が実際的だったのかも知れない」

「『計算機の歴史』によれば、『1890年の国勢調査(第11回目)では、6300万人と15万の地方行政区が対象となった』ということね。『新規に集計された項目として、生まれた子供の数、生存している子供の数、英語を話す家庭の数』などが挙げられている。コンピューターが普及した現代からは、想像もできない苦労があったことが分かるわ」

「ホレリスの統計機では、読み取り時、紙が絶縁体であるため紙が水銀に触れても紙に電気が流れないことも利用している。これにより、針が穴のない個所で紙に接触しても、針に電気信号が流れない。ただ、上述のように、加算演算は、目盛制御装置が担い、演算結果も、それぞれの目盛が保存する。なお、目盛の読み取りは、人間が行って、別途、メモする必要があった」
目次に戻る

特許

「ホレリスが1889年(明治22年)に統計機の特許を取ったことは、すでに記載した。これに先立って、『ホレリスは、カードのような機構で集計ができないかと示唆してくれたビリングズ氏にそのような機械を共同で開発する意思があるかどうかを尋ねた』ということだ。(『計算機の歴史』)。これは、特許に関わることで、重大な意味を持っていた」

「ところで、今は、アメリカの特許制度は、『先願主義』に変わったんだっけ?」

「何度も引用するのは、気が引けるが、ウィキペディアによれば、『現在ではほとんどの国で、先願主義が採用されている。最近まで先発明主義が残っていた米国においても2006年、国際会議において先願主義の採用に同意し、米国特許法改正が2012年から段階的に開始され、2013年3月16日には移行が行われた』とあるので、1889年当時は、『先発明主義』だった」

「じゃ、余計にホレリスさんとしては、気になったんじゃないの。だって、あとから、ビリングズ氏が自分の権利を主張するかも知れないから」

「たしかにな。先願主義でも、係争は、あるだろうが、事前に調べられる(日本では、特許申請から1年半を経過すると自動的に公開される)ので、無用の紛争は、避けられるという点がメリットの一つだという。日本で特許法が作られたのは、1885年(明治18年)だそうだから、案外早かったのう」

「ホレリスさんの場合、国勢調査のために試作機のテストを国などと行うなど、少なからず、国の機間の協力があったにもかかわらず、個人で特許を取得するというのは、なかなかだと思うわ」

「たしかにな。一つには、時代背景もあるだろうし、民間への技術移転を早急に行って、経済の活性化(どこかで聞いた気がするのは気のせいかな)を図りたいというアメリカの国の考え方のせいかも知れないのう。一方、日本では、企業の社員が会社のために行った発明・発見の権利は、会社に属するのは、当然としても、社員に対する報酬が低すぎると話題になったのは、まだ、最近のことだな。(青色LEDの例など)」

「アメリカでは、1890年の国勢調査に続いて、1900年の調査もホレリスの統計機が使われたんだけど、そのリース料金が高額すぎると、問題になり、統計調査室でホレリスの特許に触れないようにしつつ、改良が加えられたそうね。その中心となったのが、『J.Powers(ジェームス・パワーズ)』氏。このパワーズ氏により、印刷機能を持たせたため、前掲の目盛を人間が読み取る必要がなくなったことが画期的だったらしい。また、分類機の形状も縦型から横型に変化して、扱いやすくなったし、せん孔機も手動式から電気式へ変えた。読み取り部分は、特許に触れぬように水銀を使わなかったので、読み取り速度は、遅くなったらしいけどね。このパワーズ氏が興した会社が前に出てきた『パワーズ社』(そのまんまね)。ここから、現在のユニシス社につながる新しい枝が伸びたのね」

「そのようだな。こうして、ホレリスのCTR社⇒IBM社は、パワーズ社の攻勢により、苦しくなったが、『CTR社を率いたワトソン氏が、ホレリス氏の部下のひとりであった『E.A.フォード』氏をリーダーとした新たな開発チームを作り、メンバーの『クレア・D・レイク』氏が高度な印字機能を開発するなどして、パワーズ社より、優位に立ち、CTR社の危機を救った』そうだ。これが、後のIBMの隆盛につながった」
目次に戻る

(7)インチ・ヤード

「今でも、アメリカやイギリスでは、インチ、ヤードなどを使っているのかしら?」

「そもそも、インチやヤードとは、なんぞや?」

「指や足の長さに由来してるんじゃないの」

「ウィキペディアの『フィート』では、『1インチは、古代ローマで足の長さの1/12とされ、それは、成人男性の親指の爪の付け根の付近の幅と等しいとされていた』とある。足と言っても、足の裏の長手方向の長さのことじゃ。時刻などと同じく、12進数になっているのだな。

また、『国際フィート』は、『正確に0.3048メートル』、従って、『国際インチ』は、正確に 25.4ミリメートルだ。

なお、しばしば、『1インチは、約25.4mm』と記載されることがあるが、『約』は、余分な単語で、不正確、かつ、不必要である』と書かれていることに驚いたが、従来からの疑問が解消されてすっきりしたのう」

「国際と付いているのは、『国際インチの定義は、アメリカ合衆国、イギリス、カナダ、オーストラリア、ニュージーランド、南アフリカの6ヶ国が1958年に協定を締結し、1959年7月1日に発効したヤード(国際ヤード=正確に0.9144m)の定義に基づくものである』からなのね。ということは、以前は、各国で、違っていたということね」

「そのようだな。イギリスとその連邦諸国とアメリカ、カナダは、少し、違っていた。

約 25.399 8 mm(いわゆる「イギリスインチ」)に対して、アメリカ合衆国では1893年、メンデンホール指令 (Mendenhall Order) により、1インチ=100⁄3937メートル(いわゆる「アメリカインチ」)と定義された。したがって、1インチ = 約25.400050800102 mm であった。カナダもこれを採用した。』とある。

それでは、不便なので、ヤード・ポンド制度を採用している6カ国で、1958年(昭和33年)に国際インチなどに統一したということじゃろう」

「これで、12国際インチ=1国際フィートがはっきりしたわ。だから、ドル紙幣の寸法で、3/8インチみたいな8を分母とする分数が現れたということか。

一方、ヤードは、アメリカとイギリスで使用されているけど、他の国では、余り使われていないという。日本でも、スポーツの分野では、フィート、ヤードも使われている。ちなみに、1国際ヤードは、3 国際フィート=36 国際インチ、となるのね」
目次に戻る

(8)終わりにあたって

今回もご覧いただきありがとうございました。11月1日に合わせて、アップロードする予定でしたが、種々、手間取り、月の半ばを過ぎてしまいました。次回も、本欄で元気にお会いできますことを願っています。

Windows 7(SP1)は、2020年1月14日に、また、Office 2010は、2020年10月13日に、それぞれ、マイクロソフト社のサポートが終了します。インターネットに接続してお使いの皆さまは、早めの更新をご検討ください。

※旧ドメインは、2017/6/1で閉鎖いたしました。お気に入り、スタートページ等の変更をお願い申し上げます。
目次に戻る

 作成日 2019/11/17、
文言の一部を微修正 2019/11/18、2019/11/19
画像を追加、ハンドソートパンチカードに追記 2019/11/20
文言の一部を微修正 2019/11/21
紙テープの画像を追加 2020/2/11
リンクエラーを訂正 2020/7/11

前回のご挨拶に戻る今月のご挨拶に戻る次回のご挨拶に進む