みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
OS:[Windows7]FileMaker Ver:[15]
初めて質問します。よろしくおねがいします。
リスト形式で8レコードあったとします。
一括完了はAフィールド名称のバーコード(code39)をリーダーでSCANし、
「検索→Bフィールドへの完了入力」のスクリプトでおこないます。
下記のパターン①の場合の完了は
Aフィールドが完全にユニークな名称が入っているため仮に8件分のAフィールドの名称の
バーコードを8回SCANし一括でBフィールドに完了日(YYYYMMDD)を入力することが可能な
ところまでは、なんとなく完全ではないけれどできているのですが、
パターン②のように
Aフィールドに同じ名称のレコードが複数存在していた場合の
一括での完了方法がどうしてもわかりません。そもそもそういうことが可能なのでしょうか?
パターン①
------------------------------------------------------------------------
・Aフィールドには完全ユニークな名称が入っている
・BフィールドにはAフィールドの完了日が入る
------------------------------------------------------------------------
Aフィールド Bフィールド
レコード1: A00B01 20161112
レコード2: A00B02 20161115
レコード3: A00B05 20161118
レコード4: A00B08 20161117
レコード5: A00B11 20161118
レコード6: A00B22 20161118
レコード7: A00B04 20161110
レコード8: A00B03 20161118
------------------------------------------------------------------------
パターン②では A0001 というAフィールドのバーコードを
1件だけSCANし、Bフィールドに8レコード分の完了日(YYYYMMDD)を入力したいです。
この例では8件としていますが、実際は可変となります。
ご教授をおねがいいたします。
パターン②
------------------------------------------------------------------------
Aフィールドには同じ名称のレコードが複数ある
BフィールドにはAフィールドの完了日を一括で入力
------------------------------------------------------------------------
Aフィールド Bフィールド
レコード1: A0001
レコード2: A0001
レコード3: A0001
レコード4: A0001
レコード5: A0001
レコード6: A0001
レコード7: A0001
レコード8: A0001
------------------------------------------------------------------------
※ちなみに繰り返しフィールドにはしていません。
Aフィールドで A0001を検索して Bフィールドのレコード1に日付を入力して
次に Bフィールドで 全置換 をすればいいと思うけど
Offline
シャチ様
ご教授ありがとうございます。
質問の整理をするためパターン①と②に分けましたが
質問の仕方が、かなりまずかったようです。ごめんなさい。
パターン②にはA0001以外にも例えばA0003など他の名称が複数
入っていた場合でもバーコードSCANしたそれぞれの名称に完了日を
入れたいのです。。
よろしくおねがます。
すいません よく理解できません
Offline
ほんと紛らわしい書き方ですみません。
レコードの内容は以外のようになります。
------------------------------------------------------------------------
Aフィールドには同じ名称のレコードが複数、他の名称も複数存在
BフィールドにはAフィールドの完了日を一括で入力
------------------------------------------------------------------------
Aフィールド Bフィールド
レコード1: A0001 20161118
レコード2: A0001. 20161118
レコード3: A0001. 20161118
レコード4: A0001. 20161118
レコード5: A0001. 20161118
レコード6: A0005. 20161118
レコード7: A0001. 20161118
レコード8: A0001. 20161118
レコード9: A0003. 20161118
レコード10: A0004. 20161118
------------------------------------------------------------------------
上記10件分のバーコードをスキャンし、
一括完了をおこないます。
先頭のレコードに日付を入力して全置換は業務効率が悪いので
Aフィールドの名称が印字された伝票バーコードをスキャンして
検索→一括完了したいのです。
ただそこで問題になるのが、同じ名称が複数あった場合でも
先頭行の名称1件だけを完了するのでなく、すべてのレコードを完了の
対象としたいのです。
よろしくおねがいいたします。
フィールドにデータが入ったら OnObjectModefy の
スクリプトトリガーがを仕掛けるという手もあると思いますけど
なんで 全置換が 効率悪いんで?
やっぱりよくわからんです。。
ごめんなさい 見を引きます。
Offline
抽象的な書き方なので絶対的な事はいえませんが、運用に沿っていない可能性が高く、ファイルの構成が悪いでしょう。
1コード1レコードのテーブルを作り、スキャンデータと日時はそちらで管理。今のテーブルはそのテーブルへコードでリレーション。終了日付は、今のテーブルからそれを参照するのが正しい構成かと思います。
Last edited by Shin (2016-11-19 18:02:45)
Offline
お世話になっております。
シャチ様
>全置換について
普段からパソコンを操作しない、操作しても1クリック程度の作業者に、日付入力、全置換はさせられない、
誤って他のデータを置換してしまった場合のリスク考え、今まで全置換機能は避けていました。
しかし日付入力、全置換を1つのスクリプト組んでしまえばよいのですね。頭を柔らかくし早速やってみます。
アドバイスありがとうございました。
Shin様
>テーブル分けをする。
考えもつきませんでした。この方がデータを管理しやすく、スクリプトも複雑にならずに済みそうです。
ご教授ありがとうございました。
Pages: 1
[ Generated in 0.005 seconds, 11 queries executed - Memory usage: 521.56 KiB (Peak: 526.1 KiB) ]