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

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

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

You are not logged in.

Announcement

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


#1 2014-10-04 18:41:56

soyokaze
Guest

連番をいれたいのですが、途中番号をとばしたいです。

filemakerをいじり始めたばかりの初心者なので、初歩的な質問ですみません。

紙アンケートを入力するデータベースをつくっているのですが
アンケート用紙にふってあるID番号が単純に数字なので
IDというフィールドを作成し、レコード追加したときに自動で1ずつ増えるように、
単純にフィールドのオプションで「シリアル番号」を選択し、増分1にして作成しました。

ただ複数人で作業をすることになり、連番のアンケートを入力はするものの
人によっては、
・0001~0020まで入力
・その後に0200~0250を入力。
・次に0100~0150を入力

というように、束では連番なのですが途中飛んだり、前の番号に戻ったりするような状況です。

現在データベースではアンケートの一番下に「入力完了」ボタンを作り、
押すとレコードが追加されIDが自動で増えるようになっているのですが、
上記の問題を解決するには、そのIDは自動で入力はされるが自分で書き換えれば
その後完了ボタンを押した時には、書き換えた番号に1追加される。
というようにすればいいと思うのですが、それがうまく出来きません。

フィールドのオプションの中にある「シリアル番号」の中に
「次の値」というのがあるので、そこを変えるというのもあるのですが
入力する人は全くFilemakerがわからない人もいるので
そこはさわらせず、単純にIDの番号を手で変えて完了ボタンを押すと
自動でその番号が増えていきますよ。みたいにしたいと思っています。

初歩的すぎて申し訳ありませんが、このやり方もしくは
このやり方の方がもっといいですよ。というものがありましたらどなたかご教示ください。

宜しくお願い致します。

#2 2014-10-04 18:44:47

soyokaze
Guest

Re: 連番をいれたいのですが、途中番号をとばしたいです。

失礼致しました。使用しているのはFM Pro 12 Advanced です。
宜しくお願い致します。

#3 2014-10-04 19:42:58

Shin
Member

Re: 連番をいれたいのですが、途中番号をとばしたいです。

次のシリアル値を設定
http://www.filemaker.com/help/12/fmp/jp … html#61569
というスクリプトが有るのは有るのですが。
複数で1ファイルを共有して作業するには不適ですし、それより開始番号を間違えられたらどうしようもないかも。

先に全部のレコードを作っておいて、次々とレコードを送っていく方が簡単かと思いますが。

Offline

#4 2014-10-04 21:37:00

soyokaze
Guest

Re: 連番をいれたいのですが、途中番号をとばしたいです。

早速のご教示ありがとうございます。

説明不足ですいみせん。

>複数で1ファイルを共有して作業するには不適ですし

とりあえず1つのファイルを複数人で共有ではなく、私がFilemakerのスキルがなくよくわからないので
1人1つずつ入力ファイルをわたして、それをエクセルにエクスポート、エクセル上でData統合にしようと思っています。

>先に全部のレコードを作っておいて、次々とレコードを送っていく方が簡単かと思いますが。

たしかにそういうのもありますね!今度それも試してみたいと思います。
今回イレギュラーなタイプで、
・複数タイプのアンケート(設問は一緒なのですが、選択肢が実施会場により違う)がある。
→ テーブルをタイプ分つくるのではなく、Aタイプのアンケートファイル。など複数ファイル作りました。
・その会場のアンケートが何番からなのか来てみないとわからない。
・毎週数百枚送られてきて、Total見込みも5000~10000枚と幅がある

という状況なので、今回はその方法難しいかもです。

>次のシリアル値を設定
http://www.filemaker.com/help/12/fmp/jp … html#61569

教えて頂いたこちらを見て、試してみます!!
ここにかかれていることが、よくわからないくらいの初心者ですので頑張って解読します。
とりあえず、いまこのヘルプの例にある
レコード/検索条件/ページへ移動 [最後の]
次のシリアル値を設定 [テーブル1:請求書 ID; テーブル1::請求書 ID + 1]
の文法はわかったのですが、どこに設定すればチャレンジ中です。

