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

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

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

You are not logged in.

Announcement

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


#1 2019-07-08 01:52:13

pt
Guest

AppleScriptを実行について 「#ハンドラはこのクラスのオブジェクトを処理できません。」 と表示が出てしまいます。

質問失礼致します。
現在、在庫管理のデータベースを作成しておりまして、ボタン一つで該当するMacのFinder内にある商品別のフォルダを指定したフォルダ内へフォルダごと移動させたく、スクリプト(AppleScriptを実行)で現在作成しております。
例といたしまして、【商品画像別フォルダ1】を指定したフォルダ内【商品画像メインフォルダB】内へ移動させたく思っております。

商品画像メインフォルダA
ー商品画像別フォルダ1(フォルダ名は商品番号です)(移動元)
  ー画像
  ー画像
ー商品画像別フォルダ2
  ー画像
  ー画像
ー.......

商品画像メインフォルダB
ー(移動先)

ファイルメーカーのレコードは、商品毎に商品番号フィールドでユニークな商品番号を振り分けしております。
商品画像別フォルダのフォルダ名は、商品番号と同じ名前で、その中に画像が入っております。
各商品のレコードでフォルダ移動ボタンを押した場合、その商品の画像フォルダが指定した場所へ移動されるという仕組みを作成したいと考えております。

ボタンの現在のスクリプト手順

変数を設定 $移動前のフォルダのパス ("Macintosh HD:Users: .................... :商品画像メインフォルダA:" &在庫管理::商品番号)
変数を設定 $移動後のフォルダのパス ("Macintosh HD:Users: .................... :商品画像メインフォルダB")
AppleScriptを実行 (計算済みのAppleScript)

ーーーーーー
"set FolderAlias to \"" & $移動前のフォルダのパス & "\"¶
set destFolderAlias to \"" &$移動後のフォルダのパス & "\"¶
tell application \"Finder\"¶
delete FolderAlias¶
end tell"
ーーーーーー

このように計算式を入れておりますが、「#ハンドラはこのクラスのオブジェクトを処理できません。」 (エラー番号-10010 ) とエラー表示が出てしまいます。
AppleScriptを実行 スクリプトステップの(計算済みのAppleScript)ではなく、(AppleScript記述)でフォルダパス等を変数ではなく、すべて直接入力して試すとフォルダ移動が成功しますが、なぜか(計算済みのAppleScript)で上記の記述を指定するとエラーが出ます。
こちら原因がわからず困っております。。
実際にはフォルダの階層はもう少し複雑で、3台のPCで動かすために移動元移動先がdropbox内の共有フォルダとなり、それぞれのPCでパスが若干変動するためGet(デスクトップパス)などが入っております。
わかりやすく説明するため上記のような説明にいたしました。
恐れ入りますが、よろしくお願いいたします。

#2 2019-07-08 09:25:38

Shin
Member

Re: AppleScriptを実行について 「#ハンドラはこのクラスのオブジェクトを処理できません。」 と表示が出てしまいます。

デバッガーでステップ実行しながら、データビューワーで変数の内容を確認してみましたか。

Offline

#3 2019-07-08 10:20:48

pt
Guest

Re: AppleScriptを実行について 「#ハンドラはこのクラスのオブジェクトを処理できません。」 と表示が出てしまいます。

Shinさん

ご返信ありがとうございます。
デバッガーのデータビューワーで全ての変数の内容を確認いたしましたが、全て問題ございませんでした。

また、最初に記載いたしましたAppleScriptを実行 (計算済みのAppleScript)の計算式ですが、試しで動かしていたものを記載してしまい下記が正しいものとなります。
失礼致しました。
ーーーーーー
"set FolderAlias to \"" & $移動前のフォルダのパス & "\"¶
set destFolderAlias to \"" &$移動後のフォルダのパス & "\"¶
tell application \"Finder\"¶
move FolderAlias to folder destFolderAlias ¶
end tell"
ーーーーーー

こちらで「#ハンドラはこのクラスのオブジェクトを処理できません。」 (エラー番号-10010 ) とエラー表示が出てしまいます。
通常の(AppleScript記述)では正常にフォルダ移動が動きますので、計算式の場合はなにか追記しなければならない部分があるのでしょうか。
全く同じ結果で記述しておりますので、色々と試してはいるのですが正常に動かず困っております。。

#4 2019-07-08 11:10:28

Shin
Member

Re: AppleScriptを実行について 「#ハンドラはこのクラスのオブジェクトを処理できません。」 と表示が出てしまいます。

変数をセットした後で、$移動前のフォルダのパス などの内容をコピーして、直接入力へペーストして実行してみて、エラーが出ませんか。

Offline

#5 2019-07-08 12:42:38

pt
Guest

Re: AppleScriptを実行について 「#ハンドラはこのクラスのオブジェクトを処理できません。」 と表示が出てしまいます。

Shinさん

お世話になります。
一つずつ変数の中身をそのまま貼り付けて、どこが悪いのか手順を踏んでいったところ、同じ内容、同じ文章なのにも関わらず正常に動く場合と動かない場合がございました。
何度も確認しましたが、一語一句全く同じでしたので結局どこが原因だったのかわかりませんが、結果正常に動作しました。
Shinさん、色々と迅速、丁寧にアドバイスいただきまして誠にありがとうございました。
大変助かりました。またなにかありました際にはよろしくお願いいたします。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 513.45 KiB (Peak: 517.98 KiB) ]