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

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

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

You are not logged in.

Announcement

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


#1 2018-08-17 09:47:25

moyarin
Member

1レイアウトで2テーブルの情報を印刷したい

FM16を使っています。

テーブルの値を全て表示して印刷するのに、リスト形式のボディにフィールドを設定していました。
これでテーブルの内容を全て印刷する事ができました。

やりたい事は、テーブルが2つあります。テーブルAとテーブルBとします。

テーブルAの値を全て表示した後に数行のコメントを入れてテーブルBの値を全て表示して印刷したいです。

このような事はリスト形式だと難しいと思うのですが、何か解決する方法はあるでしょうか?

Offline

#2 2018-08-17 11:44:52

チポ
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

テーブルAとBの間で改ページしたくない。

ということでしょうか?


二つのポータル
とか、
テーブルAのリストのフッタにBのポータルを配置
とか考えられますが、
ポータルの途中で改ページが入るとうまくないかな。

Offline

#3 2018-08-17 12:50:53

Hiro
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

グローバルフィールドに目的の印刷内容をExecuteSQL関数式でマージ合成して、
その結果を印刷に掛ける、のは?

その時の式案は、
List(
   ExecuteSQL("SELECT ""フィールドA"" FROM ""テーブルA"" "; ""; "¶")
   ;
   "数行の任意コメント内容をココに記述"
   ;
   ExecuteSQL("SELECT ""フィールドB"" FROM ""テーブルB"" "; ""; "¶")
)

Last edited by Hiro (2018-08-17 13:08:00)

Offline

#4 2018-08-17 13:43:11

Shin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

別テーブルを作り、テーブルAとテーブルBのリレーション可能なキーを設定します。フィールドは、適宜重ねておいてもいいでしょうし、計算フィールドでもいいです。
そのレイアウトで印刷をすればいいですね。

Offline

#5 2018-08-17 15:38:31

moyarin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

紙の帳票を印刷したいですが、イメージは下記の感じです。レコード数は変動します。

●タイトル
<テーブルAの内容>
レコード1
レコード2
レコード3
...

<テーブルBの内容>
レコード1
レコード2
レコード3
...
<完了>

Offline

#6 2018-08-17 15:39:19

moyarin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

チポさん

テーブルA、B共にレコード数が可変するので、ポータルは使えないと思っています。
フッタにテーブルBのレコードですか、ちょっと試してみます。ありがとうございます。

Offline

#7 2018-08-17 15:45:12

moyarin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

Hiroさん

ExecuteSQLですか。難易度があがりました(汗)
ListにテーブルAとコメントとテーブルBのデータを入れるのは何となく理解しました。
一度ExecuteSQLを勉強して試してみます。ありがとうございます。

Offline

#8 2018-08-17 15:48:08

moyarin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

shinさん

テーブルA、テーブルBにIDというフィールドを作りました。
別テーブルをテーブルCとした場合、テーブルC.IDとテーブルA.id、テーブルC.IDとテーブルB.IDを結ぶということでしょうか?

Offline

#9 2018-08-17 15:55:28

あると
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

作業テーブルCを作る方法もあるかと。
テーブルデータを削除(=全レコード表示、対象レコード削除)
テーブルAからレコード取込
新規レコード追加(1行空ける)
テーブルBよりレコード取込

対象となるレコード数がさほど多くない場合、フィールド構成が同じような場合であれば可能かと思われます。

Offline

#10 2018-08-17 17:03:39

Shin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

こんな形でいいでしょうか。
https://www.dropbox.com/s/j6hexsmzgrah7 … 7.zip?dl=0

Offline

#11 2018-08-17 17:50:30

moyarin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

あるとさん
なるほど、他のフィールドを取り込む方法があるんですね。知りませんでした。
一度挑戦してみます。ありがとうございます。

Shinさん
ファイルまで作っていただいて感謝です!とても参考になります。
やりたかった事はこのようなことですが、テーブルAの内容と
テーブルBの内容をどのようにテーブルCで取り込むことができるのでしょうか?
スクリプトやリレーションを見てみましたがわかりませんでした。

Offline

#12 2018-08-17 18:08:13

Shin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

それぞれの ID を取り込んで、リレーションを張っているだけですよ。両方のテーブルのフィールド内容を & でつないでおいてもいいのですが、厳格に客テーブルから取り込む計算フィールドになっています。

Offline

#13 2018-08-17 18:10:51

チポ
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

ポータル行を必要より多めに作っておいて、
スライドさせれば空白行は印刷されませんよ。

Offline

#14 2018-08-17 18:21:10

Hiro
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

>#1 『テーブルAの値を全て表示した後に数行のコメントを入れてテーブルBの値を全て表示して印刷したい』
他の方の提案は、「コメント文の中間挿入」の実装が出来ないか、非常に難しいですが、良いのでしょうか?

Offline

#15 2018-08-17 18:36:35

チポ
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

私のはどうにでもなりますよ。

ポータルがページをまたぐ場合が致命的ですが  ;;;


Hiroさんのは、
複数フィールドになった場合、レイアウトに苦労するのでは。

Offline

#16 2018-08-17 20:14:32

Hiro
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

「全て」の意味が、全レコードばかりでなく、
全フィールドも指しているとしても、一向に構いません。
全フィールドなら、ワイルドカードで一発指定できますし、
1フィールドの場合無視してたフィールド間セパレータの
使用文字を指定するだけのことす。
※ 計算式だけに、自由度はダントツにあると思います。

● →  ExecuteSQL("SELECT * FROM ""テーブルA"" "; "セパレータ文字"; "¶")


++補足++
>#15 『複数フィールドになった場合、レイアウトに苦労するのでは。』
もしかして真意は、表組デザイン要求などの場合の型崩れのことでしょうか?
その場合は、やむなくバーチャルリストテーブルへの持ち替えで対応できますが、
コメント挿入部の特例扱いに多少工夫が必要ですネ。

Last edited by Hiro (2018-08-17 22:48:16)

Offline

#17 2018-08-18 08:48:09

Shin
Member

Re: 1レイアウトで2テーブルの情報を印刷したい

各グループごとにコメントを入れられる構造が、ごく簡単に作れますよ。
サンプルでも、中間のコメントは自由に入れることができます。可変にするのでしたら、別のテーブルで管理することも簡単です。

Last edited by Shin (2018-08-18 09:10:59)

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 9 queries executed - Memory usage: 577.38 KiB (Peak: 594.28 KiB) ]