第12章 汎用データの作成と受入

1.    汎用データの作成.. 12-3

テーブル名(コンボボックス)... 12-3

変換先... 12-4

特定業務パッケージ名を指定した場合... 12-4

外部ファイルのパス名... 12-4

項目名を出力する(オプションボックス)... 12-5

項目名... 12-5

出力指定... 12-5

CSVの項目名(特定業務パッケージ名を指定した場合)... 12-5

抽出条件となるデータの意味... 12-6

抽出する値の選択... 12-6

作成実行(コマンドボタン)... 12-6

2.    汎用データの受入.. 12-7

テーブル名(コンボボックス)... 12-7

変換元... 12-7

特定業務パッケージ名を指定した場合... 12-8

外部ファイルのパス名... 12-8

項目名... 12-9

入力必須項目... 12-9

CSVの項目名(特定業務パッケージ名を指定した場合)... 12-9

CSV項目が複数の内部項目に対応する場合... 12-9

受入データの意味... 12-10

受入データの生成値... 12-10

受入実行(コマンドボタン)... 12-10

3.    CSVデータとは.. 12-11

ファイル名... 12-11


「汎用データの作成と受入」は、当システムと「業務上何らかの関連がある」外部システムとの、データ交換を行う場合に利用します。

以下の機能と機能項目を用意しました。

l               汎用データの作成

l               汎用データの受入

l               CSVデータとは

1.     汎用データの作成

「汎用データの作成」は、当システムの内部にあるデータを、CSVComma Separated Values)形式(本章後述「CSVデータとは」を参照)のファイルに変換して外部に出力します。

以下の項目と機能があります。

l               テーブル名

l               変換先

l               外部ファイルのパス名

l               項目名を出力する

l               項目名

l               出力指定

l               抽出条件となるデータの意味

l               抽出する値の選択

l               作成実行(コマンドボタン)

テーブル名(コンボボックス)

当システムでは、業務上のデータは「テーブル」という単位で格納してあります。テーブルには業務上の名称がついております。テーブル名(コンボボックス)をクリックすると、当システムにある業務上のテーブル名の内、外部にデータ出力が可能なものをリスト状に表示します。

ここでは、外部出力したいテーブル名を一つ指定します。

 

変換先

変換する先を指定します。

既定値は「汎用」です。汎用とは、特に「一定の決まった業務」に対してのみ出力する訳ではなく、一般的にまた汎用的にこの出力を利用する、ということを意味します。

「汎用」以外の変換先の場合は、「特定の業務パッケージソフト」向けのデータ交換を行う、という意味になります。

例1:「給与奉行」

この例では、変換先に「給与奉行」を指定すると、OBC(オービック・ビジネス・コンサルタント)社の「給与奉行」という給与計算パッケージソフトとのデータ交換を目的にします。

特定業務パッケージ名を指定した場合

変換先に「給与奉行」などの「特定業務パッケージ名」を指定した場合は、当システムでのテーブル名と、変換先の「特定業務パッケージ」での対応するファイル名とが必ずしも一致する訳ではないことから、当コントロール直下の画面上に、「変換先のデータ名」というコントロールを新たに表示し、そこで、対応する相手先のデータ名を確認するようになっています。

このコントロールはユーザによる変更は出来ません。

外部ファイルのパス名

出力(作成)するCSVデータを格納する外部ファイルのファイルパス名を指定します。

このコントロールをダブルクリックすると、既定値を表示します。この既定値の名称は、前項の「変換先」の指定により異なります。

「変換先」の指定が「汎用」の場合は、当システム自身がインストールされたフォルダ(ディレクトリ)を上位パス名とし、テーブル名に”csv”というサフィックス(接尾語)をつけた名称になります。

例1:C:\Program Files\賃金決定\社員給与記録.csv

「変換先」が「特定業務パッケージ名」の場合は、当システム自身がインストールされたフォルダ(ディレクトリ)を上位パス名とし、前項での「変換先のデータ名」”txt”というサフィックスをつけた名称になります。

例2:E:\OBC\給与奉行\社員マスター.txt

