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

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

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

You are not logged in.

Announcement

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


#1 2016-11-20 15:42:23

きっさん
Member

異なるフィールドの値を比較して、上位の3フィールドを表示させたい

OS:[Windows10]FileMaker Ver:[15]Adv.
個人調査票として、1レコード内に100項目のフィールドを作成し、それぞれに Y N ? のいずれかを選択してもらい、Y=2 N=1 ?=0として数値化
100項目の10項目毎(Aグループ・Bグループ・・・)にその合計値を計算
項目     合計値
Aグループ   15
Aグループは、フィールド1からフィールド10までの合計
Bグループ   12
Bグループは、フィールド11からフィールド20までの合計
Cグループ    8
Cグループは、フィールド21からフィールド30までの合計
Dグループ   18
Dグループは、フィールド31からフィールド40までの合計
でJグループまでの合計値があります。
AグループからJグループまでの合計値(最大値200)を0~100まで、101~200に区分し、
それぞれの区分で、AグループからJグループまでの各グループの合計値上位3グループのみを表示させたいのですが、可能でしょうか?

グループ合計値が0~100までの場合
AグループからJグループまでの各グループ毎の合計値を比較して上位の3グループの値を表示させる。
グループ合計値が101~200までの場合
AグループからJグループまでの各グループ毎の合計値を比較して上位の3グループの値を表示させる。
と言った事を行いたいのです。
ご教示、よろしくお願いいたします。

Offline

#2 2016-11-20 15:59:59

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

グループ毎に別テーブルにして入力させ、それを単に集計すれば良いだけかと。
もしくは、1問1レコードとするテーブルに入力させ、グループ化して、集計値でソート、という方法でも良いかも。

わからないのは、多人数で行い合計点でグループ分けすると思うのですが、その集計はどうするのでしょう。人毎、それともグループ全体の総得点?

Last edited by Shin (2016-11-20 16:48:36)

Offline

#3 2016-11-21 04:42:58

Hiro
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

1回答者1レコードのDB構造のようなのでそれを前提に、レコード内処理でグループ集計、降順ソート&トップ3摘出する作例です。
設問や回答フィ―ルドを個別に100個も作るのは非常な力技なので、繰り返し[100回]フィールドで一括対処するよう簡潔化しています。

●サンプル「レコード内集計.fmp12」 → http://yahoo.jp/box/KUv1V3

Offline

#4 2016-11-22 02:43:00

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん、ご回答ありがとうございます。
グループ毎に別テーブルにして入力させ、それを単に集計すれば良いだけかと。
もしくは、1問1レコードとするテーブルに入力させ、グループ化して、集計値でソート、という方法でも良いかも。

>当初、単純に1回答者1レコードで100設問、その回答 Y=2 N=1 ?=0でレコード毎の回答値の合計を算出してその値に対するアドバイスを表示させる。
と言った仕様で、調査対象者毎に設問順序を変化させて行う(営業用、総務用といった用途)ので別テーブルでの制作は考えていませんでした。
単純に得られた結果(値)に対する回答を表示するだけでしたので、これでOKかと思っていたのですが、後から色々要望が出てきて現在に至っています。


わからないのは、多人数で行い合計点でグループ分けすると思うのですが、その集計はどうするのでしょう。人毎、それともグループ全体の総得点?

>Hiroさんが書かれている通り、1回答者1レコードのDB構造で、すべてそのレコード内で処理。
>今回、複数レコードでのフィールド毎の集計はせず、すべてそのレコード内で集計を行いたいのですが・・・・・

Last edited by きっさん (2016-11-22 03:02:56)

Offline

#5 2016-11-22 02:58:26

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Hiro wrote:

1回答者1レコードのDB構造のようなのでそれを前提に、レコード内処理でグループ集計、降順ソート&トップ3摘出する作例です。
設問や回答フィ―ルドを個別に100個も作るのは非常な力技なので、繰り返し[100回]フィールドで一括対処するよう簡潔化しています。

●サンプル「レコード内集計.fmp12」 → http://yahoo.jp/box/KUv1V3

