みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FileMaker Pro 19
10件のレコードが日付順に並んでいます。
特定の日付で検索をすると、指定した日付のレコードが3件抽出されます。
そのまま、印刷用レイアウトに移ります。
印刷レイアウトには
・「日付フィールド」を設定しています。
・「ポータル」を設定していまのでポータル内には3件のレコード内容が表示されています。
しかし、同じ内容のページが同時に4枚作成されています。
1ページのみ表示をさせたいと思っています。
以前、同様のプログラムで最初のレコードに「○印」を付けて「絞り込み検索」をしていると、偶然にも実現できました。
しかし、今回、同様のスクリプトを行うと「○印」のついた1件のみの表示となってしまいます。
1ページのみ表示をすにはどのようにすれば良いかどなたか、ご教示お願いします。
Offline
印刷を行うとデフォルトでは対象レコードが印刷対象となります。
レイアウトが用紙1枚に収まるよう作られているなら4レコードあれば4ページ表示されるでしょう。
印刷時に対象を[現在のレコード]とすれば1ページだけ印刷されます。
これは[印刷]のスクリプトステップでも指定できます。
1ページだけ表示する(現在の1レコードだけ表示する)なら
主キーで検索するか、全レコードを表示>レコードを対象外に>対象外のみ表示とすればOKです。
印刷するときだけ1レコードにしたいなら新規ウインドウで実行すると良いでしょう。
Last edited by Moz (2021-02-26 23:46:13)
Offline
現在のテーブルのポータルを使ってるようなので、それをやめて普通のヘッダ&ボディのリストレイアウトにした方がいいのでは?
現状だと1日分が1ページを超えると印刷できなくなりますよね?
現状のままなら印刷時にページ指定で1ページ目だけ印刷すればいいですが、これはスクリプトに保存できなかった気がします。
現在のレコードを印刷 すれば、1枚だけ印刷されるはずですが。
Offline
Moz 様
himadanee 様
Shin 様
早速の返信ありがとうございます。
まどろこしい長文で失礼しますが、よろしくお願いします。
現在、稼働しているプログラムには280件分の訪問履歴があります。
1日におよそ2〜4箇所の訪問となっていますので、訪問日としては210日分ほどになります。
例)
2月1日 A社
2月1日 B社
2月1日 C社
2月5日 D社
2月5日 E社
2月5日 F社
まず2月1日で検索する場合
印刷用レイアウトに移る前、一番はじめのレコード(A社)のチェックフールドに「○」印を入れるようにしてあります。
別レイアウトに移り、日付フィールドで「2月1日」検索します。
日付の下部に設置している ポータル 内に A社、B社、C社が縦に並びます。
この時 A社、B社、C社が表示された書類(ページ)が同時に3枚作成されます。
そこで、「○」で絞り込み検索をして、最初の1ページ(A社、B社、C社が表示されています)のみ残るようになっています。(スクリプト)
しかし、現在作り直しているほとんど同様のプログラムでは、「○」で絞り込み検索をすると最初の1ページのみが残ります。その時のポータル内はA社のみとなります。これが、本来の動きだとは、思います。
しかし
前述しましたように、現行の別のプログラムでは、「○」で絞り込み検索設定で、最初の1ページのみ残り、しかもそのページにはA社、B社、C社が表示されているのです。そこで編集もできています。
そのプログラムでは、別のレイアウト「複数表示用」にはなりますが、2月1日から2月5日までの期間で検索すると、
1ページ目に、2月1日分はA社、B社、C社が表示され、
2ページ目には2月5日分がD社、E社、F社 と表示されます。
2月1日分1ページ、2月5日分1ページ、計2ページのみが表示されます。
昨年、大変苦労をして自作したものです。どのようにして実現したか思い出せませんが、スクリプトでは上手く動いています。プログラムを他人に分かりやするするため、リレーションなど整理しています。何度も絞り込み検索を試していますが、うまくいきません。
Moz 様 「 主キーで検索するか、全レコードを表示>レコードを対象外に>対象外のみ表示とすればOKです。」
であれば、やり方が、よく理解できていないのですが、3件分表示された1ページのみが残るのでしょうか?
himadanee 様 書式がきめられているので、普通のヘッダ&ボディのリストレイアウトでは対応は難しいです。
以上、ヒントなどありましたら、引き続き宜しくお願いします。
Offline
ポータルが「現在のテーブル」のになってるので、日付の自己リレーションにすれば「現行の別のプログラム」のようになります。
ただし、各日付ごとに1件○をつけて検索する手順になります。
「2月1日から2月5日までの期間で検索」で日ごとに1ページにするには、日付ごとに1件しかレコードがないテーブルで検索することになります。(スクリプトで日ごとに1件だけになるように絞り込みしてもいいですが)
印刷用のレイアウトを、明細側でリスト表示で作り、日付で抽出した結果を印刷すれば簡単に解決できますよね。
どうしてもポータルで印刷したいのですか。
Offline
himadanee 様 Shin 様
本当にありがとうございます。お二方のご指導誠にありがたく思っています。
1)印刷用レイアウトですが、やはりポータルでないと書式として成立しません。
2)日付の自己リレーションで解決するのですね。大いに参考になりました。
あれから、色々リレーションを比べておりました。リレーション、オカレンスTA?が理解できていないときに試行錯誤して作成したものですから、悩んでおりました。リレーション紐付けが少々異なっていることは発見しましたが、リレーションを貼り直しても上手くいかなかったので、とりあえず、旧プログラムで、印刷レイアウトのところをそっくり残して徹夜で変更し、なんとか動くようになりました。
新しいプログラムの方が全体的にスッキリしていますの、ご指導に従い、新しいバージョンに日付の自己リレーションを設定してみます。
ここからは、自力で解決に取り組んでまいります。
大きなヒントを与えてくださった、himadanee様、Shin様、本当にありがとうございました。
Offline
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 539.01 KiB (Peak: 543.55 KiB) ]