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

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

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

You are not logged in.

Announcement

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


#1 2016-01-27 17:21:51

pon
Member

対象レコードの特定フィールドの値を重複せずにリスト化

宜しくお願いします。FileMaker14です。


対象レコードの特定フィールドに何が含まれるかを調べたいのですが、
どのようにすればよいでしょうか。

このような対象レコードを↓

三重県
奈良県
滋賀県
京都府
大阪府
京都府
大阪府
兵庫県
奈良県
奈良県



このように、重複したものを省いて取り出したいのです。

三重県
滋賀県
京都府
大阪府
兵庫県
奈良県

Offline

#2 2016-01-27 17:30:41

pon
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

取り出す形式は、改行区切りのテキストです。
ボタンを押すとカスタムダイアログで出るようなものを作ろうとしているのですが、
検討もつかず、どうぞご教示お願いいたします。

Offline

#3 2016-01-27 17:38:20

Moz
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

そのフィールドの値に基づく値一覧を作成して、

ValueListItems ( Get ( ファイル名 ) ; "値
一覧名" )

とか、

ExecuteSQL ( "SELECT DISTINCT \"フィールド名\" FROM \"テーブル名\"" ; "" ; "" )

などありますね。

Offline

#4 2016-01-27 17:42:58

Moz
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

対象レコードっての見落としてました。ボツ案で(汗)

Offline

#5 2016-01-27 17:48:41

チポ
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

対象レコードの特定フィールド

ですから、対象レコードにフラグを立ててそれで自己リレーションし、
その動的値一覧を作って、Mozさんの計算式
ですかね。

対象レコードを変えるときにフラグをリセットする必要が有ります。

Offline

#6 2016-01-27 17:51:11

Moz
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

気を取り直してとりあえずの代案。

下準備
1.値を取得したいフィールドの値に基づく集計フィールドを一覧で作成します。
2.グローバル格納のフィールドを作成します。
3.↑の値に基づく値一覧を作成します。

スクリプトの流れ
1.下準備 (2) で作ったグローバル格納のフィールドに (1) で作った集計フィールドの値を[フィールド設定]
2.[レコード/検索条件確定]
3. カスタムダイアログに計算式

ValueListItems ( Get ( ファイル名 ) ; "値
一覧名" )

一時的に重複しない値の一覧が取得したいだけなら足りるかと。

Offline

#7 2016-01-27 19:02:55

Hiro
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

年の功で安直な方法を!
答えを格納するグローバルフィールドを作って、これに下記計算式の「フィールド内容の全置換」を掛けてお終い。

Let(
[
  $add=Case(FilterValues($lst; 特定フィールド)=""; 特定フィールド);
  $lst=List($lst; $add)
];
  Case(Get(レコード番号)=Get(対象レコード数); $lst)
)

Offline

#8 2016-01-28 16:44:28

pon
Member

Re: 対象レコードの特定フィールドの値を重複せずにリスト化

マスタの修正履歴をとっていてそれを変えたくないと思ったのですが、
Hiro様の「フィールド内容の全置換」でも変わらないのですね!
なぜこの計算でそうなるのかは実はまだ理解できていないのですが、
別テーブルのグローバルフィールドを使用しても成功し、大変手軽に実現することができました。

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

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 10 queries executed - Memory usage: 512.9 KiB (Peak: 517.44 KiB) ]