サンプル、拝見させて頂きました。
何とか勉強して理解しようと思います。
ただ、今回は、書かれている通り、1回答者1レコードでの構造で、かつ回答の項目順がアンケート対象者毎(営業用・総務用など)で入れ替わります。
また設問毎にY=2であったり、Y=1であったり、Y=0であったりしますので、繰り返しフィールドを使用しての作成は無理なのかなぁ?と私なりに考えて、力技になりますが、100個の設問と100個の回答値を用意し、その中で例えば1・12・25・33などとランダムな設問(10個)をAグループ。
同じように別のランダムな設問(10個)をBグループ。
最終的にJグループまでの10グループとしています。
で、各グループの合計値から、上位3グループのみを表示させるようには出来ないか考えたのですが、行き詰まってしまい、質問させて頂いた次第です。

Offline

#6 2016-11-22 05:20:24

Hiro
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

今回#5説明は、当初の説明内容と全然違うものになってますよネ。
これでは幾らサンプルを作り苦労しても水の泡......

<以下今一度確認ください>
> 1回答者1レコードでの構造
・このテーブル構造は了解

> 回答の項目順がアンケート対象者毎(営業用・総務用など)で入れ替わります
・項目順入替えは、「回答」だけで「設問」など他は入替えなくとも良いのですか?
・入替えは、回答の位置番号データですか?それとも実際の回答フィールドのレイアウト表示順位の入替えですか?
・この項目順入替えはそもそも何のためですか?
・もし、ランダムな設問10個毎のグループ化のためなら、回答者所属部署毎のグループ割当情報の付加で代替えできませんか?

> 設問毎にY=2であったり、Y=1であったり、Y=0であったりしますので
・設問毎に対応の換算インデックスを追加すれば良いですね。

> 繰り返しフィールドを使用しての作成は無理なのかなぁ?と私なりに考えて
・より複雑になったので、尚更のこと、繰り返しフィールドが有効かと。

> 100個の設問と回答値を用意し、その中で例えば1・12・25・33などとランダムな設問(10個)をAグループ
・先に記しましたが、回答毎のグループ割当情報の付加で代替えできませんか?

> 各グループの合計値から、上位3グループのみを表示させる
・上位3グループの何を表示させるのですか? グループ名?グループ合計値?・・・その他何か?

※この他に補足事項があればお知らせください。

Offline

#7 2016-11-22 09:56:34

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

当初の説明とは、かなり異なっているようで... .。
グループ分けは、部署毎に異なっているのですよね。1回答1レコードではかなり無理な気がします。
将来的にも継続した物でしたら、他のサイトですが、
https://community.filemaker.com/thread/167207
で私が示している様な構造に作り直した方が楽かもしれません。
https://dl.dropboxusercontent.com/u/926 … .fmp12.zip
この各設問に対してグループ定義をしておき、それを集計する、という方法が最適かと思います。作り直しは、現在の設問内容と解凍選択枝を設定していくだけですので、そんなに手間もかからないかと思います。
集計は、回答テーブル側でグループで集計し、集計値でソートしておけば並びますので、それを適当に書き出せば良いでしょう。
上の構造を少し工夫すると、回答者毎にランダムに質問していく、というカンニングできない構造も組み込めますよ。

Last edited by Shin (2016-11-22 13:30:46)

Offline

#8 2016-11-23 02:45:28

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

今回#5説明は、当初の説明内容と全然違うものになってますよネ。
これでは幾らサンプルを作り苦労しても水の泡......
私の説明不足でした。
今回のものは、心理アンケートを行い、回答の結果によって、その人のタイプを分析する。
と言うものなんです。
設問内容と、それに対する回答値の算出、結果値に対する解説文などは心理学の研究者から指示を頂いたものになります。

<以下今一度確認ください>
> 1回答者1レコードでの構造
・このテーブル構造は了解

