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

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

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

You are not logged in.

Announcement

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


#1 2018-01-16 18:01:02

いるか
Member

FileMakerServerからbatファイルを書き出して実行する

Win7 / FMS13 (近いうちにWindowsServer / FMS16 にのせかえ予定)です。

node.jsで動くhoge.jsと、動作に必要なファイル一式がC:\hogeフォルダに入っていて、
FileMaker内の1つのフィールドにあるURL達を引数にしてバッチを実行したいです。

■URLフィールドの中身
http://hoge/hogehoge.html http://fugafuga/fuga.htm

■実行したいbatファイルの中身
jsがあるフォルダに移動
pushd C:\hoge
js指定とオプションと引数
node.exe src/hoge.js --urls "http://hoge/hogehoge.html http://fugafuga/fuga.htm"
フォルダの散らかり&重複実行阻止のため実行済みのbatファイルを消す
Del /F "%~dp0%~nx0"

まず、フィールド内に上記コードをすべて再現してFMSからbatファイルとしてエクスポート、
別でたたく専用のbatファイルを用意してWindowsのタスクスケジューラーでたたいていく方法に挑みましたが、
csv、TAB区切り、margeなどどれも改行コードが文字になってしまいbatとして実行できるものがエクスポートできませんでした。

引数のためのフィールドは1フィールド、エクスポートするレコードは1レコード毎(1レコード1batファイル)です。

似たようなことを良い方法でやっていらっしゃる方はいませんでしょうか。
C:\hogeの中身をドキュメントパスに置くことは可能です。

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

Offline

#2 2018-01-16 20:00:13

wader
Member

Re: FileMakerServerからbatファイルを書き出して実行する

近いうち、ならFM16にしてから作ったほうがいいでしょう。どうせ作り直しになるので。
追加されたテキスト関数で簡単に文字コード/改行コード指定したテキストファイルを生成できます。

Offline

#3 2018-01-17 00:21:59

qb_dp
Member

Re: FileMakerServerからbatファイルを書き出して実行する

FileMaker Server では、「スクリプト:フィールド内容のエクスポート」が使えないので、「スクリプト:レコードのエクスポート」を使うしかありません。
面倒ですが、一つのバッチファイルの内容を 1行づつ1レコードに分割して「レコードのエクスポート」を行えば改行の問題が解決され実行できるbatファイルを育成出来ます。

別の方法では、以下のアプリケーションを使えば、node.js を「スクリプト:URL から挿入」で実行でき、引数渡し、戻り値の取得も行えます。
サーバーで実行するには、Windows のタスクスケジューラで「ProcessMakerTL.exe」をコンピューターの起動時に実行するようにしておけば良いです。
ProcessMakerTL : https://sites.google.com/site/processmakertl/

また、BaseElements Plugin の BE_WriteTextToFile を使えば、「スクリプト:フィールド内容のエクスポート」と同じような事が出来ます。
検証は、していませんが、おそらくFileMaker Server でも行えます。
BE_WriteTextToFile ? BaseElements Plugin Help Centre :
https://baseelementsplugin.zendesk.com/ … TextToFile

また、未検証ですが、BE_ExecuteSystemCommand で node.js を実行できそうに思います。
BE_ExecuteSystemCommand ? BaseElements Plugin Help Centre :
https://baseelementsplugin.zendesk.com/ … temCommand

Offline

#4 2018-02-06 11:00:23

いるか
Member

Re: FileMakerServerからbatファイルを書き出して実行する

回答ありがとうございます。

>qb_dpさん
上手くいきました。
移行の件もあるので、一旦「1行づつ1レコード~」の方式でbat生成、それを外部バッチからタスクスケジューラでたたく形にしたところ問題なく実行・削除ができました。ありがとうございます!

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 10 queries executed - Memory usage: 554.2 KiB (Peak: 564.56 KiB) ]