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

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

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

You are not logged in.

Announcement

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


#1 2014-10-03 12:58:49

あると
Member

Eventを送信で削除したい

Win7
FM13

ドキュメント内にありますPDFを消したいのですが出来ずに困っています。ファイル名はA.pdfとします。

まず
変数[$FM:Get ( ドキュメントパス ) &"A.pdf"]
Eventを送信[[aevt];[odoc];[$FM]](ファイル)
これで実行しますと、PDFが起動してくるためファイルは見つけているはずです。

次に
変数[$FM:"cmd /c del ¥""&Get ( ドキュメントパス ) &"A.pdf"]
Eventを送信[[aevt];[odoc];[$FM]](計算)
にしたところ、ファイルが見つからないと出ました。

Eventを送信[[aevt];[odoc];"cmd /c del ¥""&Get ( ドキュメントパス ) &"A.pdf"](計算)
Eventを送信[[aevt];[odoc];"cmd /c del ¥""&"/C:/Users/(ユーザー名)/Documents/A.pdf"](計算)
テキストにも打つなど試したのですが、どれもダメでした。
以前、質問したときは出来たはずなのですが、久しぶりにやると出来なくなってしまいました。

回答のほど、よろしくお願いします。

Offline

#2 2014-10-03 14:32:31

Hiro
Member

Re: Eventを送信で削除したい

●変数[$FM:"cmd /c del ¥""&Get ( ドキュメントパス ) &"A.pdf"]
  ↓
・変数[$FM:"cmd /c del "&Get ( ドキュメントパス ) &"A.pdf"]
  or
・変数[$FM:"cmd /c del ¥""&Get ( ドキュメントパス ) &"A.pdf¥""]

Offline

#3 2014-10-03 14:37:51

あると
Member

Re: Eventを送信で削除したい

少し前進しましたが、また止まってしまいました。
WinとMacでの違いによるものでしょうか。

"cmd c/ del c:¥users¥(ユーザー名)¥Documents¥A.pdf"
で消すことが出来ました。
ただし、PC変わるとユーザー名なども変わりますので、ドキュメントパスを取得したいと思っていますが、
その場合は、"/"が使われるため、"¥"へ置換したいのですが、上手く出来ません。
Substitute関数を使って置換しようとしたところ、 Substitute ( Get ( ドキュメントパス ) ; "/" ; "¥"" )で無いと末がダブル""で無いと通りません。
また、実行しますと"/"が抜けた状態で変数が生成されるため、Event送信ができずに困っています。

よろしくお願いします。

Offline

#4 2014-10-03 15:10:41

Moz
Member

Re: Eventを送信で削除したい

Offline

#5 2014-10-03 19:32:38

とおりすがり
Guest

Re: Eventを送信で削除したい

最終的には、手段を問わずにスクリプトでファイルが消せたらいいんですよね?
対象レコードが0レコードの状態でファイルを、エクスポートしてみてください。

$path = Get ( ドキュメントパス ) & "A.pdf"
としてエクスポートパスに $path を指定すればいいでしょう。
ファイル名のA.pdfのところは、消したいファイル名にしてください。

#6 2014-10-04 14:20:21

旅人
Member

Re: Eventを送信で削除したい

"A.pdf"をどこに付けるかに依りそうだけど
変数内容をQuote ( Replace(  Substitute ( Get ( ドキュメントパス ) ; "/" ;"¥¥" )&"A.pdf" ; 1 ; 1 ; "" ) )
Event送信を "cmd /c del " &$FM
で動くみたいですけど。

Offline

#7 2014-10-06 17:30:27

あると
Member

Re: Eventを送信で削除したい

みなさん、ありがとうございます。
まだ、出来ていません。

とおりすがりさんの方法だと
変数[$path ; Get ( ドキュメントパス ) & "A.pdf"]
レコードのエクスポート[ダイアログなし;$path]
という形でしょうか?
フィールド内容のエクスポート、出力ファイルの指定で$pathかとも思ったのですが、レコード内に取り込んだPDFではなく、フォルダに置かれているファイルを消したいというものなので、違うのかな。



旅人さんの方法では
変数[Quote ( Replace(  Substitute ( Get ( ドキュメントパス ) ; "/" ;"¥¥" )&"A.pdf" ; 1 ; 1 ; "" ) )]
結果が、"¥C:¥¥Users¥¥ユーザ名¥¥Documents¥¥A.pdf"となりファイルが見つからないと出てしまいました。

結果が、"C:\Users\ユーザ名\Documents\A.pdf"であれば、該当ファイルへ辿り着くのですが、\を1つ減らした
変数[Quote ( Replace(  Substitute ( Get ( ドキュメントパス ) ; "/" ;"\" )&"A.pdf" ; 1 ; 1 ; "" ) )]としたいのですが、上記のように出来ませんでした。

目標としては、ドキュメントフォルダ下の1つフォルダにあるPDFファイルを削除することです。ここでは、Imageフォルダ内のA.pdf。

用途が限られる成功だと
変数を直打ちでなら、消せるのですが取得関数で出来ないのが悔しいです。変数を固定すると、他のPCで使えませんのでダメですね。
変数["C:\Users\ユーザ名\Documents\Image\A.pdf"]
Eventを送信[[aevt];[odoc]"cmd /c del  "& $$Scan](計算)

よろしくお願いします。

Offline

#8 2014-10-06 18:24:01

旅人
Member

Re: Eventを送信で削除したい

私はWindowsは全く分かりません。しかもXPしか使っていない・・・
そのXPでマイドキュメントにA.pdfを入れて、このサンプルの
消したいファイル名にAと入れてスクリプトを動かすと消えま
した。

http://pupld.net/21/141006/jj6qm7aip0/index.cgi
PDF消す.fmp12

Offline

#9 2014-10-06 18:44:46

旅人
Member

Re: Eventを送信で削除したい

とおりすがりさんの方法でもできますよ。
レコードをPDFとして保存と思うけど、その変数を指定して対象レコードが0の状態で
スクリプトを動かします。

Offline

#10 2014-10-06 18:56:26

旅人
Member

Re: Eventを送信で削除したい

>対象レコードが0の状態で
よく見たら「空白レコードを保存」というオプションがあった。

Offline

#11 2014-10-07 11:05:25

tim
Guest

Re: Eventを送信で削除したい

旅人さん、
「空白レコードを保存」ではPDFが作成されるのでファイルの削除にはなりません。
「レコードをPDFとして保存」だと、エラー3になって対象レコード0では実行できません。
「ファイルを、エクスポート」と書いてるのは「レコードのエクスポートでファイルを作成する」の意味。ファイル名を削除したいのに合わせれば、ファイル形式は何でもOKのはず。

あるとさん、
旅人さんのでいいんですけど、ここの掲示板ではWindowsの円マークがバックスラッシュで表示されるので、円に見えてる文字をコピペしても動きません。FM上で打ち直してみて。

#12 2014-10-07 11:22:56

旅人
Member

Re: Eventを送信で削除したい

>「空白レコードを保存」ではPDFが作成されるのでファイルの削除にはなりません。
>・・・中略・・・・
>ファイル形式は何でもOKのはず。

その通りでした。失礼しました。

Offline

#13 2014-10-08 11:15:54

あると
Member

Re: Eventを送信で削除したい

みなさま、ありがとうございます。
試してみたいと思います。報告は来週になるかもしれません。

Offline

#14 2014-10-14 18:37:51

あると
Member

Re: Eventを送信で削除したい

みなさま、ありがとうございました。
ファイルの削除できました。これで次へ進めます。感謝

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.020 seconds, 7 queries executed - Memory usage: 554.95 KiB (Peak: 575.85 KiB) ]