> 回答の項目順がアンケート対象者毎(営業用・総務用など)で入れ替わります
・項目順入替えは、「回答」だけで「設問」など他は入替えなくとも良いのですか?
  例えば、見た目で設問1のフィールド(Q001)は回答値の設定でラジオボタンセットを割り当て、Y=2であったり、Y=1であったり、Y=0としています。
  ですので、Q001のフィールド名を質問のテキストとしています。
  Q001~Q100の個別フィールド毎にcase関数で回答値の数字が算出するようにしております。
・入替えは、回答の位置番号データですか?それとも実際の回答フィールドのレイアウト表示順位の入替えですか?
  入替と言うより、設問の並び替えを行います。
・この項目順入替えはそもそも何のためですか?
  設問を10のグループに分け、それぞれQ001は自立性に関する設問、Q002は感受性に関する設問といった感じで回答してもらうのですが、営業用・総務用
  で、同じ並びだとそれぞれの用途の意味が薄れるので、並び替えを行い、且つQ001の質問テキストを変更して、違ったアンケートのようにします。
  しかし、計算値は同じです。これは、見た目営業用アンケート、総務用アンケートは別のものである。と認識させる為です。
・もし、ランダムな設問10個毎のグループ化のためなら、回答者所属部署毎のグループ割当情報の付加で代替えできませんか?
  すみません。私の知識の未熟さで書かれて頂いている意味が理解できません。

> 設問毎にY=2であったり、Y=1であったり、Y=0であったりしますので
・設問毎に対応の換算インデックスを追加すれば良いですね。
  すみません。私の知識の未熟さで書かれて頂いている意味が理解できません。

> 繰り返しフィールドを使用しての作成は無理なのかなぁ?と私なりに考えて
・より複雑になったので、尚更のこと、繰り返しフィールドが有効かと。
  繰り返しフィールドの行毎の数値を判定し、結果を分岐させる事が可能なんでしょうか?
  いままで、繰り返しフィールドを使用する場合は、行毎の四則計算でしか使った事がありません。

> 100個の設問と回答値を用意し、その中で例えば1・12・25・33などとランダムな設問(10個)をAグループ
・先に記しましたが、回答毎のグループ割当情報の付加で代替えできませんか?
  すみません。私の知識の未熟さで書かれて頂いている意味が理解できません。

> 各グループの合計値から、上位3グループのみを表示させる
・上位3グループの何を表示させるのですか? グループ名?グループ合計値?・・・その他何か?
  各グループは、感受性・自立性・創造性・開示性といった10のグループとなり、この10のグループのそれぞれの合計値の上位3グループを表示
  させ、その合計値に対する解説文を表示させます。
  例えば、感受性・自立性・開示性が上位3グループであった場合、この3つを表示させ、かつそれぞれの数値(0~20)の数値にあった解説文を表示させます。
  感受性数値が20の場合は、Aの解説、19の場合はBの解説、18の場合はCの解説・・・といった具合です。

※この他に補足事項があればお知らせください。
  現在、各グループに対する解説文の表示までは出来ているのですが、上位3つだけを表示させる所で詰まっています。

  また、これらのグループの数値を棒グラフで表示させる方法は、このサイトで質問させて頂き表示させる事が出来たのですが、このファイルを
  Runtimeソリューションアプリケーションにした所、グラフの部分が白紙になって表示されないのも今後解決しなければいけない課題です。

Offline

#9 2016-11-23 03:04:09

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shin wrote:

当初の説明とは、かなり異なっているようで... .。
グループ分けは、部署毎に異なっているのですよね。1回答1レコードではかなり無理な気がします。
将来的にも継続した物でしたら、他のサイトですが、
https://community.filemaker.com/thread/167207
で私が示している様な構造に作り直した方が楽かもしれません。
https://dl.dropboxusercontent.com/u/926 … .fmp12.zip
この各設問に対してグループ定義をしておき、それを集計する、という方法が最適かと思います。作り直しは、現在の設問内容と解凍選択枝を設定していくだけですので、そんなに手間もかからないかと思います。
集計は、回答テーブル側でグループで集計し、集計値でソートしておけば並びますので、それを適当に書き出せば良いでしょう。
上の構造を少し工夫すると、回答者毎にランダムに質問していく、というカンニングできない構造も組み込めますよ。

