FileMakerで「1行目にフィールド名を入れてCSVエクスポート」する方法

 FileMakerで「1行目にフィールド名を入れてCSVエクスポート」する方法

AhmadArdity / Pixabay

CSVエクスポートすると1行目からいきなりデータレコードになるのはFileMakerの仕様。

しかしデータ受け手側プログラムの都合や可読性向上のため1行目にはフィールド名を入れたいというケースは多々あり、FileMaker側でこのあたりの調整ができると便利。

FileMakerでエクスポートするCSVデータの1行目にフィールド名を入れる方法をいくつかメモ。

FileMakerでフィールド名含めてCSVエクスポートする方法

1.CSVではなくMarge形式で書き出す

Marge形式はフィールド名を1行名のデータとして書き出すエクスポート形式。

シンプルに「項目名付きのCSVデータを書き出したい」ならこの方法を取ることが多いがフィールド名がそのまま1行目の項目名になってしまう点がネック。受け手側プログラムの仕様で項目名が決められているならこれでは対応できない。

項目名がFileMakerで使えない文字だったり、すでに使用しているフィールド名だったりするとこのやり方は使えない。

2.別テーブルにインポートしてからエクスポートする

手間はかかるが柔軟なやり方。

FileMakerにエクスポート専用のテーブルを作り、毎回そのテーブルに対して「全レコード削除→エクスポートするデータ登録」をしてからCSVエクスポートする方法。

1行目の作り方

1行目の項目名は

  1. スクリプトで入力する
  2. 削除せず使いまわす

など。

スクリプトで入力する場合は「フィールドAにXXとフィールド設定」をフィールド数分だけ繰り返すことになる。1行目のデータをスクリプトに直書きするのは美しくないうえメンテナンス性も落ちる。

削除せず使いまわすなら、項目名である1行目は対象外にしてから対象レコードの削除を行うようにする。スクリプトで行うなら特に難しくない操作で、メンテナンスも楽。デメリットは間違ってそのレコードを消したときに再入力が面倒なことぐらいかな。

メリット

「別テーブルにインポートしてからエクスポートする」方法のメリット

  • 項目名が2行以上になっても対応できる
  • データ形式が違っていても問題ない
  • 項目名を自由に決めることができる

項目名が2行以上必要なケースは多くははないが、無くもない。

たとえば通販の後払いサービス「NP後払い」の注文情報CSV。項目名が2行ありその後に実データを入力する仕様だった。銀行関係のシステムでも複数行の項目が必要だったものも存在した。

データ形式、とはテキストや数字といった形式のこと。エクスポート用のテーブルはすべてテキスト形式のフィールドにしておけばよいので数字フィールドにテキストの項目名が入らなくて困る、ということはない。

項目名も自由に決められる。フィールド名に縛られることは無い。すでにシステムで使っているフィールド名であってもFileMakerのフィールド名としては使えない文字であっても問題なし。

手間はかかりますが汎用性が高い方法なのでおすすめ。

 

QG

たまにアウトプット中。SNSはほぼ放置。誤字脱字・お問い合せがあればこちらからサイト説明

Leave a Reply

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください