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

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

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

You are not logged in.

Announcement

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


#1 2014-08-27 07:24:21

ハマ
Guest

検索とその結果の加工法

困っております。略初心者ですが1000件くらいの登録をA0001~とB0001〜とに振り分けて後からの追加分をAB均等に分けていきたいのです。
例 A0001~A0020 B0001〜B0015のデータが入っている場合 Aの方が多いので次からのデータをB0020になる迄B0016  B0017
     B0018 B0019と自動的にナンバリングしてA=Bになったら又Aからナンバリングして行きたいのです。
そこで、最初にAの検索とカウントでAの20を出し検索結果を保存したいのですがうまく行きません。その結果を保存後Bを検索カウントしBの15を保存しABの比較対象をしたいのですが、その為の検索結果の保存法が教えて頂きたいのです。堂々巡りで悩んでおります。
お願いします。

#2 2014-08-27 10:34:16

旅人
Member

Re: 検索とその結果の加工法

その番号は何のためにあるのですか。ただ見た目だけとか。
既存の途中のレコードを削除したりすると当然20ずつにはならないわけで
あまり意味無さそうですが。

Offline

#3 2014-08-27 11:17:22

hama
Member

Re: 検索とその結果の加工法

御注目いただきありがとうございます。
途中データの削除予定は無く、(増え続けて行くだけの予定です。)この番号はいずれ全体の中での位置情報としての役割を持たせたいと思っております。

Offline

#4 2014-08-27 12:28:36

tim
Guest

Re: 検索とその結果の加工法

>A=Bになったら又Aからナンバリングして
どこまで行くんですか?
最初からAとBを交互に割り振ればいいのでは?

#5 2014-08-27 13:38:20

Shin
Member

Re: 検索とその結果の加工法

検索実行 [ 指定された検索条件: レコードの検索; 条件: テーブル::serial: 「A」 ][ 記憶する ]
If [ Get ( 対象レコード数 ) < Get ( レコード総数 ) / 2 ]
 次のシリアル値を設定 [ テーブル::serial; "A" & Right ( "0000" & ( Get ( 対象レコード数 ) + 1 ) ; 4 ) ]
Else
 次のシリアル値を設定 [ テーブル::serial; "B" & Right ( "0000" & ( Get ( レコード総数 ) - Get ( 対象レコード数 ) + 1 ) ; 4 ) ]
End If 新規レコード/検索条件

みたいな感じ。
二人に仕事を均等に割り振りしたい、という雰囲気では。

Last edited by Shin (2014-08-27 15:31:18)

Offline

#6 2014-08-27 13:43:44

旅人
Member

Re: 検索とその結果の加工法

こんなのでどうかな?自信無し。
5個ごとに変わるサンプル
http://pupld.net/21/140827/g5oyl11r9n/index.cgi
numbering.fmp12

Offline

#7 2014-08-27 14:15:35

hama
Member

Re: 検索とその結果の加工法

tim wrote:

>A=Bになったら又Aからナンバリングして
どこまで行くんですか?
最初からAとBを交互に割り振ればいいのでは?

tim様
今のところAとB各9999迄考えておりますが、もう一桁必要かもしれません。
交互に振り分けするつもりですが、不定期に片側を操作する必要もあるので、その後の穴埋めを判断させたくて
AとBの調整をしたいのです。

Offline

#8 2014-08-27 14:16:49

hama
Member

Re: 検索とその結果の加工法

Shin wrote:
検索実行 [ 指定された検索条件: レコードの検索; 条件: テーブル::serial: 「A」 ][ 記憶する ]
If [ Get ( 対象レコード数 ) ≥ Get ( レコード総数 ) / 2 ]
次のシリアル値を設定 [ テーブル::serial; "A" & Right ( "0000" & Get ( 対象レコード数 ) ; 4 ) ]
Else
次のシリアル値を設定 [ テーブル::serial; "B" & Right ( "0000" & ( Get ( レコード総数 ) - Get ( 対象レコード数 ) ) ; 4 ) ]
End If 新規レコード/検索条件

みたいな感じ。
二人に仕事を均等に割り振りしたい、という雰囲気では。

Shin様
ありがとうございます。
早速検討してみます。

Offline

#9 2014-08-27 14:23:27

hama
Member

Re: 検索とその結果の加工法

旅人 wrote:

こんなのでどうかな?自信無し。
5個ごとに変わるサンプル
http://pupld.net/21/140827/g5oyl11r9n/index.cgi
numbering.fmp12

旅人様
ありがとうございます。
しかし、私の知りたい内容とは、向きが違う様です。

Offline

#10 2014-08-27 15:34:11

Shin
Member

Re: 検索とその結果の加工法

ちょっとバグがあったので、編修しています。
https://dl.dropboxusercontent.com/u/926 … 12.fp7.zip

動作でわからないのですが、 A0001~A0020 B0001〜B0015 から新規レコードを作っていくと、 A0001~A0020 B0001〜B0020 になりますが、その次は、 A0021 B0021 A0022 B0022... というナンバリングで良いのでしょうか。

Offline

#11 2014-08-27 15:55:14

hama
Member

Re: 検索とその結果の加工法

Shin wrote:

ちょっとバグがあったので、編修しています。
https://dl.dropboxusercontent.com/u/926 … 12.fp7.zip

動作でわからないのですが、 A0001~A0020 B0001〜B0015 から新規レコードを作っていくと、 A0001~A0020 B0001〜B0020 になりますが、その次は、 A0021 B0021 A0022 B0022... というナンバリングで良いのでしょうか。

ありがとうございます。
ナンバリングについてはその通りです。
更にデータの格納場所についてお聞きした分に関しては、グローバルフィールドに格納(まだ自動的に出来ていないのですが)する事で
解決する様です。
頂いた編集をこれから確認してみます。

Offline

#12 2014-08-27 16:29:55

Shin
Member

Re: 検索とその結果の加工法

上の提案では、グローバルフィールドなど一切不要です。
何を何の目的で保存するのですか。

Offline

#13 2014-08-27 20:33:50

hama
Member

Re: 検索とその結果の加工法

Shin wrote:

上の提案では、グローバルフィールドなど一切不要です。
何を何の目的で保存するのですか。

Shin様
ありがとうございます。
確かにこの段階ではチャンと出来ています。

これは、ご相談には無い内容なのですが、時折自動ではなくマニュアル調整を要求されており
その為途中の数値データを使用できるように保存する必要がある様なのです。

ここ迄の段階では解決とさせて頂こうと思います。

皆様ありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.010 seconds, 9 queries executed - Memory usage: 526.99 KiB (Peak: 547.9 KiB) ]