Hiroさんへのお返事をお読み頂くと、おおよそはご理解頂けるかと・・・・・
サンプルファイルを拝見させて頂きましたが、よく理解できていません。

Offline

#10 2016-11-23 10:35:17

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

心理テストで、上位3グループに解説文を付ける事は,最初の説明から解っていましたよ。

各人へのアンケートは,オンラインで行なっているのか,それとも印刷した紙上で行なっているのか,どちらでしょう。(面談という方法もありますが)
実装上、質問順を変える為には,オンラインで行なっているのでしたら,100個のレイアウトを作り,それをランダムに出していく,という方法がとれますが,質問が変更された時にメンテナンスが大変でしょう。私の前出のサンプルは,其れに対応できる物で,質問内容や回答のマスター化を行ない,質問順のコントロールも自由に変更できる物です。回答は,1人1回等1レコードになっているので,集計も簡単でしょう。
紙で行なっているのでしたら、その紙をランダムに作っていくのはかなり大変では。繰り返しフィールドに置いたとして,質問順のインデックスを作り,それに対応する質問を並べる手間を考えると,マスター化した方が手間は激減するはずです。

上位3グループの抽出ですが、無理矢理1テーブルで集計するのも有りでしょうが,複雑な計算が必要でしょう。グループ毎の総合点を合計する繰り返しフィールドを作り,それを別テーブルからインポートし,レコードを分けます。それをソートして上位3レコードのみを表示し,コメントを付ける,という方法が簡単では。この構造ならばグラフに仕立てるのも難しく無いでしょう。

Offline

#11 2016-11-23 15:51:35

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん
各人へのアンケートは,オンラインで行なっているのか,それとも印刷した紙上で行なっているのか,どちらでしょう。(面談という方法もありますが)

アンケートは、全100問ありますので、プリントアウトしたものを配り、記入されたものを回収し、本ファイルに入力後、判定結果をプリントアウト、面談にて解説致します。カウンセリングを必要とする事項もありますので、基本的には面談になります。
しかし、面談までゆかなくとも、指針が示されればよい。と言う方の為に、Runtimeソリューションアプリケーションにして、配布も予定しております。
ここで、グラフが表示されない。と言う問題が発生しているのですが・・・・・
また、FileMakerServerにて公開して利用する事も考えております。

--------------------------------------------------------------------
実装上、質問順を変える為には,オンラインで行なっているのでしたら,100個のレイアウトを作り,それをランダムに出していく,という方法がとれますが,質問が変更された時にメンテナンスが大変でしょう。

質問内容の変更は、Q001~Q100までのフィールドに対するテキストを変更するだけで、それぞれのフィールドに対する回答の基準は変更致しません。
ですので、変更が生じた場合でも、100個のフィールドのレイアウトを変更するだけで良いので、そんなに手間は掛からないと考えています。

--------------------------------------------------------------------
私の前出のサンプルは,其れに対応できる物で,質問内容や回答のマスター化を行ない,質問順のコントロールも自由に変更できる物です。回答は,1人1回等1レコードになっているので,集計も簡単でしょう。
紙で行なっているのでしたら、その紙をランダムに作っていくのはかなり大変では。繰り返しフィールドに置いたとして,質問順のインデックスを作り,それに対応する質問を並べる手間を考えると,マスター化した方が手間は激減するはずです。

確かに1人1回答1レコードになっていれば集計も簡単に思います。
ただ、紙媒体で配布するアンケート用紙も必要となりますので、このあたりをどう処理するのかが分かりません。

--------------------------------------------------------------------
上位3グループの抽出ですが、無理矢理1テーブルで集計するのも有りでしょうが,複雑な計算が必要でしょう。グループ毎の総合点を合計する繰り返しフィールドを作り,それを別テーブルからインポートし,レコードを分けます。それをソートして上位3レコードのみを表示し,コメントを付ける,という方法が簡単では。この構造ならばグラフに仕立てるのも難しく無いでしょう。