ファイル名のサフィックスは、必ずしも”csv”である必要はありませんが、”csv”にしておきますと、Microsoft Excelなどの一般的な表計算ソフトでも、そのまま表形式で表示・確認することができますので便利です。その他、”csv”以外のサッフィクスでは、上記例2のように、”txt”が一般的です。この場合は、一般的なパソコンに無料でついている文字編集ソフトで表示することができます。

その他のサッフィクスは、使用できないことはありませんが、実務的には使いにくので、推奨はできません。

このコントロールに直接、手入力で指定すると入力ミスの危険性がありますので、当コントロールの右に位置する「(ファイル)参照」(コマンドボタン)を利用して下さい。

尚、「ファイル参照」の使用方法に関しては、(「第2章 画面の表示と基本操作」è「共通の操作と表示」è「画面の操作ボタン類」è「ファイル参照」)を参照願います。

項目名を出力する(オプションボックス)

CSV形式のデータは、必要に応じて、項目名(Field Header)を出力することが可能です。

このオプションボックスをOnにすると、各CSVデータにそれぞれ対応する項目名を出力します。

項目名

テーブルに格納されている出力可能な全ての項目の名称を表示します。

出力指定

出力する項目は、必ずしもテーブルに格納されている項目の全てとは限りません。

ここでは、出力したい項目名だけを指定します。

CSVの項目名(特定業務パッケージ名を指定した場合)

上記の「項目名」に対応する変換先のCSVデータの項目名を指定します。

変換先が「特定業務パッケージ名」の場合は、当システムのデータの項目名と、変換先のデータの項目名が必ずしも同一であるとは限りません。

例えば、社員マスターなどで、当システムでの社員番号の項目名が「社員番号」であったとしても、変換先の社員番号の項目名は、「従業員番号」や「EmpNumber」であったり、「MM1」などであったりと、違うことの方が普通です。

従って、こちらの「社員番号」のデータを、変換先の例えば「MM1」という項目名のデータとして変換する場合は、この「CSVの項目名」に「MM1」と指定します。

 

抽出条件となるデータの意味

複数のデータ(レコード)が存在する場合に、この項目のデータの値に抽出の条件をつけ、この条件に合致したレコードだけを出力することが出来ますが、その抽出条件の内訳を記述します。

抽出する値の選択

上記の抽出条件の値を指定します。

例えば、「賞与記録」のようなデータの場合、一般に、「夏期賞与」と「冬期賞与」の二つの記録が一つのデータ名で存在する場合があります。データの各レコードの項目に「賞与時期」などのコード項目があり、の場合は「夏期レコード」、の場合は「冬期レコード」という具合に分けていることが普通です。

このような場合で、このテーブルのデータから、「冬期レコード」だけを抽出して作成したい場合に、この「抽出する値の選択」で、と指定すると、「冬期レコード」だけを作成することができます。

なお、このコントロールは、「当システムが決める指定可能な項目名」だけが入力可能状態になり、それ以外の項目では、入力(抽出のための値の選択)はできません。

作成実行(コマンドボタン)

「作成実行」(コマンドボタン)を押すと、この「汎用データの作成」を実行します。

2.     汎用データの受入

「汎用データの受入」は、当システムの内部のテーブルに対して、外部のCSVComma Separated Values)形式(本章後述「CSVデータとは」を参照)のファイルからデータを入力(受入)します。

ただし、出力(作成)の場合とは異なり、ここでのCSVデータは、必ず、項目名(Field Header)が付いていなくてはなりません。

以下の項目と機能があります。

l               テーブル名

l               変換元

l               外部ファイルのパス名

l               項目名

l               入力必須項目

l               受入実行(コマンドボタン)

テーブル名(コンボボックス)

当システムでは、業務上のデータは「テーブル」という単位で格納してあります。テーブルには業務上の名称がついております。テーブル名(コンボボックス)をクリックすると、当システムにある業務上のテーブル名の内、外部からデータ入力が可能なものをリスト状に表示します。

ここでは、外部データからデータを入力したいテーブル名を一つ指定します。

