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

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

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

You are not logged in.

Announcement

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


#1 2014-06-02 16:19:22

見習い
Member

ファイルメーカーサーバーを使った定期的インポート

お世話になっております。
Win7 FM11adv
Winserver2008R2 FMserver11

ファイルメーカーサーバーでファイルメーカースクリプトのスケジュールを組んでいます。
毎日一回インポートを行います。
同ファイルの別テーブルからのインポートです。
クライアントから見れば共有ファイルのインポートになるのでそのまま組みました。
サーバー上ではエラーが出てうまくできませんでした。

ファイルメーカーヘルプの引用
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
FileMaker Server スケジュールスクリプトで [レコードのインポート] スクリプトステップまたは [レコードのエクスポート] スクリプトステップを使用する場合は、次のことに注意してください。   
指定されたファイルはすべて FileMaker Server ドキュメントフォルダ内、または FileMaker Server ドキュメントフォルダあるいはテンポラリフォルダのいずれかの子フォルダ内にある必要があります。 たとえば、以下はすべて .csv ファイルに対して有効なパスです。
<ocuments>/file.csv
<Temporary Path>/file.csv
<Documents>/Folder1/file.csv
<Temporary Path>/Folder1/Folder2/Folder3/Folder4/file.csv
   
ファイルに対して完全でないパスを指定した場合 (たとえば、
/Library/FileMaker Server/Data/Documents/<0 以上のディレクトリ>/<filename> ) は、テンポラリパスと同じであると評価されます。
   
「..」を含むパスはすべて無効とみなされます。
   
FileMaker Pro の場合、FileMaker Pro から実行されるスクリプトに絶対パスが指定されていない場合、パスはスクリプトが実行されたデータベースの場所と同じであると想定されます。 たとえば、[レコードのエクスポート] スクリプトステップを含むスクリプトがパス名 file:/export.tab によって実行され、スクリプトを実行するファイルが/MyFiles/Library/Books.fp7 の場合、エクスポートされたファイルの名前は /MyFiles/Library/export.tab となります。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------

このヘルプを見てもわからなかったのでサポートに電話して聞いたらファイルメーカーファイルをファイルメーカーサーバーのスケジュールでインポートすることはできないといわれました。

そんなことないはずです。

スクリプトのインポート元の指定で共有ファイルを指定せず
C:\Program Files (x86)\FileMaker\FileMaker Server\Data\Databases\○○○○○.fp7
という運用しているファイルの直接のパスを指定すればできるんでしょうか。

あとその場合で、できるのにできない場合はサーバーにファイルメーカープロをインストールしていないから。という可能性はありますか?

サーバーにクライアントソフトもインストールするのはあまり良くないと言われたのでインストールしていませんでした。


よろしくお願い致します。

Last edited by 見習い (2014-06-02 16:19:59)

Offline

#2 2014-06-02 16:27:38

tim
Guest

Re: ファイルメーカーサーバーを使った定期的インポート

実際できませんよ。
「同一ファイル」という指定ができないんで、他のファイルの場合と変わりません。

一旦「特定のフォルダ」にエクスポートして、それをインポートで代用。

#3 2014-06-02 16:32:30

Shin
Member

Re: ファイルメーカーサーバーを使った定期的インポート

一応、そのヘルプの中に書いてあるのですが、非常にわかりづらい表現です。
FMSでインポートできるのは、FileMaker Server ドキュメントフォルダ内、または FileMaker Server ドキュメントフォルダあるいはテンポラリフォルダのいずれかの子フォルダ内のみです。
> たとえば、以下はすべて .csv ファイルに対して有効なパスです。
この意味は、テキストファイルのみが有効、という意味らしいです。つまり、テキストファイル以外は、インポート出来ません。

FMSとFMを同居させた場合、万が一、サーバーで共有しているファイルを開いてしまう可能性があります。その場合、ファイルを壊しますので、インストールすることは問題ないでしょうが、FMSの稼働中にFMを立ち上げることは、避けましょう。
どうしてもその作業が必要でしたら、他の端末で作業されるといいでしょう。

Offline

#4 2014-06-02 16:41:02

見習い
Member

Re: ファイルメーカーサーバーを使った定期的インポート

tim wrote:

実際できませんよ。
「同一ファイル」という指定ができないんで、他のファイルの場合と変わりません。

一旦「特定のフォルダ」にエクスポートして、それをインポートで代用。


ありがとうございます。
特定のフォルダはサーバードキュメントフォルダが無難なところでしょうか・・・・

Offline

#5 2014-06-02 16:43:04

見習い
Member

Re: ファイルメーカーサーバーを使った定期的インポート

Shin wrote:

一応、そのヘルプの中に書いてあるのですが、非常にわかりづらい表現です。
FMSでインポートできるのは、FileMaker Server ドキュメントフォルダ内、または FileMaker Server ドキュメントフォルダあるいはテンポラリフォルダのいずれかの子フォルダ内のみです。
> たとえば、以下はすべて .csv ファイルに対して有効なパスです。
この意味は、テキストファイルのみが有効、という意味らしいです。つまり、テキストファイル以外は、インポート出来ません。