各グループの合計点を別テーブルに持って行き、それをソートし上位3レコードのみ表示、コメントする。
というようにすればよいのでしょうか?
グループ毎の総合点を合計する繰り返しフィールドを作り,それを別テーブルからインポートし,レコードを分けます。
この部分の解説を頂けると有難いです。

Offline

#12 2016-11-23 18:04:25

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

グラフの問題は、現物を見ないと何ともいえないかもしれません。少なくとも、具体的にどのような動きをさせているのかを書いてください。

運用についてはよくわかりましたが、紙で集めたものを入力、という手順での問題が出る可能性はありませんか。印刷に使ったレイアウトが多数ある場合、それと異なるレイアウトで入力してしまう可能性や、レイアウトを誤って変更してしまったり削除してしまうと、非常に手間がかかる事になります。
Hiroさんも指摘されている様に、設問そのものは固定、それを変換テーブルを使って表示順のみを変更、その変換テーブルを保存しておくだけで、印刷レイアウト=入力レイアウトを再現できる様になります。この並び順を例えばQRコードにして同時に印刷しておいたり、並び順をファイルに保存してコードを印刷しておくと、個人毎に全く違うアンケートの様に見せることも可能かと思います。入力時の再現性も完全でしょう。
また、この方法を使うと、設問が追加変更された場合でも、前の設定には影響を与えずに変更が可能です。
この方法は、設問毎の1レコードでも、全設問1レコードにも応用できる方法です。

設問の印刷時も、マスターかした場合には、印刷毎に100問を完全にランダムに並べてしまったり、10問区切りにして各区切りに各グループから1問を入れてくる、などの処理も可能ですよ。

トップ3の抽出については、Hiroさんのサンプルの様な式を理解できれば、それを使えば良いでしょう。この繰り返しフィールドからコメント文へ置き換えれば完成ですね。
ただ、これは高度な再帰計算式ですので、それを使わない方法として、他のテーブルでの処理を提案しています。
10グループ毎の集計は、Hiroさんのサンプルの式をそのまま使えば良いでしょう。これも式を代入させるような高度な処理をしていますが、力技で1繰り返し毎に対象となるフィールドを合計していく式を作れば同じ事です。その繰り返しフィールドを他のテーブルへインポートする時に、繰り返し毎に別レコードになる様なインポートをします。(インポート時の設定だけです)そうすれば、レコード間の処理になりますので、ソートも簡単ですし、そこからコメントへ置き換える処理も簡単でしょう。
1設問1レコードの設定にしておくと、この処理は全て集計処理のみで可能ですので、非常に簡単になります。

最初に一度作って回答させれば終わり、という物でしたら、今の作りでHiroさんの式をそのまま取り込んで集計、さらにグラフだけ解決すればいいのでは。継続して使う予定の物でしたら、自分の理解できる範囲で作り込まれた方が良いでしょう。

Offline

#13 2016-11-24 02:03:57

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん
グラフの問題は、現物を見ないと何ともいえないかもしれません。少なくとも、具体的にどのような動きをさせているのかを書いてください。

アンケートの設問合計数値としての例
充実=Q001+Q007+Q025・・・・
自立=Q003+Q015+Q030・・・・
感受=Q005+Q045+Q050・・・・
のように10グループの合計値フィールドを作成
グループ数値=非保存、List(充実 ; 自立 ; 感受 ; ・・・・)
充実テキスト=グローバル、データ自動入力、"充実"
自立テキスト=グローバル、データ自動入力、"自立"
感受テキスト=グローバル、データ自動入力、"感受"
のように10グループのテキストフィールドを作成
グループテキスト=非保存、List(充実テキスト ; 自立テキスト ; 感受テキスト ; ・・・・)
横棒グラフを選択
X軸データ:グループ数値
Y軸データ:グループテキスト
この設定で、縦軸に、上から充実・自立・感受・・・・・の項目が並びます。
横軸に、充実の欄に充実の合計数値、自立の欄に自立の合計数値、感受の欄に感受の合計数値・・・・が表示されています。
各項目毎の合計値が正しく表示されていますので、OKかと思っているのですが、どこかに間違いがあって、Runtimeソリューションアプリケーションにすると表示されないのでしょうか?
グラフの部分をクリックすると、枠のみが表示されています。
---------------------------------------------------------------------
運用についてはよくわかりましたが、紙で集めたものを入力、という手順での問題が出る可能性はありませんか。印刷に使ったレイアウトが多数ある場合、それと異なるレイアウトで入力してしまう可能性や、レイアウトを誤って変更してしまったり削除してしまうと、非常に手間がかかる事になります。

