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

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

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

You are not logged in.

Announcement

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


#1 Re: 初心者のFileMaker pro Q&A » 保存済み検索はスクリプトで直接指定・検索実行はできますか? » 2021-06-04 19:05:41

アドバイスを頂きながら1日あれこれやってみました。
検索条件のテーブルを作って、レコードに書く条件をloopで1つずつ検索して対象を拡大する方法になりそうです。
細かい検索が可能か調べてみます。
皆さんご親身にお答えいただいて、ありがとうございます。

#2 Re: 初心者のFileMaker pro Q&A » 保存済み検索はスクリプトで直接指定・検索実行はできますか? » 2021-06-04 17:58:54

qb_dpさん Mozさん ありがとうございます。
Mozさんのお話は少々わかるのですが、実際使う人が・・・簡単にしたいようなので・・・
qb_dpさんのご案内はありがとうございます。動画などを拝見しました。FMP14で使用ができるかどうかわかりませんが、ワンコインですしゆれています。
もう少し悩みます。

#3 Re: 初心者のFileMaker pro Q&A » 保存済み検索はスクリプトで直接指定・検索実行はできますか? » 2021-06-04 14:54:23

チポさん Mozさん ありがとうございます。
スクリプトに検索条件を書く方法はわかります。というか普通はそうですね。
また、スクリプト「保存済み検索」の設定からの検索の実行は出来ないですね。

実現したいことは
検索の条件が多いので、検索モードの時のように、検索条件が一覧で見れて、条件の加除修正をしたいのです。
また、「保存済み検索」の保存名で検索をする方法な無いのかなとさがしているのです。
「一覧で検索条件が見れて良い」「スクリプトを書くのが楽」という希望です。
※実際に使う方がちょっと・・・なんていうか・・・いろいろ手順の多い仕組みは・・・まずそうなので・・・

他の方法も検討しているのですが、スクリプトLOOPでレコードの複数条件をORで検索する方法が見つからないという状況です。
これも出来ればやりたくないです。スクリプトがゴチャリそうで。

※せっかく「保存済みの検索」で名前付きで保存できるのに勿体ないなぁ・・・とも・・・

名案が有りましたお願いします。

#4 初心者のFileMaker pro Q&A » 保存済み検索はスクリプトで直接指定・検索実行はできますか? » 2021-06-04 09:40:41

MaYa
Replies: 8

環境:WIN10 FMP14

例:保存済み検索をAという名称で作りました。(もちろん検索画面で保存しました。)
保存済み検索Aを使用した検索をスクリプトからダイアログ無しで実行することは出来るのでしょうか。
ステップ「保存済み検索を開く」で保存済み検索のリストのダイアログが開くことは掴んでいます。
よろしくお願いいたします。

#5 Re: 初心者のFileMaker pro Q&A » 集計で表示された値を検索したいです。 » 2021-03-11 19:08:25

お返事が遅くなりました。
GetSummaryにつきまして
ものすごく勉強になりました。
おかげでこの件については解消しました。
himadaneeさん大変勉強になりました。ありがとうございました。
ちぼさんいつもありがとうございます

#6 Re: 初心者のFileMaker pro Q&A » 集計で表示された値を検索したいです。 » 2021-02-25 18:44:59

ありがとうございます。
GetSummaryを練習しています。

種類と件数の表記はどう書いたらいいかわからないので「A社には合計5種類の商品を納品(5件の取引をした)」と書きました。
「ねじ」が2回あるので、普通は4種類と言いませんか?:実際にはねじには仕様が異なっていて同じではないのですが、すでに渡されているレコードにはねじとしか書いていなく、調べると違うのでそう書いています。
結局5種類の取引をしたという事になるという・・・

ありがとうございます。

