プログラミングの基本的な事 その2 コード化

記事
IT・テクノロジー
コード化とは、
例えば「名前」だけで行った場合
●同じ商品で価格が違う場合、商品名だけでは区別がつかなくなってしまいます。
●何かの部品の場合、その部品名だけでは機能的な区別、取り付け場所の区別などの詳細を表す事が難しい。
●社員名簿であれば、同姓同名の区別がつかない。
こうした問題を解決する為に「名前」以外に数字やアルファベットでコードを作って項目に入れる事です。

このコード化で必須なのは「ユニーク」であること。つまり唯一無二であることです。重複してはならないのです。

これはプログラミングでとても大切な事で、例えば「A」という会社に納品書を作った場合。もし「A」という同名の会社がもう一つあった場合。
納品書が同名の別会社の分も作成されてしまう可能性があります。
そうなるとまずいですよね。
ですから「ユニーク」であることは大切なのです。

でも「名前」だけで「ユニーク」が確保できているので「コード」はいらないかも。と思われる場合もあると思います。
その時はその時で「ケースバイケース」でいいのではないでしょうか。

データの規模が大きくなればなるほど「コード化」は必要になって来ると思います。言い換えればデータの規模が大きくなればなるほど重複の危険性や分類の必要性が増すからです。

この「コード化」で面倒なのは「コード」を管理しなければならないことです。
1~順に連番を「コード」にする手がありますが、「コード」に意味を持たせる事が出来なくなってしまいます。
意味を持たせるとは、例えばお客様コードの最初の「二桁」は都道府県を表すとか、社員名簿であれば、最初の一桁が勤務先事業所にするとかにすると、番号に意味を持たせる事ができます。
意味を持たせると管理しなければならないので。なんとも歯がゆいのです。

ですから、どのようにするかを事前によく考えて、どちらがメリットが大きいので判断するしかないでしょうね。

これは私にとっても悩ましい事でした。
現在販売しているExcelVBAでは
商品マスタの「コード」は前二桁は「仕入先コード」後の五桁は自動カウンタにしました。
「仕入先コード」も自動カウンタで作成になります。
なぜこのようにしかのかというと、同じ商品を違う仕入先から購入する場合を想定しました。
そうすれば、仕入れ先別の集計もできます。

また、得意先マスタの「コード」は電話番号にしました。
電話番号は「ユニーク」ですし、市外局番等で場所の区別が出来ます。

「管理なしで、必要な要素を確保するには?」とちょっと頭をひねりました。

もし、将来的に基幹ソフトウェアを導入予定であれば、尚の事「コード化」は大切になってくると思います。
大概のプログラミングでは「コード化」はお決まり事のようになっています。
業務のコンピュータ化の一番最初に出てくる要素になります。

ExcelのSheetでもいいですが、何かデータを蓄積して作業をしようとお考えであれば、この「コード化」は頭の隅においておいたほうがいいと思います。



サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す