実際の運用では、営業用・総務用など数種類のそれに対応したファイルを作って運用しますので、多種類のレイアウトになることはありません。
最初の制作時の手間はありますが、計算式の変更はありませんので、一度制作してしまえばその後の手間は掛からないと考えています。
---------------------------------------------------------------------
Hiroさんも指摘されている様に、・・・・・・・・・
トップ3の抽出については、Hiroさんのサンプルの様な式を理解できれば、それを使えば良いでしょう。この繰り返しフィールドからコメント文へ置き換えれば完成ですね。
ただ、これは高度な再帰計算式ですので、それを使わない方法として、他のテーブルでの処理を提案しています。
10グループ毎の集計は、Hiroさんのサンプルの式をそのまま使えば良いでしょう。これも式を代入させるような高度な処理をしていますが、力技で1繰り返し毎に対象となるフィールドを合計していく式を作れば同じ事です。その繰り返しフィールドを他のテーブルへインポートする時に、繰り返し毎に別レコードになる様なインポートをします。(インポート時の設定だけです)そうすれば、レコード間の処理になりますので、ソートも簡単ですし、そこからコメントへ置き換える処理も簡単でしょう。

色々方法があるようですが、私の理解の範囲を超えた式のようです。
たとえ完成したとしても、構造がよく理解出来ていないものは、後々トラブルが発生した時に対処出来ませんので、ご教示頂いた考え方をヒントに制作してみます。
---------------------------------------------------------------------
1設問1レコードの設定にしておくと、この処理は全て集計処理のみで可能ですので、非常に簡単になります。

当初は、1設問1レコードの考え方も考慮したのですが、アナログ的に1枚のアンケートでの設問なので、この1枚を1レコードとして作り込んでしまいました。
スタート時点で、ボタンを掛け違えたのかもしれませんね。
---------------------------------------------------------------------
最初に一度作って回答させれば終わり、という物でしたら、今の作りでHiroさんの式をそのまま取り込んで集計、さらにグラフだけ解決すればいいのでは。継続して使う予定の物でしたら、自分の理解できる範囲で作り込まれた方が良いでしょう。

おっしゃる通り、最初に一度作って回答させれば終わり、という物ですので、上位3グループの件とグラフの問題を解決すればいいと考えております。
実際制作したファイルをご覧頂ければ、問題点などのご指摘も確実なものとなるのでしょうが、そうゆう訳にも行かないのでしょうね?

Offline

#14 2016-11-24 05:47:10

Hiro
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

1名1設問/1レコードはShinさんにお任せして、こちらは1回答者/1レコードの方法を試しています。
取り合えず、1テーブル1レコード内の繰り返しフィールドの計算処理を主にレコード内完結するシンプル構造の作例です。
この修正サンプルの方向や仕様の認識に誤りが無いかなど、検証結果をお聞かせください。

●アップデートサンプル「レコード内集計v2.fmp12」 → http://yahoo.jp/box/jqx2ZS

【修正履歴】
・ブラシアップしました。 ←(2016/11/24(木) 13:15)
・グラフ化機能を追加しました。←(2016/11/24(木) 14:45)
・自動更新しない計算箇所のバグ修正をしました。←(2016/11/24(木) 15:20)

Last edited by Hiro (2016-11-24 15:22:32)

Offline

#15 2016-11-25 23:31:46

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