GetSummaryで件数は表示できました。
あとはGetSummaryの値を検索するところです。
>リレーションなら、会社名でリレーションすれば合計金額のレコードでは空欄なので関連しません=カウントされません。ただしリレーションだと全レコードが対象なので、「検索されたレコード内で」になりません。「今月分で」とか検索条件に相当するリレーション条件の追加等が必要になります。
がその方法でしょうか。

#7 Re: 初心者のFileMaker pro Q&A » 集計で表示された値を検索したいです。 » 2021-02-24 21:06:12

すみません うまくいきません。
動的値一覧は作れたのですが、件数の検索が解りません。

質問が良くなかったと思いますので改めて書きます。
【長いです すみません】
「伝票番号」 「会社名」 「納品」 「金額」 「合計」
111    A社   ねじ  100
111    A社   材木  150
111                250
112    B社   ねじ  200
112                200
113    A社   ドリル 150
113    A社   紐   200
113    A社   ねじ  50
113                400
114    C社   ねじ  80
114                80
115    B社   ねじ  150
115                150

とします。
伝票番号111はA社に2種類の商品を納品(2件の取引をした)
伝票番号112はB社に1種類の商品を納品(1件の取引をした)
伝票番号113はA社に3種類の商品を納品(3件の取引をした)
伝票番号114はC社に1種類の商品を納品(1件の取引をした)
伝票番号115はB社に1種類の商品を納品(1件の取引をした)
という事になります。
A社には合計5種類の商品を納品(5件の取引をした)
B社には合計2種類の商品を(2件の取引をした)
C社には合計1種類の商品を(1件の取引をした)
という事になります。

今回の目標は合計2種類(2件の取引)をした会社を検索する事です。
そのためには、会社名が登場するレコード数をカウントすることにしました。

困ったことにレコードの途中に合計金額のレコードや商品説明のレコードが混じっています。

先ず、
パートの定義の小計ソート対象 を使ってレコード件数をカウントすることにしました。
「レコードカウント」という名のタイプ:計算フィールドを作り、=Count(会社名)
レイアウトのパートの定義(ボディ)に「伝票番号」 「会社名」 「納品」 「金額」を並べ
パートの定義(小計ソート対象)には「会社名」と「レコードカウント」を配置しました。
ブラウズに切り替えてレコードのソートで「会社名」を対象にし、「集計フィールドに基づいて並び替え」にチェックをしてソートをしました。

現在の表示は

(ボディ)
111    A社   ねじ  100
111    A社   材木  150
113    A社   ドリル 150
113    A社   紐   200
113    A社   ねじ  50
(小計ソート対象)    A社  5件

(ボディ)
112    B社   ねじ  200
115    B社   ねじ  150
(小計ソート対象)    B社  2件

(ボディ)
114    C社   ねじ  80
(小計ソート対象)    C社  1件

です。

その中から「レコードカウント」が2のレコードを選ぶのが今回の目的です。
検索をには計算フィールドの「レコードカウント」が扱えません。
「レコードカウント」の値を各レコードに書込んだらどうかと考えましたが、全れーどの件数を持ってきてしまいます。

提案がありましたらお教えください。
よろしくお願いいたします。

#8 Re: 初心者のFileMaker pro Q&A » 集計で表示された値を検索したいです。 » 2021-02-22 14:23:59

商品名が重複しても良いです。
目的は、うまく説明がしにくいのですがこんな感じです。
例:田中さん 作業名かぼちゃ を行った
  田中さん 作業名人参 を行った
  田中さん 作業名かぼちゃ を行った
つまり、田中さんは3つの作業(かぼちゃ2回と人参1回)を行ったという事になります。
そういった集計をして、3つの行を行った人を探したいのです。

上の
全レコードからなら、名前でリレーションしてCount()すればフィールド値で出るので検索もできます。ただし計算結果が保存されないので大量データでは遅いかも。
追加の数字フィールドを作って集計値を全置換で入れれば検索できます。
の意味について 具体的に教えてください。

#9 初心者のFileMaker pro Q&A » 集計で表示された値を検索したいです。 » 2021-02-19 19:05:38

