見出し画像

【Claris FileMaker】レコードのインポートでn行目から読み込みに設定~FM Clipboard Thing使用~

1.やりたいこと


Excelによる「レコードのインポート」
それは最初に設定したのは良いものの、別の人が修正する際に困ったときがあったそうな。

『データを3行目から取込に変更したいけど、そのExcelファイルを持ってない』
(つまりExcelの2行目が列タイトル=フィールド名として使用)

レコードのインポート設定

元のファイルを貰ったり、適当に作ったExcelで再設定すれば良い気もするけど。
ここではExcelも使わない、別の修正方法をご紹介。

【FM Clipboard Thing】というFileMakerのお供ツールを使えば、
一見スクリプトでは見えない設定の『裏側』(XML)を変更してセットが可能になります。
しかも国産で期限なしの無料版ありという親切さ!
(買い切りなので、有料版も安いです)
開発者はtomidaさんです。(@qbxxdp)さん / X (twitter.com)

2-1.【FM Clipboard Thing】とは

FileMakerのクリップボードXMLを取得して編集してクリップボードへ戻す
(公式サイトより)

つまり
・複数フィールドのTO(テーブルオカレンス)を一括で変更する
・ファイル内の全スクリプトをコピー&取得し、目的のスクリプトがどこで呼ばれているのかを探す
・複数オブジェクトの同じ計算式を、全て変更する

なんて時に、とても便利なのです。
FileMaker自体にこれらの機能はありませんから…。

2-2.【FM Clipboard Thing】のインストール

まずはダウンロードします。
BOOTHまたはSUZURIどちらでもOK

Windowsはmsiファイル、Macはdmgファイルでのインストールとなります。

■Windows
zipをすべて展開し、msiを起動します。

msiを起動時、詳細情報→実行でインストール

■Macのインストール方法はこちら
https://fm-aid.com/tools/?id=2E6AF019-87C5-B543-8FC9-9B008612631E

※公式マニュアルはこちら
https://fm-aid.com/tools/?id=916DB5EF-20B4-7B4E-AAF9-CBC5FB275E11

2-3.【FM Clipboard Thing】使い方

FM Clipboard Thing 画面。↑は有料版だが無料版もほぼ同じ

メインは1~4です。

----- よく使う機能 -----
1.「Get Clipboard」ボタン…FileMakerからコピーした後、このボタンを押しましょう。FileMakerのクリップボード内容(XML形式)を取得します。
2.「Set Clipboard」ボタン…編集後、このボタンを押してクリップボードへセットし、FileMakerに貼り付けます。
3.編集の種類。FM Clipboard Xml Editor - Tools (fm-aid.com)
  XML2:レイアウトオブジェクト
  XMSC:スクリプト
  XMSS:スクリプトステップ      など。リンク参照
4.「XMSC」の場合、カーソルのある場所のスクリプト名も表示。さらに
 Ctrl+F:検索コントロールを表示
 Ctrl+H:置換コントロールを表示
----- 外部ファイルに保存・読み込み -----
5.「Save」ボタン…表示内容をJSON形式で保存
6.Saveした保存先のフォルダやファイルを表示。無料版は10まで。
ボタンは左から
 「フォルダ選択」ボタン…保存先のフォルダを選択
 「エクスプローラー」ボタン…保存先をエクスプローラーで開く
 「更新」ボタン…保存先の内容を更新
 「<(下向き) >(上向き)」ボタン…階層の折りたたみ・展開
----- その他 -----
7.質問フォーラムや開発者のX(旧Twitter)へ
8. 6.9. を隠す/表示する を切り替える
9. about…マニュアルへのリンクや開発環境

3.レコードのインポートを編集する

では、(Excelから)レコードのインポートのスクリプトステップを3行目のデータから読み込むように変更してみます。
スクリプトの4行目「レコードへインポート」をコピーし、
FM Clipboard Thingの「Get Clipboard」ボタンを押します。
ちなみに変更前は、データを1行目から取込みます。
つまりフィールド名とする行がないので、FieldNameRowが-1に設定されていますね。

データを2行目から(フィールド名が1行目)の場合:FieldNameRow="0"
データを3行目から(フィールド名が2行目)の場合:FieldNameRow="1"

フィールド名行番号-1として設定されているようです。
ってことで、FieldNameRowを1に変更して「Set Clipboard」ボタンを押し
スクリプトに貼り付けます。前のステップはコメント化しておきます。

レコードのインポートのダイアログを「オン」にして、テストしてみます。

レコードのインポート画面

キター!3番目のデータが最初に表示されていました。
ちなみに2番目のデータもちゃんと「フィールド名として使用」になっていました。

4.XMLから修正できて便利

FileMakerで開発する私にとって、このツールは必須級です。
ちなみにインストール済みであれば、今回の修正は10秒で完了!
コピーして変更してスクリプトに貼り付けるだけ。

他にも、たとえばお客様のプリンター設定に合わせたまま印刷設定を修正なんて出来たりするかもしれませんね。

この記事が気に入ったらサポートをしてみませんか?