みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Moz 様
ありがとうございました!!
期待通りの結果となり、とても嬉しく思います。
どのような仕組みで実現できたのかは、後でゆっくり考えてみます。
今後ともどうぞよろしくご指導ください。
同じポータルフィルタを設定した1行だけのポータルを配置して、集計フィールドをその中に配置します。
ポータル内の集計フィールドはポータルフィルタが反映されます。なお、FileMaker ではリンクという言い方はしません。リレーションです。
いつも大変お世話になっています。
表題の件の質問ですが、よろしくお願いします。
テーブルAとテーブルBはリンクさせて、Aを親テーブルとしてBをポータルで表示しています。
テーブルBの金額フィールドの合計をポータルの下部に表示させたいと思います。
金額合計は集計フィールとして、金額を合計としています。
ポータルでフィルターを使わなければ次のように正常に合計が表示されます。
aaaaa. 5000
bbbbb 1000
cccccc 3000
------------------
金額合計 9000
しかし、ポータルのフィルターで上記のbbbbbを表示させないときの金額合計(8000)が表示できるようにするにはどのようにすればよろしいでしょうか。
aaaaa. 5000
cccccc 3000
------------------
金額合計 xxxxxx
なお、ボディーにテーブルBのレコードを表示させて、後部パートに金額表示させると、正常に集計が出来ることは確認しています。
よろしくご指導ください。
チボ 様
Shin 様
今回もご指導いただきまして誠にありがとうございました。
Get関数で、”アクティブ繰返し位置番号”を完全に見落としていました。
これで、無事目的をかなえることが出来まして感謝申し上げます。
今後ともどうぞよろしくお願いいたします。
いつも大変お世話になっています。
さて、表題の件ですが次のことを実現するにはどのようにすれば良いでしょうか。
1 フィールドF1は10個の繰り返し変数とします。
2 このフィールドをレイアウトに表示して、
例えば、6番目でクリックまたはReturnキーを押した時に
F1[6]に1と言う値を代入したいと思っています。
クリックした位置の要素番号(この場合は6)が取得すれば良いと思うのですが、
"get"などを探しても見つかりませんでしたので、質問をさせて頂きました。
どうぞよろしくご指導ください。
mic さま
どうもありがとうございます。
サンプルファイルを作って確かめたところ、期待通りの結果になりました。
ただ、フィールドが多い場合など少し面倒なことと、他のレイアウトも同様にしなければ統一性が無くなるので、今回はこの方式は見送ることにしました。
しかし、この仕組みは他のことでも活用できますので、役立たせて頂きます。
今後ともよろしくご指導ください。
検索モードで検索条件を入力するのではなく、
・検索条件を入力するグローバルフィールドを用意
・グローバルフィールドの条件で検索するスクリプトを作成として新規ウインドウで検索条件を入力させ、元のレイアウトに戻って検索スクリプトを実行すれば実現できないでしょうか。
グローバルフィールドの初期化やフィールドを増やした時などに手間が掛かる欠点はありますが、どこからでも検索条件を設定できると思います。
みなさま
いろいろなお知恵を出していただきまして大変ありがとうございました。
検索条件の”コピー&貼り付け”はかなり面倒なことが理解できましたので、
同一のウインドウでレイアウトを切り替えて、”検索して⇒元に戻る” という方式で行ってまいりたいと思います。
”新規ウインドウ”は、印刷プレビューなどで使っていますが、とても便利なので、
ついつい検索画面でも使えないかと思った次第です。
私にとって、出来ること、出来ないこと、が明確になることはとても貴重なことでしたので、
重ね重ねお礼申し上げます。
これからもどうぞよろしくご指導ください。
チボ様
shin様
早速のご返答ありがとうございます。
説明不足でしたが、次のような理由で検索条件を入れる画面は”検索用のレイアウト”で行っています。
1 本ウインドウで画面を検索モードに切り替えると、
うっかり勘違いして、検索画面で入力する事項を編集モードのフィールドに書き込む危険があります。
2 また、例えば登録日での検索などは、次のように長い検索条件を入れたい場合もありますので、
検索条件を入れる専用のレイアウトを作成しています。
2021/04/01 ... 2021/04/30
3 同じウインドウで検索画面にレイアウトを切り替えれば問題はないのですが、
出来れば、新規ウインドウで”検索レイアウト”を開くとことが出来ればビジュアル的にも検索画面である事が、
より明示できるのではないかと思っています。
レコードの編集の場合は、新規ウインドウで編集しても書込確定をすれば、元レイアウトの方も正常に反映されることは、
承知しています。
しかし、検索モードはデータテーブルへの書き込みがないので無理かなと思いましたが、
"レコード/検索条件コピー"と言うステップがあったので、これなどをうまく使えないかなと思ったのです。
検索条件をコピーして、貼り付けなどができるでしょうか。
よろしくお願いします。
いつも大変お世話になっています。
次のようなことを行いたいと思っています。
1 元ウインドウで”検索ボタン”を押すと、新規ウインドウで検索条件を入れる画面が出る(OK)
2 検索条件を入れて”ウインドウを閉じる”と、元の画面に戻る。(OK)
3 元のウインドウで、検索を行いたい(これがうまくいかない)
なお、現状では、
1 元ウインドウで”検索ボタン”を押すと、検索画面のレイアウト(検索モード)に切り替わる(OK)
2 検索条件を入れて、”検索実行”を行う。(OK)
3 検索画面から”レイアウトの切り替え”で元のウインドウに戻る(OK)
このように行っています。
よろしくご指導ください。
Shinさん、Himadaneeさん
たいへんありがとうございました。
一つのフィールドでは変数は一つしか使えないという仕様の問題だったのですね。
$key =. $start & "..." & $end
これで、無事解決できました。
感謝申し上げます。
今度ともどうぞよろしくお願いします。
お世話になっています。
たいへん、初歩的な問題につまづきました。
例えば、2021/04/05から2021/04/10までのレコードを検索する場合、
”検索実行”のステップで、
2021/04/05 ... 2021/04/10
とすると、期待通りの結果になります。
ところが、
$Startと$endの変数に値を入れて、
$start ... $end
とすろと、期待通りの検索が出来ません。
何を間違っているのか、ご指導を賜りたいと思います。
よろしくお願いします。
なお、
<= $start
とすろと、正常に検索が実行されます。
チボさん、ご指導ありがとうございました。
いろいろ試して見た結果、”方法1”で今回はクリアしました。
List関数も使えるかなと思ったのですが、データがヌルの場合は改行キーが入らないので今回はLoopを使ってテーブルBを作る方法は諦めました。
もし、データがヌルでもList関数で改行キーを入れる方法がありましたら教えて下さい。
なお、テーブルAからテーブルBへの変換が必要になった理由は、レコードのデータをグラフで表示させるためでした。
今後ともよろしくお願い申し上げます。
いつもたいへんお世話になっています。
タイトルの表現があまり的確ではないと思いますが、
次のようにするにはどうすれば良いでしょうか。
テーブルA
ID F1. F2. F3. F4. F5
-----------------------------------------
1 10. 15. 50. 20. 30
2. 30. 40. 20. 50
:
:
例えば、ID=2 のレコードの値を次のようなテーブルBに体入
テーブルB
ID. F
----------------
1. 30
2. 40
3. 20
4
5. 50
よろしくお願いします。
ご回答ありがとうございます。
ちょっとしたコメントなので、現状のカスタムダイアログで十分なのですが、
”カードウインドウ”を使う方法もなるのですね。
ありがとうございました。
お世話になっています。
カスタムダイアログのメッセージの行数が多い場合、実行時に全文が表示されません。
自動的な高さ調整または、高さの指定は可能でしょうか。
それから、表示位置の指定なども出来るでしょうか。
確かにファイルメーカーの問題ではないと思います。
ダウンロードしたパソコンはwindows10で、ブラウザは IE11 とChrome ですが、何もダウンロードすると、ファイル名が”ダウンロード”になります。
Macの場合は、safari と GooleChrome ですが、いづれも正常にダウンロード出来ます。
ダウンロードの方法は、ブラウザのURLに直接タイプしてダウンロードしたときです。
なお、ファイルメーカのスクリプトで、URLからの挿入した場合は、何も正常です。
たいへんお世話になっています。
HPにアップしていた拡張子がfmp12のファイルをダウンロードすると、
Macパソコンでは、正常にダウンロード出来ますが、
Windowパソコンでは、次のようにファイル名が”ダウンロード”に変わります。
例)
smple.fmp12 ⇒ ダウンロード
ダウンロードのファイル名に拡張子fmp12を付ければ、正常にファイルメーカーアプリが起動します。
拡張子が、exe などのファイルではこのような現象は生じませんでした。
原因が分かりましたら教えて下さい。
みなさま、どうもありがとうございました。
”等しくない”という検索条件がないと言うことで理解出来ました。
スクリプトステップでの"IF"は”等しくない”が使えるので、もしかしたらと思って質問をさせていただきました。
これからもどうぞよろしくご指導ください。
Hiroさん、Mozさん、ご回答ありがとうございます。
私の質問の不備とバージョンの不記入で申し訳ありません。
改めての質問です。
FileMaker18で実行しています。
ツールバーやメニューを使っての検索はご回答頂いて方法で可能なことは承知していますが、
次のように実行したいと思っています。
フィールドF1,F2があるとして、スクリプトステップで次の処理を実行します。
1 ”検索”ボタンを押して、検索条件を入れる画面を表示させ
2 フィールドF1に”=東京”と入れます。
3 フィールドF2に”500”以外の条件を入れる。(ここがわからないのです)
4 ”検索実行”ボタンを押して、検索実行[] のステップで、F1が東京で、F2が500以外のレコードを集めたいのです。
現状では良い方法が思いつかず次のように行っています。
1 検索画面1で F1に =東京 F2に <500
2 検索画面2で F1に =東京 F2に >500
3 検索実行[] を実行
これを一つの検索条件を入れる画面で行うことは可能でしょうか。
いつも大変お世話になっています。
例えば
数値の”500”以外を検索したいのですが、どのような書き方をするのが一番良いのでしょうか。
AND検索で
フィールド<500 AND フィールド>500
で目的な検索はできるのですが、
フィールド<>500
のような検索方法はありましたら教えてください。
マニュアルも調べてみましたが、わかりませんでした。
5を「検索条件を変更」ステップでいいのでは。
たいへんありがとうございました。
無事解決しました!!
P.S
失敗談ですが、
私もこれを使うのかなあと思いましたが、期待通りにならなかったのですぐ諦めました。
失敗の原因は
1.検索モードに切り替えて、
2。”検索条件を変更”にしていました。
検索モードに切り替え、検索実行、対象レコードの絞り込み、対象レコードの拡大 のステップで、検索条件の保存ができます。
選択 とは?1個のステップに保存可能なのは1条件のみですので、切り替えるには、複数のステップを作り、分岐するといいです。
ご返事ありがとうございました。
私の質問が明確で無かったためにたいへん失礼しました。
改めて
1.スクリプトステップで検索モードに切り替えます。
2.検索条件をキー入力で入れます。
3.スクリプトステップで”検索実行”をします。
4.検索した対象データをデータ処理をして、
5.再び検索モードに入りますが、この時 2で入力した検索条件を検索モードで表示させて再利用をしたいのです。
なお、
ステータスツールバーから検索すると、”保存済み検索”に自動保存されて検索条件の再利用ができます。
いつもたいへんお世話になっています。
検索条件の保存につきまして、スクリプトステップで検索条件の保存や選択が出来ますでしょうか。
ブラウズモードでは、保存済み検索でこの機能を使うことができることを確認していますが、
スクリプトステップでの方法がわかりません。
よろしくお願いします。hしくご指導ください。
可能ですよ。設定をやり直してみたらいかがでしょう。
Shin 様
今回もありがとうございました。
見直してみましたらインポート先のレコードを全表示していなかった為に、照合レコードが見つからなかったのが原因でした。
今後ともどうぞよろしくご指導ください。
いつもお世話になっています。
インポートの際の照合フィールドですが、複数のフィールドの指定ができるでしょうか。
例
フィールドが次のようであるとします。
年 月 顧客ID F1 F2 F3 .......
年、月、顧客ID を照合フィールドとして指定しましたが期待通りのデータのインポートができませんでした。
ただし、計算フィールドとして照合フィールド(年&月&顧客ID) とすれば期待通りのインポートができますが、インポート元のデータを変更しないといけないのでできることなら複数のフィールドの指定ができればと思っています。
いつもたいへんお世話になっています。
任意のフォーカスがあるフィールドのデータで、そのフィールドの全てのデータを置換したいと思います。
ローカルで”フィールド内容の全置換”を実行すると出来ますが、serverで実行するととても遅くなります。
そこで、”サーバー上のスクリプト実行”で行いたいのですがうまくいきません。
確認していること
ターゲットフィールドを指定して置換内容も指定して、”サーバー上のスクリプト実行”を行うと期待通り高速で出来ました。
よろしくお願いします。
自己レス
取り敢えず”サーバー上のスクリプト実行”で、フィールド名とデータを引数で渡して次の方法で行ったところ高速で全置換ができました。
Loop
フィールドを名前で設定[フィールド名 ; データ ]
end Loop
[ Generated in 0.009 seconds, 7 queries executed - Memory usage: 664.94 KiB (Peak: 703.84 KiB) ]