ファイルメーカーで出力したCSVファイルの問題点
ファイルメーカーのフィールド内で改行をする場合、「¶」を使います。
他からテキストをコピーしフィールドに張り付けした場合も、改行は「¶」になります。
出力したCSVファイルをWEBサービスや、楽天市場やヤフーショッピングなどと連携する場合
この¶(段落記号)による改行で、正しく読み込まれない場合があります。
実はファイルメーカーの機能のみでCSVファイルの文字コードを変換することが可能です。
多少強引な面もありますが、手順を記事にしてみました。
CSVファイルを読み込むテーブルを作成
まず読み込むためのテーブルを用意します。
用意するフィールドは2つで、「行データ」と「行集計」と「文字コード変換」フィールドです。
「行集計」フィールドは、タイプを集計にし集計方法を一覧にします。

また「文字コード変換」フィールドは、タイプをオブジェクトに設定しグローバル格納としています。

CSVファイルを読み込む処理を作成
作成したテーブルをインポート先に指定して、出力したCSVファイルをタブ形式で「行データ」フィールドに読み込みます。
このときフィールドの区切り文字を、CSVファイルに含まれる可能性が低い文字に設定します。
今回は、適当に「й」を設定しました。

読み込んだ内容の文字コードを変換
文字コードを変換するには、TextEncode関数を使用します。
スクリプトでフィールド設定「文字コード変換」フィールドを指定して、下記コードを設定します。
1 |
TextEncode (改行変換::行集計; "shift_jis"; 4) |
行フィールドに取り込まれた値は、行集計で一覧になっています。
このフィールドを利用して、「文字コード変換」オブジェクトフィールドに書き出します。
文字コード変換された値を出力する
スクリプトのフィールド内容のエクスポートを使い、文字コード変換フィールドを出力します。
簡単なサンプルを作成
CSVファイルを出力し、改行コードを変換した内容を出力するサンプルを作成しました。
CSV出力ボタンをクリックするとtest.csvファイルを出力し、改行変換処理をした後に変換後test.csvを出力します。