MaYa
Replies: 8

集計で表示された値を検索したいです。

環境:win10
FMP:filemaker pro14 advance

お客さん  商品名
田中さん  かぼちゃ
田中さん  人参
吉田さん  スイカ
鈴木さん  スイカ
鈴木さん  人参
鈴木さん  かぼちゃ


「お客さん」毎に並べて、そのお客さんが何種類買ったかを数えます。 商品種数の多い順に並べます。

手順:パートの定義で、「お客さん」を小計ソート対象
「商品種数」フィールドのタイプを集計にして、集計フィールドのオプションで「お客さん」をカウントします。
パートの定義で「お客さん」を小計ソート対象にして
ソートを「お客さん」にして
集計フィールフィールドに基づいて並べ替え をチェックし、対象は「商品種数」にします。
次のように表示されます。

これからがやりたいことなのです。
の内の商品種が2のものだけを表示させたいです。
検索対象にならないので検索ができません。
方法をご存じでしたら教えてください。



吉田さん  スイカ
           商品種数:1

田中さん  かぼちゃ
田中さん  人参
           商品種数:2

鈴木さん  スイカ
      人参
      かぼちゃ
           商品種数:3

#10 Re: 初心者のFileMaker pro Q&A » 他のテーブルあるレコードに、同じ値があるなら、値をコピーするとういうスクリプトが旨く動かないです。 » 2018-09-10 21:40:38

日常業務に入ってしまってお返事が遅くなりました。
ご回答を頂いてありがとうございます。
検索の順のご指摘ですがどうやってやるのか調べてみます。
具体的な状況ですが、実験がへんてこなので自分のためにもまとめてみます。
お気遣いをいただきまして本当にありがとうございます。
投稿をさせていただきます。

#11 Re: 初心者のFileMaker pro Q&A » 他のテーブルあるレコードに、同じ値があるなら、値をコピーするとういうスクリプトが旨く動かないです。 » 2018-09-09 20:41:35

ありがとうございます。
全くその通りでした。
リレーションとテーブルオカレンスの違いが今一つ分かりません。
でもこれは別のお題なので、改めて投稿します。

それから リレーションを使わずにスクリプトで処理を行う理由ですが、できればお考えをいただけるとありがたいです。
作っているのは、データテーブル内のフィールド値に、親テーブルにあるグローバルフィールド値で指定した値で、データテーブル内のフィールドで計算を行います、そしてその計算結果値が検索条件になります。また検索は別の条件(例えば日付の範囲とか)で同時にあと2つ程度が加わります。
データテーブルには50万レコードが有り、この結果、検索条件を変更すると、結果の表示まで5分~10分程度かかるようになってしまいました。
そこで、あらかじめデータテーブル上に使いそうな計算結果値を配置しようと考えました。そうすれば、データテーブルの計算フィールドが不要になるので、結果の表示が早くなると考えたのです。その計算をスクリプトで行うための実験です。
高速化のお考えがございましたらご指導いただけるとありがたいです。

#12 初心者のFileMaker pro Q&A » 他のテーブルあるレコードに、同じ値があるなら、値をコピーするとういうスクリプトが旨く動かないです。 » 2018-09-09 16:22:50

MaYa
Replies: 5

他のテーブルあるレコードに、同じ値があるなら、値をコピーするとういうスクリプトが旨く動かないです。
何度やってみてもうまくできないのでご相談します。
環境はWin10 FMP14adv です。

2つのテーブルのフィールドの比較と値の収取につきまして、ご相談です。

【実験1】
*************************************
「実験テーブル」と「実験データ」を用意して、両方のテーブルに「ID」と「値」フィールドをそれぞれ作ります。

「実験テーブル」には3つレコードを作りました。
1つ目 「ID」1  「値」空欄
2つ目 「ID」A  「値」空欄
3つ目 「ID」空欄  「値」空欄

