0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【DataMagic】データ加工やってみた!仕様書を出してみた

0
Last updated at Posted at 2026-03-07

はじめに

DataMagic は、色々な機能を備えています。

機能・概要一覧
機能  概要
マッチング 入力ファイルのレコードと、共通する項目名をキーにした複数のマッチングファイルのレコードを結合し、一つのデータセットとして出力する
マージ 入力ファイルとマージファイルを連結して、入力マージデータとして取り扱えます。入力マージデータに対しては、データ加工前に重複行の削除やソートする
出力先振り分け 抽出条件に沿って、出力ファイルを振り分ける
数値項目演算 出力項目が数値タイプの場合、入力項目同士や任意の値との演算式を指定し、その演算結果を出力項目の値として出力する
データ抽出 入力データから、指定した条件に合致したデータのみを抽出する
項目入替 入力データの項目を入れ替えて、別のフォーマットで出力する
項目結合 複数の項目を結合して、1つの項目として出力する
項目分割 単一項目を分割して、複数の項目として出力する
全角半角 「カナ」「英数字」および「記号」を、半角から全角、全角から半角へ変換する
出力フォーマット指定 日付型、数字文字列型の入力項目を出力する際に、フォーマットを指定する
入力ソート 入力ファイルの形式がCSV、フォーマット、Excelの場合は、データ加工の前にソートする
属性変換 入力データを出力データに変換する際に、数値タイプを任意の数値タイプへ変換する
日付項目演算 日付データに対して、演算や西暦⇔和暦の変換を指定し、その結果を出力項目の値として出力する
関数 入力項目の値を関数で処理し、その処理結果を出力項目の値として出力する
マッピング 入力ファイルから出力ファイルへのデータの流れや加工、変換ルールを定義し、異なるデータ形式間での項目の対応関係を設定する
動的指定 データ加工の実行時にコマンドの引数に指定した数値や文字列を、条件や出力情報に使用できる
ユーザ出口変換 データを加工するときに、項目単位で独自の変換を設定するために、ユーザ出口プログラムを独自に作成できる
データ挿入 レコード内の任意の項目にユーザ指定の任意の値を挿入できる
仕様書出力 データ加工の処理と設定内容を仕様書としてExcelファイルに出力できる
チュートリアル データ加工の設定を対話的に実行して、DataMagicの基本的な操作方法を習得できる
カスタムエラー カスタムエラー条件を使用すると、データの形式は問題ないが、意図しないデータ(例 別の事業所のデータ)を検出したときにデータ加工をエラーにできる
ステップ実行 プログラムのデバッガの処理のように、経過を確認しながら実行し、意図するように変換できなかった場合の解析、またはデータ加工の処理経過の確認に使用できます。
コード変換 1バイトコード間、または2バイトコード間で、文字コードを変換する

今回の課題

プログラムって、組むのも大変ですが、それ以上に大変なのが、仕様書の作成。

特にプログラム修正が入った時に面倒くさがって、仕様書の修正を後回しにしていたら、自分が組んだプログラムでも「で、どこを書き換えるんだっけ」ってなって、終いには・・・ :sweat_smile:

そんな時、一発で仕様書が出てきたら、便利だと思いませんか。

DataMagic は、仕様書をExcelファイルに出力できるので、"全角半角変換やってみた" の仕様書を出力してみました。

※Dasktop版に「仕様書出力」の機能は搭載されていません。

仕様書出力

仕様書の出力は、データ加工情報の「一覧」や「設定」画面から出力できます。

Qiita_032-01.jpg

[仕様書出力]をクリックすると、《何を》《どこに》出力するのかを設定する画面が表示されます。

今回は「画像出力:なし」で、「データ加工情報ID:prefectures」の仕様書を出力します。

Qiita_032-02.jpg

※データ加工IDは「,(カンマ)」で区切って複数選択できます。ワイルドカード「*(アスタリスク)」は指定できません。

仕様書の内容

仕様書は、シート別に以下の情報が出力されます。

シート名 内容
表紙 表紙用のシート
システム動作環境設定 システム動作環境設定ファイル(huledenv.conf)の内容
共通リソース 共通リソース情報の内容
レイアウト情報 レイアウト情報の内容
データ加工ID データ加工情報の内容
データ加工ID別にシートを作成
データ加工IDを複数指定した場合は、データ加工IDの昇順で出力

表紙

表紙はシンプルです。

Qiita_032-03.jpg

システム動作環境設定

シート内に設定内容が、タブ別に表形式で出力されています。

Qiita_032-08.jpg

Qiita_032-04.jpg

共通リソース

使用していないので、こんなにシンプルです。

Qiita_032-05.jpg

レイアウト情報

今回は入出力で同じ CSV形式 の ID を使用しているので、こんな出力です。

Qiita_032-09.jpg

Qiita_032-06.jpg

フォーマット形式など、他のレイアウト形式は使用していないので「使用していません」って出力されています。

データ加工ID

データ加工情報の画面で設定する(できる)、以下のすべての項目

  • データ加工
    エリア(入力/条件/出力)別
    設定(入力/条件/出力)別
    マッピング情報
  • 履歴設定
  • オプション

の内容が、順に出力されています。

Qiita_032-10.jpg

Qiita_032-07.jpg

付随情報

今回は「画像出力:なし」で出力したので、No Image になっていますが、「画像出力:あり」で出力すると、仕様書内にデータ加工情報のデザインを示す画像が追加された仕様書を作成できます。

Qiita_032-13.jpg

また、仕様書を出力する場合の注意点 は以下になります。

  • 出力した仕様書は、DataMagicにインポートできません。
    設定の復元を想定して、仕様書出力とセットで管理情報のエキスポートも是非。
    Qiita_032-12.jpg

  • Excelのシート名に表示できる最大文字数の制限で、データ加工IDが31文字を超えると、仕様書の出力が不正になることがあります。

  • Excelのセルに表示できる最大文字数の制限で、仕様書に出力可能な文字数は32767文字までとなります。
    上限を超えた分については仕様書に出力されません。

  • 仕様書に出力されるデータは内部処理でXML形式に変換されます。
    このときに一部の文字がエスケープ文字に変換されるため、出力される文字数が想定より少なくなる場合があります。
    エスケープ文字に変換される文字は以下のとおりです。
    Qiita_032-11.jpg

以上です。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?