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

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

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

You are not logged in.

Announcement

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


#1 2013-09-24 17:54:38

picopico
Member

macでのインクリメント検索

はじめまして、ご教授ください。
macは今回初めて使い始めました。

環境
windows server 2008 R2 : FM12 server
windows 7 : FM12 advance
mac OS X 10.8.5 : FM12 pro

windows環境でいろいろと勉強しながらシステム作成してきたのですが
macも同環境で使用する予定となり、macでの動作確認をしていたのですが、
既に実装しているインクリメンタル検索なるスクリプトを
mac環境で動かすと予期せぬエラーでFileMakerが落ちてしまいます。
windowsでは問題ありません。
Advance はwindows版しか保有してないのでmacでスクリプトデバッガが使えません。

いろいろ試してわかったことは
・半角英数文字では正常に動く
・ひらがなやカタカナで落ちる
・最後にある「オブジェクトへ移動」ステップを削除すると落ちることがなくなった。

ただ、最後の「オブジェクトへ移動が」ないとインクリメンタル検索としては問題がありまして何とかしたいと思ってます。
何かわかる方がいらしたら教えてください。よろしくお願いいたします。


リスト形式
ヘッダ部ににグローバルフィールドを配置(オブジェクト名設定済み)
ボディー部に名前、住所、電話番号といった数個のフィールドあり。


--- 以下スクリプトをヘッダのグローバルフィールドにOnObjectModyfyで設定 ---

変数を設定「$a ; Get(アクティブレイアウトオブジェクト名)」
変数を設定「$b ; Get(アクティブフィールド内容)」

IF[IsEmpty($b)]
全レコード表示
対象外のみを表示
Else
変数を設定[$counter ; 値:ValueCount(FieldIDs(Get(ファイル名) ; Get(レイアウト名)))]
検索モードに切り替え[]
Loop
  Exit Loop If [$counter = 0]
  次のフィールドへ移動
  フィールド設定[$b]
  変数を設定[$counter ; 値:$counter - 1]
  新規レコード/検索条件
End Loop
エラー処理[オン]
検索実行[]
If[Get(最終エラー) = 401]
  全レコード表示
  対象外のみを表示
End If
オブジェクトへ移動[オブジェクト名:$a]

Offline

#2 2013-09-24 19:19:35

旅人
Member

Re: macでのインクリメント検索

Macで
オブジェクトへ移動[オブジェクト名:$a]
があるから落ちるとかはあり得そうにないですけど・・・
オブジェクト指定ということは、検索語を入れるフィールドが複数ある?

Offline

#3 2013-09-24 19:23:55

旅人
Member

Re: macでのインクリメント検索

なんか
Exit Loop If [$counter = 0]
の位置というか0というか、変かも知れない。
本題とは全く関係無いけど、検索実行の前に一時停止を入れてみては。

Offline

#4 2013-09-25 10:27:09

Layouter
Guest

Re: macでのインクリメント検索

他のトリガは設定してないんですか。

IMEとの関係みたいですけど。何ですかね。
onObjectKeyStrokeにしてみるとか?

#5 2013-09-25 11:08:19

picopico
Member

Re: macでのインクリメント検索

旅人 さん、Layouter さん、ありがとうございます。

Layouter wrote:

他のトリガは設定してないんですか。

onObjectKeyStrokeが設定してあったのですが、検証では関係無いようでした。

旅人 wrote:

オブジェクト指定ということは、検索語を入れるフィールドが複数ある?

検索入力用フィールドは1つだけで、オブジェクト指定にしているのは、
他のレイアウトで、スクリプトの使い回しをしているためです。

旅人 wrote:

本題とは全く関係無いけど、検索実行の前に一時停止を入れてみては。

検索実行前および各ステップごとに一時停止スクリプトを追加してみました。
そうすると、FileMakerが落ちることはなくなったので、
原因追求のため、徐々に各一時停止ステップを消去しながら検証したのですが、
ステップ構成が問題となるようなものが見つかりませんでした。
ただ、全部の一時停止ステップを消去すると再びFileMakerが落ちる現象が再現したので、

スクリプト一時停止/続行 [ 間隔 : .01 ]

を追加して対応できました。

ただ、よくわからないのですが、
スクリプト一時停止ステップを一番最初に置いても、中間においても、最後においても、
問題なく動くため、結局なにが原因?となってしまいました。
Macのスペック的問題かな?
iMac 3.1GHz Core i7 メモリ16GB

とりあえず、解決とします。

Offline

#6 2013-09-25 12:59:21

旅人
Member

Re: macでのインクリメント検索

>スクリプト一時停止/続行 [ 間隔 : .01 ]
>を追加して対応できました。
本題とは関係無い一時停止だったのだけど・・・
しかも0.01かぁ。関係無さそう。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 514.73 KiB (Peak: 519.27 KiB) ]