尚、入力データの対象は、上記での「データの作成(出力)」で対象となったテーブル全てに対応するとは限りません。
内部の各種テーブルの項目値は、相互に関連しております。加えて、その値も特定の定義や計算式による相互関連が明確に定義されている場合があり、そのために、正確な定義に基づくデータ値の制御が出来ない限りは、外部から不用意にデータを入力(受入)すると、そのテーブルの各項目のデータ値の、整合性に問題が生じる場合があります。従って、ここのテーブル名(コンボボックス)では、その危険性がないテーブルだけを表示することになっています。

変換元

変換する元を指定します。

既定値は「汎用」です。汎用とは、特に「一定の決まった業務」からのみ入力する訳ではなく、一般的にまた汎用的にこの入力を利用する、ということを意味します。

「汎用」以外の変換元の場合は、「特定の業務パッケージソフト」向けのデータ交換を行う、という意味になります。

例1:「給与奉行」

OBC(オービック・ビジネス・コンサルタント)社の「給与奉行」という給与計算パッケージソフトとのデータ交換を目的にします。

特定業務パッケージ名を指定した場合

変換元に「給与奉行」などの「特定業務パッケージ名」を指定した場合は、当システムでのテーブル名と、変換元の「特定業務パッケージ」での対応するファイル名とが必ずしも一致する訳ではないことから、当コントロール直下の画面上に、「変換元のデータ名」というコントロールを新たに表示し、そこで、対応する相手先のデータ名を確認するようになっています。

このコントロールはユーザによる変更は出来ません。

外部ファイルのパス名

入力(受入)するCSVデータを格納する外部ファイルのファイルパス名を指定します。

このコントロールをダブルクリックすると、既定値を表示します。この既定値の名称は、前項の「変換元」の指定により異なります。

「変換元」の指定が「汎用」の場合は、当システム自身がインストールされたフォルダ(ディレクトリ)を上位パス名とし、テーブル名に”csv”というサフィックス(接尾語)をつけた名称になります。

例1:C:\Program Files\賃金決定\社員給与記録.csv

「変換先」が「特定業務パッケージ名」の場合は、当システム自身がインストールされたフォルダ(ディレクトリ)を上位パス名とし、前項での「変換元のデータ名」”txt”というサフィックスをつけた名称になります。

例2:E:\OBC\給与奉行\社員マスター.txt

後は、本章前節の「汎用データの作成」の「外部ファイルのパス名」と同様ですので、そちらを参照願います。

項目名

テーブルに格納されている入力可能な全ての項目の名称を表示します。

入力必須項目

「入力必須項目」がOnのデータ項目は、必ず入力しなくてはならず、つまり、このデータ項目は「必ず」、外部CSVファイル内に存在しなければなりません。存在しない場合は入力エラーとなります。

この「入力必須項目」は、当システムが決めたもので変更不可能です。お客さまが指定することはできません。

CSVの項目名(特定業務パッケージ名を指定した場合)

上記の「項目名」に対応する変換元のCSVデータの項目名を指定します。

変換元が「特定業務パッケージ名」の場合は、当システムのデータの項目名と、変換元のデータの項目名が必ずしも同一であるとは限りません。

例えば、社員マスターなどで、当システムでの社員番号の項目名が「社員番号」であったとしても、変換元の社員番号の項目名は、「従業員番号」や「EmpNumber」であったり、「MM1」などであったりと、違うことの方が普通です。

従って、こちらの「社員番号」のデータに対して、変換元の例えば「MM1」という項目名のデータから変換する場合は、この「CSVの項目名」に「MM1」と指定します。

CSV項目が複数の内部項目に対応する場合

外部システムの一つのCSVデータ項目が常に、一対一で、当システムの内部項目に対応するとは限りません。例えば、外部システムに「社員名」というCSV項目があり、「姓」と「名」が一つのデータとしてまとめて記録されていると想定します。一方、これに対応する内部テーブルの項目は、「姓」と「名」が別々の二つの項目に分かれている、ということがあります。この場合、このままでは外部のCSV項目を一対一の関係で、受入れることができません。

