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

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

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

You are not logged in.

Announcement

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


#1 2015-10-01 16:59:02

バーコードで困ってます
Guest

バーコード入力と桁数確認と移動

入力Aと入力Bの二つのフィールドがあります。
バーコードで入力Aに入力すると16ケタであることを確認し、入力Bにカーソルを移動。
16ケタではない場合はエラー表示と、入力Bに移動させないようにしたいのですが、この様なことはできるのでしょうか。

#2 2015-10-01 19:01:55

Shin
Member

Re: バーコード入力と桁数確認と移動

OnObjectExitトリガーで、そのフィールドの内容をチェックする様にすれば良いでしょう。
http://www.filemaker.com/help/14/fmp/ja … tml#432575
そのスクリプトの中で、16桁のチェックを行い、フィールドを移動させるか、エラーメッセージを出すかを分岐します。

Offline

#3 2015-10-02 13:09:20

バーコードで困っています
Guest

Re: バーコード入力と桁数確認と移動

このスクリプトを入力AにOn ObjectExitで設定しました。
入力Aにバーコードすると16桁ではない場合はエラー表示がでて、入力Aが空白になります。
但しカーソルが入力Aで点滅しません。
引き続きバーコード入力したいので、点滅させる必要があります。
どの様に修正すれば宜しいのでしょうか。

If[Length(入力A) ≠16
カスタムダイアログ
フィールド設定[入力A;””]
フィールド移動[入力A]
End If
If[Length(入力A) =16
フィールド移動[入力B]
End If

#4 2015-10-04 21:20:53

Shin
Member

Re: バーコード入力と桁数確認と移動

If[Length(入力A) =16
フィールド移動[入力B]
else
カスタムダイアログ
フィールド設定[入力A;””]
レコード確定
フィールド移動[入力A]
End If
としてみては如何でしょう。
バーコード関連は、バーコードリーダーの設定によって動作条件が大きく変わるので、現場を見ないと何とも言えない事が多いです。

Offline

#5 2015-10-05 09:00:45

チポ
Member

Re: バーコード入力と桁数確認と移動

OnObjectExit
でフィールド移動するには、
そのステップの後に
  現在のスクリプト終了[結果:0]

  全スクリプト終了
を入れなければダメです

Offline

#6 2015-10-05 10:16:11

ムムム
Guest

Re: バーコード入力と桁数確認と移動

読み取りエラーが頻発するようだったら、バーコードリーダーの設定を見なおした方がいいかも?
昔は転送速度を調節しないと取りこぼすみたいなことがありました。
バーコードリーダーに1クリックで複数回バーコードを読み込んで比較してエラーを減らすみたいな機能もついていますね。

#7 2015-10-05 16:59:04

バーコードで困っています
Guest

Re: バーコード入力と桁数確認と移動

Shinさま、チポさま、有難う御座います。
どちらの方法でも点滅できるようになりました。

ただ、16桁入力するまでは、カスタムダイアログが表示しっぱなしで、レイアウト編集やスクリプト編集ができなくなります。
今は設計中なのでチョット困っています。
これは仕方がないのでしょうか。

#8 2015-10-05 17:35:33

チポ
Member

Re: バーコード入力と桁数確認と移動

カスタムダイアログでキャンセルすればいいのでは。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 516.17 KiB (Peak: 521.08 KiB) ]