設問順を保存するために、1回答者1レコードの構成みたいになっていますが、回答は1回答1レコードになっています。集計を使ってトップ3グループのみに絞り込み、簡易型のグラフを表示させています。(グラフ機能は使っていませんので、非常に簡単です)
荒削りの社内プロトタイプ程度のできですが。
https://www.dropbox.com/s/t788f9ejx8q8i … 7.zip?dl=0
オンラインアンケートの機能も組み込んであります。全回答後にすぐに分析結果が表示されます。

Offline

#16 2016-11-26 03:16:31

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん、Hiroさん
色々サンプルをお作り頂き恐縮しています。
内容を拝見させて頂き、勉強させて頂いておりますが、わからないことばかりです。
そこで、私が制作しているファイルをアップしましたので、ここをこうすれば良い。とかのアドバイスを頂けると幸いです。
http://yahoo.jp/box/l-Q_J1
アンケートを入力後、グラフページを印刷、診断結果ページを印刷、総合点を真ん中から2つに分けて上位点と下位点で、それぞれのグループ(尺度と表現しています)のグループ点上位3グループを表示させ、それに対応した解説を表示させます。
この上位3グループ表示で詰まって、今回質問させて頂きました。

また、このファイルをRuntimeソリューションアプリケーションにした所、グラフ部分が枠のみになってしまうのです。
運用方法としては、Runtimeソリューションアプリケーションにして配布、FileMaker Proをお持ちでない環境でも使えるようにし、またWebでの公開(方法はこれから勉強しないといけません)を考えております。
Web公開用のレイアウトなどは、現段階では制作出来ていません。

Offline

#17 2016-11-27 17:50:40

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

ここまで作り込んであるのでしたら、構造をさわるべきではないかも。

> この上位3グループ表示で詰まって、今回質問させて頂きました。
どのように詰まっているのかよくわかりませんが、私の表示方法も参考になると思います。

> また、このファイルをRuntimeソリューションアプリケーションにした所、グラフ部分が枠のみになってしまうのです。
Runtimeソリューションでは、FM のグラフ機能はサポートされません。ヘルプもお読みください。
http://www.filemaker.com/help/15/fmp/ja … on.html%23
簡易型の表示で良いのでしたら、私の簡易グラフも簡単で良いと思いますよ。(見えは問題にしないとして)

Last edited by Shin (2016-11-27 18:23:06)

Offline

#18 2016-11-27 18:40:39

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん
ここまで作り込んであるのでしたら、構造をさわるべきではないかも。
>>じっくり時間を掛けて改良すれば良いのかもしれませんね。
>>私の知識不足と時間の無さが悔やまれます。

> この上位3グループ表示で詰まって、今回質問させて頂きました。
どのように詰まっているのかよくわかりませんが、私の表示方法も参考になると思います。
>>現在の構造では、1テーブル1レコード内で全てのデータ処理が完結しています。
>>この状況下で、各尺度の合計値の高い3フィールドを表示させる事で詰まっています。
>>一旦この12フィールドをそれそれ1レコードとしてエクスポートし、それぞれの合計値でソートすれば良いのでしょうか?

> また、このファイルをRuntimeソリューションアプリケーションにした所、グラフ部分が枠のみになってしまうのです。
Runtimeソリューションでは、FM のグラフ機能はサポートされません。ヘルプもお読みください。
>>Runtimeソリューションでは、FM のグラフ機能はサポートされていない事が後で調べて分かりました。
>>でも、グラフ機能は必要だと思います。今後の機能向上に期待します。

簡易型の表示で良いのでしたら、私の簡易グラフも簡単で良いと思いますよ。(見えは問題にしないとして)
>>現在、構造がどのようになっているのかを、自分なりに解析中です。
>>稚拙な知識での解析なので、理解するまで少し時間が掛かりそうです。不明な点は、都度ご質問させて頂いてもよろしいでしょうか?

Offline

#19 2016-11-27 19:05:15

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