このような場合で、当該CSVデータ項目が、前後二つに分けることができる場合、例えば「姓名」の場合では、「姓」と「名」の間が一つのブランクで区切られているような場合、このCSVの前から一つ目、前から二つ目、・・・、・・・という具合に、それぞれが対応する位置を「ハイフンと位置番号」で指定することで、複数の内部項目に対応させることができます。

例1:今仮に、外部システムのCSVデータ項目名「社員名」が徳川 家康のように前後二つに分かれているとし、一方、内部項目では、「姓」と「名」に分かれている、と仮定すると、次のように「CSVの項目名」を指定します。

l       「姓」に対しては:社員名-1

l       「名」に対しては:社員名-

受入データの意味

下記「受入データの生成値」の意味を当システムが記述します(ユーザによる変更不可)。

どの項目が「受入データの生成値」として指定可能であるか否かは当システムが決めます。

受入データの生成値

「入力必須項目」の内、現実には、そのデータが外部ファイルには存在しない場合がありますが、そのような場合に、お客さまが画面上からそのデータを明示的に、「あたかも受入データとして存在する」がごとく指定することが可能です。 そしてこのデータは、外部の受入データに付加された形で、当システムの対応するテーブルに入力されます。

例えば、一般的に「賞与記録」というデータには、「賞与時期」などのように、「夏期賞与」と「冬期賞与」を区別するレコード区分のデータ項目があります。ところが現実には、外部ファイルに、その「賞与時期」を規定するデータ項目が存在しないことがあります。このような場合、「今回のデータは、冬期のデータですよ」と別途規定する必要がありますが、この時、その「賞与時期」を意味するコード(例えばとすると)を、画面上からと指定することで、この外部システムのデータ群は全体が、つまり「冬期賞与」であることを指定することができます。

このように、受入データを「生成」することができる項目名は、当システムが決めます。つまり、このコントロールは、「当システムが決める指定可能な項目名」だけが入力可能状態になり、それ以外の項目では、入力(受入データの生成値の指定)はできません。

受入実行(コマンドボタン)

「受入実行」(コマンドボタン)を押すと、この「汎用データの受入」を実行します。

3.     CSVデータとは

「汎用データの作成と受入」では、外部データとして「CSVデータ」という言葉が出てきます。CSVデータとは、Comma Separated Value”のデータという意味で、各データ項目がカンマで区切られたものを意味します。以下に例を示します。

社員番号,社員名,住所,電話番号

127779,”織田信長”,”愛知県尾張市”,”052-1234-5678”

572231,”豊臣秀吉”,”大阪市中央区”,”06-9876-5432”

935672,”徳川家康”,”東京都千代田区”,”03-4567-9012”

上の例で、最初の行は、フィールド・ヘッダ(Field Header”)(「項目名」) と言い、その次の行からの各データ項目の、「項目名」を表します。このフィールド・ヘッダの行は、お客さまの運用の都合に応じて、必要であったり、なかったりします。どちらにするかは、当CSVデータを利用する外部システムが、これらのフィールド・ヘッダ(項目名)を使用しているか否かで決まる問題です。

フィールド・ヘッダ以外のデータは、書式上、次のルールに従います。

l       数値データは、数字そのものを表示する。先行のゼロは不要。

l       文字データは、「」(引用符)で囲む。

l       数字データでも「文字」として扱う場合は、文字データと同様に「」(引用符)で囲む。先行のゼロは、必要に応じて含めることができる。

なお、各行は、「レコード」と称しますが、このレコードの最後(右端)の部分のデータは、必ずCR(Carriage Return:「改行」という意味)で終わる必要があります。 CRとは、16進数表では、X”1013”またはX”13”の、画面上は「目に見える形では」表示できない文字です。編集ソフトなどを利用する場合は、キーボードの「改行」または「Enter」または「CR」キーを押すことで入力できます。

ファイル名

CSVデータを格納するファイル名に厳格なルールはありませんが、一般に、サフィックス(接尾語)は、”csv”または”txt”です。”csv”とすると、Microsoft Excelなどの表計算ソフトで、表形式で表示することができます。”txt”とすると、一般的な編集ソフトで表示することができます。

例1:A:社員住所録.csv

2A:社員住所録.txt