FMSとFMを同居させた場合、万が一、サーバーで共有しているファイルを開いてしまう可能性があります。その場合、ファイルを壊しますので、インストールすることは問題ないでしょうが、FMSの稼働中にFMを立ち上げることは、避けましょう。
どうしてもその作業が必要でしたら、他の端末で作業されるといいでしょう。

ありがとうございます。

CSVでエクスポートをしたことがありません。
定期インポートが出来れば何でもいいので試したいのですが
今やってみたら日本語の氏名が入っているフィールドがCSV上でハテナになっていました。
日本語のエクスポートはできないのでしょうか・・・

Offline

#6 2014-06-02 16:50:57

見習い
Member

Re: ファイルメーカーサーバーを使った定期的インポート

見習い wrote:
Shin wrote:

一応、そのヘルプの中に書いてあるのですが、非常にわかりづらい表現です。
FMSでインポートできるのは、FileMaker Server ドキュメントフォルダ内、または FileMaker Server ドキュメントフォルダあるいはテンポラリフォルダのいずれかの子フォルダ内のみです。
> たとえば、以下はすべて .csv ファイルに対して有効なパスです。
この意味は、テキストファイルのみが有効、という意味らしいです。つまり、テキストファイル以外は、インポート出来ません。

FMSとFMを同居させた場合、万が一、サーバーで共有しているファイルを開いてしまう可能性があります。その場合、ファイルを壊しますので、インストールすることは問題ないでしょうが、FMSの稼働中にFMを立ち上げることは、避けましょう。
どうしてもその作業が必要でしたら、他の端末で作業されるといいでしょう。

ありがとうございます。

CSVでエクスポートをしたことがありません。
定期インポートが出来れば何でもいいので試したいのですが
今やってみたら日本語の氏名が入っているフィールドがCSV上でハテナになっていました。
日本語のエクスポートはできないのでしょうか・・・

すいません書式設定を変更したら日本語になりました。
ただ先頭の行をフィールド名にするとかはないようですね。

Offline

#7 2014-06-02 17:09:22

Moz
Member

Re: ファイルメーカーサーバーを使った定期的インポート

サーバーサイドスクリプトでもマージ形式で書き出せば1行目がフィールド名になりますよ。
データベース間でのインポートをスケジュールで行う場合の一般的な方法では?

Offline

#8 2014-06-02 17:21:14

saver
Guest

Re: ファイルメーカーサーバーを使った定期的インポート

マージ形式だとShiftJISしか選択できないので、使ってる文字によっては非常に困る。

#9 2014-06-02 17:24:46

Moz
Member

Re: ファイルメーカーサーバーを使った定期的インポート

この質問のケースではマージでエクスポートして照合名順でインポートでいけるパターンじゃないですかね?

Offline

#10 2014-06-02 17:49:33

見習い
Member

Re: ファイルメーカーサーバーを使った定期的インポート

マージ形式というのがよく分からない状態ですが
ファイルパスを指定してエクスポートとインポートの順番まったく同じにしておいて
サーバースケジュールを1分後にして試してみたらできました。

解決してしまって欲張りですがマージ形式とはなんでしょうか。
エクスポートする際にそのような指定箇所は無かったように思えるのですが・・・

Offline

#11 2014-06-02 18:03:15

Moz
Member

Re: ファイルメーカーサーバーを使った定期的インポート

1行目にエクスポートするフィールド名が入った CSV のようなものです。
照合名順でインポートすれば元のテーブルとインポート先のテーブルで同じ名前のフィールドだけインポートできたりと便利です。

[レコードのエクスポート]スクリプトステップ、[出力ファイルの指定...]ボタンを押し、
[出力ファイルの指定]ダイアログの中の[ファイルタイプ]ポップアップメニューで【Merge ファイル (*.mer)】を選択できませんか?

Last edited by Moz (2014-06-02 18:04:29)

Offline

#12 2014-06-02 18:06:50

見習い
Member

Re: ファイルメーカーサーバーを使った定期的インポート

Moz wrote:

1行目にエクスポートするフィールド名が入った CSV のようなものです。
照合名順でインポートすれば元のテーブルとインポート先のテーブルで同じ名前のフィールドだけインポートできたりと便利です。

[レコードのエクスポート]スクリプトステップ、[出力ファイルの指定...]ボタンを押し、
[出力ファイルの指定]ダイアログの中の[ファイルタイプ]ポップアップメニューで【Merge ファイル (*.mer)】を選択できませんか?


ありました!
これはエクスポート、インポートのファイルパスの指定も拡張子を .mer に変更する必要がありますか?

Last edited by 見習い (2014-06-02 18:07:07)

Offline

#13 2014-06-02 18:11:32

Moz
Member

Re: ファイルメーカーサーバーを使った定期的インポート

Merge で出力して、インポートでも Merge を指定すれば拡張子は CSV でも大丈夫なようです。

例えば CSV でフィールド名が付いたものが欲しいなどというご要望があった際に、
Merge 形式で拡張子を CSV にして出力するといった使い方をすることもあります。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.012 seconds, 9 queries executed - Memory usage: 555.6 KiB (Peak: 576.14 KiB) ]