とりあえず、スクリプトに文法をつくってみました。
ボタンにはダブルクリックでスクリプトが割り当てられましたが
フィールドにどうやって割り当てるのか、この文法があってるのかもう少し試してみます。

#5 2014-10-04 23:38:22

soyokaze
Guest

Re: 連番をいれたいのですが、途中番号をとばしたいです。

いまだうまく出来ず。。。
新規レコードを追加するときに値を渡して+1にすればいいだけだと思うのですが。

今やっているのは、アンケートが2枚1組なので
・テーブル:アンケート
・レイアウト:P1,P2の2つ
・フィールド:ID(数値:シリアル自動で追加 増分1)
・P1にP2へきりかえるボタン設置(レイアウトの切り替えでP2へ)
・P2に入力完了ボタンを設置
そのボタンにスクリプトで
- レイアウトの切り替え[「P1」]
- 新規レコード/検索条件
- 次のシリアル値を設定[アンケート::ID; アンケート::ID+1]
としているのですが、思うような動作ができません。

これだと直前のIDの値を次のIDにわたせてない。ということでしょうか。

いま動作させると
1,2、3、4 と増えてきて、その 4 を 10に変更した時
次のレコードにくるIDが11にならず、5になってしまします。

フィールドのオプションで設定したシリアル番号がそのまま来ているという感じなのかなと思い
その設定を消すと、入力完了をおしても空欄になるので値が送られてないのだと思いました。

本当に申し訳ないですが、どなたか解決方法をご教示ください。
宜しくお願い致します。

#6 2014-10-05 09:29:52

Moz
Member

Re: 連番をいれたいのですが、途中番号をとばしたいです。

着地点を定めては如何でしょう?

この掲示板的に最後はExcelかよ!と突っ込みたい気持ちを抑えて......
Excel で統合する際に各人が入力した ID が重複しないことが重要では?

ファイルを渡す前にシリアル値の自動入力オプションの開始の値を10万程度ずらすだけでも被らないと思いますし。
ID を入力者が直してしまえる状態は望ましくありませんのでお止めになった方がよいでしょう。

なお、番号(数字)にこだわらないなら Get ( UUID ) を使えば重複しません。

Offline

#7 2014-10-05 22:55:10

Shin
Member

Re: 連番をいれたいのですが、途中番号をとばしたいです。

新規レコード、の前に、次のシリアル値を設定、を行わないといけませんね。
次のシリアル値は、カスタムダイアログでどの番号から開始するかを問い合わせるようにする必要が有るでしょう、

複数のファイルの統合は、シリアル値が重なっていない、という前提でしたら、インポートすれば統合できます。

Last edited by Shin (2014-10-05 22:57:28)

Offline

#8 2014-10-06 05:15:50

Moz
Member

Re: 連番をいれたいのですが、途中番号をとばしたいです。

アンケート用紙に記載されている既存の番号とは関係なしにユニークなIDが欲しいだけなら、
Shinさんも書かれてるように FileMaker で統合して統合するファイル側で付けるのが簡単そうですね。

Last edited by Moz (2014-10-06 05:16:54)

Offline

#9 2014-10-06 14:38:20

soyokaze
Guest

Re: 連番をいれたいのですが、途中番号をとばしたいです。

MOZさん、Shinさん

ご回答ありがとうございます!

普段エクセルが中心のため、なんかつまずくともうエクセルで直すからいいや・・・。になってしまいました。
アンケート用紙のシリアル値は重複なしなので、ファイル統合で使ってみます。

シリアル値については、カスタムダイアログは確かにわかりやすい!と思いました。

レコード追加の時に、カスタムダイアログで次のIDの○○○です。
変更するときは番号を記入し、OK。そのままでよい場合はそのままOK。を押す

みたいなことをイメージしました。
あとは、その変更を次のレコードのIDに反映する。と

頑張ってやってみます。ありがとうございます!

#10 2014-10-06 15:41:47

soyokaze
Guest

Re: 連番をいれたいのですが、途中番号をとばしたいです。

カスタムダイアログを使って、やりたい動作が再現出来ました。

みなさまいろいろありがとうございました!

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: 546.68 KiB (Peak: 567.59 KiB) ]