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-05-09

はじめに

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

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

上記の 機能・概要一覧 には上がっていないけれど、管理情報をインポート・エクスポートする機能もちゃんと用意されています。

Qiita_038-01.jpg

管理情報のインポート

1.主な使い道

管理情報のインポートの主な使い道は
・大量のデータを一気に登録する
・他の DataMagic で登録した ID を配布する
・壊れたIDをエクスポートした定義情報から復元
でしょうか。

2.やり方

管理情報のインポートのやり方は、管理画面からとコマンドの2つが容易されています。

管理画面

スタートページの[管理情報のインポート]をクリックすると、こんな画面 :arrow_heading_down: が表示されます。

Qiita_038-02.jpg

インポートしたい定義を記述したファイル名を入力し、そのファイルの文字コード(SHIFT-JIS/EUC/UTF-8)と、同一IDが登録済みの場合の動作を選択して実行します。

この時、漢字コード種で選択した文字コードが、ファイルの文字コードと異なる場合は、エラーになります。

Qiita_038-03.jpg

ただし、この世に 完璧なもの存在しない ので、間違えないように注意しましょう!

また、同一IDが登録済みの場合の動作は、エラーがお勧めです。
理由は、エラー以外を選択すると、管理画面からの場合は正常終了して重複するIDの有無が分からないからです。

特に「上書き」は要注意:exclamation:
勿論「このIDを上書き更新するんだ!」って分かっている場合は別ですが、大量データを登録する場合や、定義を複写して手動で記述を編集している場合なんかは、変更漏れ・ミスを想定し、エラーで様子を見るのがお勧めです。

Qiita_038-04.jpg

間違って上書きしたデータ。元に戻せますか :question:

管理情報インポートコマンド(utlediupdt コマンド)

utlediupdt -f filename [-r|-m] [-k {E|S|8}]

-f filename  登録したいエクスポートファイル名(省略不可)
-r|-m 登録済みIDの更新有無(省略可)
省略すると、すでに登録されているIDがあるとエラーになります。
 -r :すでに登録されているIDを更新する
 -m :登録されているIDを更新しない
登録済みIDがあると、警告メッセージが表示されますが、エラーにはなりません。
Qiita_038-05.jpg
-k {E|S|8} エクスポートファイルのコード(省略可)
省略すると、以下の値で処理します。
・Windowsの場合:SHIFT-JIS
ただしWindowsの文字コード(システムロケール)がUTF-8の場合はUTF-8になります。
・UNIXの場合:システム動作環境設定ファイル(huledenv.conf)の「自機種のコード(knjcode)」の値

他にも注意事項がありますので、コマンドを使う際は以下のマニュアルを参照してください。

管理情報のエクスポート

1.主な使い道

管理情報のエクスポートの主な使い道は
・定義のバックアップ
・配布用の定義情報の作成
・大量のレイアウト定義を一括で登録する場合の雛形作成
でしょうか。

2.やり方

管理情報のインポートのやり方は、管理画面からとコマンドの2つが容易されています。

管理画面

スタートページの[管理情報のエクスポート]をクリックすると、こんな画面 :arrow_heading_down: が表示されます。

Qiita_038-06.jpg

エクスポート先のファイル名を入力し、そのファイルの文字コード(SHIFT-JIS/UTF-8)、エクスポートする区分やIDを選択して実行します。

区分には、エクスポートファイルを生成したい管理情報を指定します。
"CSV", "フォーマット", "マルチフォーマット", "階層フォーマット", "XML", "Excel", "DBテーブル", "DB接続", "共通コンポーネント", "データ加工", "ユーザ", "業務グループ", "すべて" から選択します。

  • DataMagic Desktopグレードの場合は、"ユーザ"は表示されません
  • DataMagic Serverグレードの場合は、スーパーユーザでログインした場合のみ "ユーザ", "業務グループ" が表示されます

区分指定をして、全IDをエクスポートしたい場合は、IDに「*」だけ入力します。

区分を"データ加工"にすると、「関連する管理情報もエクスポート」の選択が表示されます。

Qiita_038-07.jpg

一緒にエクスポートしておくと、環境を復旧させるときや、別の DataMagic でインポートする際、関連情報の洩れが無くスムーズに環境構築ができます。

管理情報エクスポートコマンド(utledigen コマンド)

utledigen -f filename
[-i {ed [-R]|csv|fmt|mfmt|hfmt|xml|excel|db|dbc|pon|user|group}]
[-d id[,id2,...]] [-g grpid] [-k {E|S|8}] [-x [-r]] [-m]

  • DataMagic Desktopグレードの場合、"user" は無効
  • DataMagic Serverグレードの場合、スーパーユーザでログインした場合のみ "user", "group" が有効

パラメータの説明が結構多いので、コマンドを使う際は以下のマニュアルを参照してください。

以上です。

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?