初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2022-11-08 11:41:34

pacnicgorira
Guest

サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

FileMaker Server for linux でホストされているSample.fmp12において、
同じフィールド構成のテーブル1とテーブル2があります。

スクリプトで、
「サーバー上のスクリプト実行」のスクリプトステップを利用して、
「レコードのインポート」スクリプトステップを使ってテーブル1→テーブル2へレコードをインポートしようとしました。

しかし、ローカルでの実行ではうまくいっているのですが、サーバー上のスクリプト実行ではうまくいきません。

「レコードのインポート」の公式ドキュメントを確認しましたが、
サーバー上でこのスクリプトステップを実行する場合、ドキュメントフォルダ、テンポラリフォルダにあるファイルしか参照できないとありますので、
DatabaseフォルダにホストされているSample.fmp12を参照できないのだと思われますが、

なにかうまいこと同一ファイルのテーブルのレコードをインポートする方法ありますでしょうか?
(対象のテーブルのレコードをループしてフィールド設定していくのは、件数が遅いとパフォーマンスが遅くなるため)

#2 2022-11-08 13:30:27

Moz
Member

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

スケジュールおよび[サーバー上のスクリプト実行]では FileMaker ファイルからのインポートはサポートされません。

テーブル間でインポートを行いたい場合、
レコードをcsvやmerge形式などでドキュメントフォルダ・テンポラリフォルダにエクスポートして、そのファイルをインポートする必要があります。

Offline

#3 2022-11-08 13:48:41

Shin
Member

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

> 対象のテーブルのレコードをループしてフィールド設定していくのは、件数が遅いとパフォーマンスが遅くなるため
キーフィールドをフィールド設定し、それ以外のフィールドはルックアップで処理すると、まあまあの速度は出ますよ。

Offline

#4 2022-11-08 15:13:19

himadanee
Guest

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

サーバ上でODBC共有にすれば直接インポートできたけど
今のバージョンでもLinuxでもできるかどうかは知りません。

#5 2022-11-08 18:44:08

pacnicgorira
Guest

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

Moz wrote:

スケジュールおよび[サーバー上のスクリプト実行]では FileMaker ファイルからのインポートはサポートされません。

テーブル間でインポートを行いたい場合、
レコードをcsvやmerge形式などでドキュメントフォルダ・テンポラリフォルダにエクスポートして、そのファイルをインポートする必要があります。

やっぱそうですよね。ありがとうございます。

#6 2022-11-08 18:45:17

pacnicgorira
Guest

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

Shin wrote:

> 対象のテーブルのレコードをループしてフィールド設定していくのは、件数が遅いとパフォーマンスが遅くなるため
キーフィールドをフィールド設定し、それ以外のフィールドはルックアップで処理すると、まあまあの速度は出ますよ。

ルックアップは嫌いだったので盲点でした!
情報ありがとうございます!

#7 2022-11-08 18:46:43

pateriGorira
Guest

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

himadanee wrote:

サーバ上でODBC共有にすれば直接インポートできたけど
今のバージョンでもLinuxでもできるかどうかは知りません。

ODBCも盲点でした。
確かにLinuxじゃできるか不安なんで見送らせていただきます。

#8 2022-11-09 08:51:00

himadanee
Guest

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

そういえば、「カスタム Web 公開 with XML」でも直接インポートができそうだけど、こっちはやってみた記憶がない...XML自体はユーザが少なくて廃れそうな感じですね。
https://support.claris.com/s/answerview … =000035714
の下の方、「その他の必要条件」に、PHPはLinuxとCloudでサポートしないと明記されてるが、XMLは項目自体がない...

一方DataAPIはJSONですが、JSONのインポートはまだ全くサポートがないですね。

#9 2022-11-09 09:23:04

pateriGorira
Guest

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

himadanee wrote:

そういえば、「カスタム Web 公開 with XML」でも直接インポートができそうだけど、こっちはやってみた記憶がない...XML自体はユーザが少なくて廃れそうな感じですね。
https://support.claris.com/s/answerview … =000035714
の下の方、「その他の必要条件」に、PHPはLinuxとCloudでサポートしないと明記されてるが、XMLは項目自体がない...

一方DataAPIはJSONですが、JSONのインポートはまだ全くサポートがないですね。

情報ありがとうございます。
XMLは知らなかったですが、面白そうですね。

JSONはできてくれると嬉しいですね。現状はスクリプトでコネコネするしかなさそうですが。

#10 2022-11-09 10:06:08

Shin
Member

Re: サーバーサイドスクリプトで同一ファイル間で、テーブル1からテーブル2へレコードをインポートしたい

XML 自体は、構造がしっかりしているのでいいんですが、取扱いが面倒で.... 従来からのデータ移行には多く使われているのですが、新たに採用するところは少ないのでは。一度作ってしまえば楽なので、COBOL のようにずっと使われる型式だと思います。
教材もたくさん見つかるので、勉強は簡単ですが、基幹システム以外で将来有用かどうかはわかりません。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 565.27 KiB (Peak: 579.83 KiB) ]