Designer:「変換入力」の簡単な例題

日本の都道府県の分類には、都道府県コード七地方区分(北海道、東北、関東、中部、近畿、中国・四国、九州)の組合せがよく使用されます。

この例題では、マスターデータのマッチング参照の定番手法である「変換入力」にスポットを当て、入力データにはない「地方区分名」をマスターから参照する方法について例示します。

フォルダ構成と業務手順

入力CSVファイルと都道府県マスター

INPUT\input.csv

都道府県コード,都道府県名
04,宮城県
13,東京都
14,神奈川県
27,大阪府
38,愛媛県
38,愛知県
96,テキサス州

MASTER\都道府県マスター.xlsx

都道府県
コード
都道府県名 地方区分名
01 北海道 北海道地方
02 青森県 東北地方
03 岩手県 東北地方
04 宮城県 東北地方
05 秋田県 東北地方
06 山形県 東北地方
07 福島県 東北地方
08 茨城県 関東地方
09 栃木県 関東地方
10 群馬県 関東地方
11 埼玉県 関東地方
12 千葉県 関東地方
13 東京都 関東地方
14 神奈川県 関東地方
15 新潟県 中部地方
16 富山県 中部地方
17 石川県 中部地方
18 福井県 中部地方
19 山梨県 中部地方
20 長野県 中部地方
21 岐阜県 中部地方
22 静岡県 中部地方
23 愛知県 中部地方
24 三重県 近畿地方
25 滋賀県 近畿地方
26 京都府 近畿地方
27 大阪府 近畿地方
28 兵庫県 近畿地方
29 奈良県 近畿地方
30 和歌山県 近畿地方
31 鳥取県 中国・四国地方
32 島根県 中国・四国地方
33 岡山県 中国・四国地方
34 広島県 中国・四国地方
35 山口県 中国・四国地方
36 徳島県 中国・四国地方
37 香川県 中国・四国地方
38 愛媛県 中国・四国地方
39 高知県 中国・四国地方
40 福岡県 九州地方
41 佐賀県 九州地方
42 長崎県 九州地方
43 熊本県 九州地方
44 大分県 九州地方
45 宮崎県 九州地方
46 鹿児島県 九州地方
47 沖縄県 九州地方

生成制御シートとひな形シート

例題データと制御シート・ひな形シートのポイント

  • 都道府県コード」は前ゼロ付きの2桁の数字です。
  • 入力データの「38,愛知県」「96,テキサス州」は、エラーデータの例として入れています。
  • ひな形シートの「都道府県コード」は、セル書式を「文字列」にして、前ゼロが表示できるようにします。必要に応じて中央寄せなどを指定してください。
  • 制御シート「入力項目名」キーワードの「#地方区分名」は、入力データにはない項目なので、項目名の先頭に "#" を付けます。
  • 注意点:制御シート [変換入力]-[ファイル] キーワードですが、制御ブック(CTL\データ生成.xlsx)のあるフォルダからの相対パス指定となります。この例題の場合は、CTLの親(..)フォルダの下のWORKフォルダの下を指定しています。 ..\WORK\都道府県マスター.xml

これまでの設定での実行結果

OUTPUT\output.xlsx

都道府県コード 都道府県名 地方区分名
04 宮城県 東北地方
13 東京都 関東地方
14 神奈川県 関東地方
27 大阪府 近畿地方
38 愛媛県 中国・四国地方
38 愛知県 中国・四国地方
96 テキサス州  

変換入力でマッチングに失敗すると「地方区分名」は空になります。この例では、エラーデータの「38,愛知県」も「都道府県コード」でマッチしてしまい、「中国・四国地方」がセットされてしまっています。

「マッチキー」の追加

これを改善するために、制御シートの「マッチキー」に「都道府県名」も加えてみましょう。マッチキーを横に並べると、AND条件(かつ)での参照判定となります。

都道府県コード 都道府県名 地方区分名
04 宮城県 東北地方
13 東京都 関東地方
14 神奈川県 関東地方
27 大阪府 近畿地方
38 愛媛県 中国・四国地方
38 愛知県  
96 テキサス州  

「固定値」キーで参照エラーを明示する

参照エラーを明示的に表示したい場合は、「固定値」キーに「ERROR」「未登録」「★エラー★」 などの任意の文字列を指定します。

都道府県コード 都道府県名 地方区分名
04 宮城県 東北地方
13 東京都 関東地方
14 神奈川県 関東地方
27 大阪府 近畿地方
38 愛媛県 中国・四国地方
38 愛知県 ERROR
96 テキサス州 ERROR

参照エラーデータをスキップしたいとき

マッチングに失敗した参照エラーデータを出力からスキップさせたいときは、「スキップ条件」キーワードに、「固定値」で設定した値を指定します。

都道府県コード 都道府県名 地方区分名
04 宮城県 東北地方
13 東京都 関東地方
14 神奈川県 関東地方
27 大阪府 近畿地方
38 愛媛県 中国・四国地方