• ベストアンサー

ファイルメーカー「出力ファイルの指定」についての質問

どなたか知っていたら教えてください。 環境:Filemaker pro 7.0 ファイルメーカーの「出力ファイルの指定」でファイル名にレコード名を埋め込み、以下のようなファイル名の連番書き出しは可能でしょうか?というのもボタンで自動的に特定フィールドをエクスポートしたいんです。 同一名 & 数字(データベースのレコード、連番) & 拡張子 例  sample000.text ... sample001...010.txtと続く やはり、同じ名前で書き出して1ファイルごとに書き換えるしかないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • zenjee
  • ベストアンサー率47% (50/106)
回答No.1

>出力ファイルの指定」でファイル名にレコード名を埋め込み…………ボタンで自動的に特定フィールドをエクスポートしたいんです。  レコードのエクスポートで外部ファイルに出力する作業を、スクリプト&ボタンで自動的に行えるよう定義したい。  というように受け取れますが、それでいいでしょうか。  であればスクリプト定義する前に、まず検索モードにして「データベースのレコード、連番」が格納されているフィールドを選択し「sample001...sample010」と入力して検索してみてください。 注:「...」はピリオド3個で、指定した範囲内の値を検索する演算子です。  これで当該範囲内の一連番号のレコードだけを検索されることが確認できれば、あとはその手順をスクリプト定義の中で編集するだけだと思いますが………。  なお、スクリプト定義の編集中、特定レコードの選択部分は、スクリプトの一時停止、続行の中で指定することになりますね。  ご質問の趣旨が前記と違うようであればその旨補足説明ください。

punats
質問者

補足

まずは、ご回答まことにありがとうございます。お礼遅くなりましたこと申し訳ございません。 >レコードのエクスポートで外部ファイルに出力する作業を、スクリプト&ボタンで自動的に行えるよう定義したい。というように受け取れますが、それでいいでしょうか。 この部分に関しては、間違いではないのですが、さらにわがままをいわせていただき、出力するファイル名も自動的につけた形でエクスポートしたかったのです。 なので、「ボタン指定>出力ファイルの指定>出力ファイルパス一覧」のところで「file:../../volume/test/sample***.txt」という風に指定する部分で「***」(filenoというデータベース)を指示する「式」みたいなものがあれば300あるレコードを一気に書き出せるのではないか?と考えました。たんにめんどくさがりなだけかもしれません… >これで当該範囲内の~~ この部分に関しては理解できました。ちなみに検索可能で一連の流れをスクリプトにすることもできました。 >なお、スクリプト定義の編集中、~~ の文脈から理解するに、この方法ですとファイル名をその都度入力するしかないと考えてよろしいのでしょうか? お手数をお掛けして申し訳ありません。 もう少々おつき合いいただけましたら幸いです。よろしくお願いいたします。

その他の回答 (1)

  • zenjee
  • ベストアンサー率47% (50/106)
回答No.2

 最初にお断りしておきますが、私の場合、FM7は別のPCに入ってはいるものの、仕事依頼者の関係で殆どFM6しか使ってなかったので、FM7を開かないまま回答し、多少質問の取り違えが生じたようです。  何が違うかというと、スクリプト定義(FM7ではScriptMaker)中、レコードのエクスポートを選択したときに現れる出力ファイルの指定で、FM7ではファイルパス一覧により複数ファイルを指定できるようになっておりますが、FM6ではそれがなく、ファイルは1個しか指定できません。  今FM7を開いたところ、出力ファイルパス一覧で外部ファイルの複数指定ができることをはじめて知りましたが、実際に作業を行い、どういう結果になるかまだテストしてないので、現段階では適切な回答が出来ません。  ただ、私の頭ではどうしてもご質問の意味が理解できないのですが、そもそも出力ファイルというのは多数存在するのでしょうか。  それと300あるレコードと外部ファイルとの関係はどうなっているのでしょうか。 >「***」(filenoというデータベース)を指示する「式」みたいなものがあれば300あるレコードを一気に書き出せる……。  とありますが、300のレコードの内容(?又は連番)によってエクスポートする外部ファイルの種類が違ってくるということでしょうか。  もしそうだとすると、スクリプトの一時停止/続行の中で一覧の中から外部ファイルを選択するか、又は(FM7でも6でも同じですが)サブスクリプトを作り、制御スクリプトの中で外部ファイル名、レコード区分(範囲)等の条件をIF関数で指定してサブスクリプトを選択実行するとかなどの方法はあるかも知れません。  この「かも知れません。」というのは、他の制御スクリプトは使ったことはありますが、現実に複数の外部ファイルの区分に応じてレコードも区分し、それぞれをエクスポートするという作業を実際にやったことがないからです。  以上全く無責任な回答で申し訳ありませんが、質問の意味が今ひとつ理解できないことと、経験不足で適切な回答が出来ないことをお許しください。   

punats
質問者

補足

ご回答ありがとうございます。しかも、わざわざお手間を頂いてしまい申し訳ございません。 実際にやりたいことは、詩をDBで管理しています。そのなかには、タイトル、詩本文とあり、またベースとなるHTMLを分割し、それらと組み合わせ、一つのフィールドに合体することにより、完全なHTMLソースとなります。そこで、File No名をつけたHTMLソースをTextにて書き出すことがしたかったのです。 なので、結果、種類はTEXTファイルのみですが、拡張子を変え、300のHTMLファイルができあがるというところで、ひとつひとつファイル名を記述するのが面倒だったので書き出すときに自動でできれば…と思ったのです。 今、先日までのを読み返し私の説明が下手で伝わりきる訳がなく本当に申し訳ないです。

関連するQ&A