>>Runtimeソリューションでは、FM のグラフ機能はサポートされていない事が後で調べて分かりました。
>>でも、グラフ機能は必要だと思います。今後の機能向上に期待します。
Runtimeソリューションで、グラフ機能がサポートされる事は、将来的にも無いと思われます。その機能は、FM 社の独自の機能ではなく、他のパッケージでも市販されているグラフソフトのエンジンをライセンスしているもので、それを無料で他に配布を許諾するために、さらに膨大なライセンス料を支払う事は無いでしょう。
これは、PDF 書き出しがサポートされない事と同じです。

Offline

#20 2016-11-28 01:02:58

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん
Runtimeソリューションで、グラフ機能がサポートされる事は、将来的にも無いと思われます。その機能は、FM 社の独自の機能ではなく、他のパッケージでも市販されているグラフソフトのエンジンをライセンスしているもので、それを無料で他に配布を許諾するために、さらに膨大なライセンス料を支払う事は無いでしょう。
これは、PDF 書き出しがサポートされない事と同じです。

そうなんですね。
と言う事は、グラフをRuntimeソリューションアプリケーションで表示させようとすると、今回の私のケースですと、それぞれ算出された数値に基づいて
Case ( 充実 = 1 ; "■” ; 充実 = 2 ; "■■” ; 充実 = 3 ; "■■■” ; 充実 = 4 ; "■■■■■”  )
というふうに最大値の40まで各尺度を定義してやれば、数値を視覚化出来ると思うのですが、もっと良い方法はあるのでしょうか?

Offline

#21 2016-11-28 04:32:48

Hiro
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

上下2分ごとの「上位3グループ表示」機能を補足した校正ファイルを返却アップしました。

●校正ファイル「フリー入力版v2.fmp12」 → http://yahoo.jp/box/DFNhp0
・取り合えず、グラフページに仮設表示しておきました。
・10個の計算フィールドと2個の動的値一覧、1個の自己リレーション追加で機能を実装しています。
・オマケで、年齢計算の式の間違い(うるう年問題)を訂正しておきました。

・以下の当初機能は廃止という事かな?
   > 回答者1レコードでの構造で、かつ回答の項目順がアンケート対象者毎(営業用・総務用など)で入れ替わります。

・グラフは、外部Webサービスを利用してWebビューアに描画する方法もあるかも? 参考過去ログはこちら
・■文字による棒グラフ表示は、繰り返しフィールを上手く使うと棒の長さの調整が自在に出来ます。
・グラフ機能が無い時代は、付属のアクアボタン素材などグラフィック部品と繰り返しオブジェクト
   フィールドを工夫して、まあまあ見映えの効く棒グラフを実現していました。

Last edited by Hiro (2016-11-28 12:43:53)

Offline

#22 2016-11-28 08:56:07

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

繰り返しフィールドに着色してグラフの様に見せるテクニックは,私のサンプルフィアルの中に入っていますので,参考にしてください。「回答集計」のレイアウトに仕組んであります。
■を使うと間が開いてしまう事が多く,微調整ができませんので、余りお勧めしません。

https://www.dropbox.com/s/3i712kwli6gqv … 2.zip?dl=0

Last edited by Shin (2016-12-01 17:20:46)

Offline

#23 2016-12-01 17:21:38

Shin
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

サンプルファイルのレイアウトに、別の構造を組み込んだサンプルです。
構成としてはすっきりしていると思います。
https://www.dropbox.com/s/3i712kwli6gqv … 2.zip?dl=0

開始ボタンの option クリックで、別の動きへ入れます。

Last edited by Shin (2016-12-02 02:35:47)

Offline

#24 2016-12-14 02:47:15

きっさん
Member

Re: 異なるフィールドの値を比較して、上位の3フィールドを表示させたい

Shinさん
Hiroさん
色々なアドバイス、ありがとうございます。
サンプルまで制作して頂き、恐縮しております。
それぞれのファイルの中身を勉強させて頂き、行き詰まったらまた質問させて下さい。
私事で申し訳ございませんが、多忙につき、お返事が遅くなりました事、ここにお詫び申し上げます。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.056 seconds, 9 queries executed - Memory usage: 667.91 KiB (Peak: 720.81 KiB) ]