「実験データ」には1つレコードを作りました。
「ID」1  「値」OK

スクリプトで「実験テーブル」の「ID」フィールドと 「実験データ」の「ID」フィールドが同じなら、 「実験データ」の「値」フィールドを「実験テーブル」の「値」フィールドにコピーをしなさい。
違った「無いよ」としなさい。

IF[実験データ::ID = 実験テーブ::ID]
   フィールド設定[実験テーブル::値; 実験データ::値]
Else
   フィールド設定[実験テーブル::値;”無いです”]
End if

結果は実験テーブルの1つ目は 「無いです」 2つ目は「無いです 3つ目は「空欄」
となりました。

実験2
****************************************
次に、スクリプトの内容を変えてみました。
IF[実験データ::ID = 実験テーブ::ID]
   フィールド設定[”有ったよ”]  ← IDが合致したら、「有ったよ」と表示するにした。
Else
   フィールド設定[実験テーブル::値;”無いです”]
End if

結果は実験テーブルの1つ目は 「無いです」 2つ目は「無いです 3つ目は「有ったよ」
となりました。
***************************************
問題が2つあるように思えます。
IFで「実験テーブル」と「実験データ」の」比較が旨くいかない。
「実験データ」からデータを持ってこれない。

スクリプトの問題なのでしたらお教えください。
よろしくお願いいたします。

#13 Re: 初心者のFileMaker pro Q&A » 動的値一覧にスクリプト名を反映させたい » 2017-02-23 00:44:38

お礼が遅くなりました。
$と#についてわかりました。
仕事で遅くなるので、もう少し全体を理解するのに時間がかかります。
いつも丁寧な説明をありがとうございます。

#14 Re: 初心者のFileMaker pro Q&A » 動的値一覧にスクリプト名を反映させたい » 2017-02-20 20:52:08

みなさん、レスを付けていただいてありがとうございます。
少しづつ理解をしているところです。
Hiroさんの実装具体策の意味を研究中です。
終わりましたら報告します。
まずは皆さんにお礼まで。

※$は変数ですけれど、#はなんでしたっけ コメントの#では無いですし・・・
接頭語で調べても出てこなかったので、教えていただけると助かります。

#15 Re: 初心者のFileMaker pro Q&A » 動的値一覧にスクリプト名を反映させたい » 2017-02-19 23:41:50

早速のご回答をいただきましてありがとうございます。

私の質問に問題がありました、すみません。
現在のスクリプトを入手と書いてしまったので誤解させてしまいました。

やってみたいことは、制作したスクリプトの名前を値一覧に反映させることです。
出来れば特定のスクリプト名(例えばスクリプト名の先頭が「対象」と書いてあるスクリプト名だけを値一覧に表示させたいです。

それからどうしたいかというと、値一覧で選んだスクリプトをOnObjectModifyで実行させたいと考えています。
あらかじめ、対象のスクリプトを値一覧「カスタム値」に記載して選ばせようかと思いましたが、スクリプト名がそのまま値一覧になった方が、スムースに開発ができると思ったからです。

そんな訳で、
自動的にスクリプトの名称が動的値一覧に反映させる方法
自動的にスクリプトの名称の内、「対象」と書いてあるスクリプト名だけを値一覧に反映させる方法
について考えています。
ご存知でしたらお教えください。

#16 初心者のFileMaker pro Q&A » 動的値一覧にスクリプト名を反映させたい » 2017-02-19 18:14:39

MaYa
Replies: 13

動的値一覧にスクリプト名を反映させたいと考えています。
自動的に現在のスクリプトを入手して動的値一覧に反映させる方法
自動的に現在のスクリプトの内、「対象」と書いてあるスクリプト名だけを値一覧に反映させる方法
について考えています。
ご存知でしたらお教えください。
環境:WIN10
FMP14 advance

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 8 queries executed - Memory usage: 625.07 KiB (Peak: 662.23 KiB) ]