みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
スクリプトで自分のファイル内のAテーブルから自分のファイル内のBテーブルにレコードをインポート(丸ごとコピー)したいのですが、自分のファイル名が変わると記憶した前のファイル名を聞いてくるダイアログが出てきてしまいます。
「データファイルから読み取る」や「レコードのインポート」のデータソースの指定のところにGET(ファイル名)やGET(ファイルパス)を指定しても、
ファイル「GET(ファイル名)」が見つからなかったため、処理を完了できません。のエラーになってしまいます。
自分のファイル名が変わっても、ファイルを指定し直さなくてもボタンひとつで常に自分のFMファイル内のテーブルからインポートできる方法はないでしょうか?
Offline
すみません、投稿時にエラーが出ていたため、何度も送信してしまいました。
An error was encountered
Error: Unable to send email. Please contact the forum administrator with the following error message reported by the SMTP server: "535 Incorrect authentication data ".
むだな投稿を削除する方法はありますでしょうか
Offline
"file://" & Get(ファイル名)
を変数に設定して、その変数をデータソースに指定すればいいです。
ただ、
> 自分のファイル内のAテーブルから自分のファイル内のBテーブルにレコードをインポート(丸ごとコピー)
の目的は? 同じテーブルを複製することになりますので、データベースとして薦められる運用ではないです。
Offline
すみません、投稿時にエラーが出ていたため、何度も送信してしまいました。
An error was encountered
Error: Unable to send email. Please contact the forum administrator with the following error message reported by the SMTP server: "535 Incorrect authentication data ".むだな投稿を削除する方法はありますでしょうか
新規トピック投稿時、エラーが出ていたようです。
ご連絡ありがとうございます。
重複した投稿は、削除しておきます。
Offline
アドバイスありがとうございます
変数経由で設定するとなぜかうまくいきました。
不思議ですが、FileMakerはそういうものなのですね
有難うございます。
ちなみに、カスタムダイアログで調べてみるとGet(ファイル名)自体がfile:を含んでいるようで
$a = Get(ファイル名) だけで動きました。
また、
> 自分のファイル内のAテーブルから自分のファイル内のBテーブルにレコードをインポート(丸ごとコピー)
>の目的は? 同じテーブルを複製することになりますので、データベースとして薦められる運用ではないです。
ですが、外から取り込んだ基データTblから、いくつかの分岐した処理の遷移で加工していくので、他の処理でも基データTblから取り込んで加工できるように
基データはFMのTblとして加工せずにとっておきたいからです。
Offline
> 変数経由で設定するとなぜかうまくいきました。
> 不思議ですが、FileMakerはそういうものなのですね
外部データソースの設定部分では、関数を評価しません。ですから、 Get (.. ) などはそのままのテキストとして評価されてしまいます。
ただし、変数だけはその内容として評価する、という動きです。
ファイル名だけでも一応動く(おそらく、file/:: を自動補完)のですが、たまに変な動きになります。
Offline
Get (ファイルパス)ならfile:がつくはずですが、「Get(ファイル名)自体がfile:を含んでいる」ってどういう場合でしょう?
「現在アクティブなファイルの名前を拡張子なしで返します」なので、file:を含んでたらバグだと思いますが。
データソースに直接 Get ( ファイル名 ) やら計算式を書いたと #1 で書いているので、
[変数を設定]に変えたら動くようになったというだけの話じゃないですか?「変数経由にしたら」というのは。
Offline
Get ( ファイル名 ) を変数に設定しておき、その変数(ファイル名だけのはず)を外部データソースに設定すると、file:// が付いているかのように動いてしまうのですよね。
FM が適当に解釈しているのでしょうね。
Offline
すみません、確認したらGet ( ファイル名 ) ではなく、Get (ファイルパス)にしていました。
お騒がせしてすみませんでした。
Offline
なるほど、そうでしたか。
今回の目的では、Get (ファイルパス)の方を使っても特に問題はないかな?
ローカルファイルの場合フルパス指定になる、拡張子がつく
共有ファイルの場合が経路(端末のNIC)が複数ある場合にどうか?問題ないはずだけど??
今のところローカル環境での使用で考えていますが、ネットワークファイルの場合は注意なんですね
いろいろ勉強になりました。
有難うございました。
Offline
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 570.18 KiB (Peak: 586.72 KiB) ]