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

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

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

You are not logged in.

Announcement

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


#1 2015-07-04 22:09:59

tester
Guest

リレーション、ExecuteSQLにおける空白桁数揃えについて

リレーション、ExecuteSQLにおける空白桁数揃えについて、いくつかアドバイスをお願いします。
*説明を簡略化するために、意味あるテーブル定義ではないですが、ご容赦下さい。

▼Aテーブル構成は以下 (自己リレと日付リレーション)
・日付(タイプ:日付)
・内容(タイプ:テキスト)
・名前(タイプ:テキスト)
・名前_桁数(タイプ:計算) = Length(名前)
・名前_桁数MAX (タイプ:計算) = MAX (自己リレ::名前_桁数)
・フォロー全体(タイプ:計算) =  Left ( 名前 & "          (全角空白)";名前_桁数MAX+1 ) & 内容

・LIST_日付毎 (タイプ:計算) = List (自己リレ::フォロー全体)
・SQL_日付毎 (タイプ:計算) = ExecuteSQL ( "SELECT \"フォロー_全体\" FROM A WHERE \"日付\" = ?";"";"";日付 )

▼例:以下それぞれレコードに値が入っているとします。
・1レコード目 日付:2015/07/01 名前:赤木  内容:新規案件
・2レコード目 日付:2015/07/01 名前:佐々木 内容:アポ

-------

▼質問1
LIST_日付毎の結果:
赤木 新規案件
佐々木 アポ

上記のように、名前の桁数が同じでない場合、縦列が揃わず、ずれてしまいます。
これを空白で縦列を揃える手法がお聞きしたいです。実際にはカレンダーで利用しようと考えています。

▼色々と試行錯誤してみたのですが、以下の方法で何とかできました。
・フォロー全体(タイプ:計算) = 
元:Left ( 名前 & "          (全角空白)";名前_桁数MAX+1 ) & 内容
変:Left ( 名前 & TextColor ( "_________(全角アンダー)" ; RGB ( 255;255;255 ) );名前_桁数MAX+1) & 内容

上記に変更すると、
・LIST_日付毎 に関しては何とか出来ました。
・SQL_日付毎 の場合、この方法だと全角アンダー部分が白色化せずに、____が残ってしまいます。

赤木__新規案件
佐々木_アポ

*そもそも、もっと良い方法、もっと簡略化できると思うのですが悩んでおります。

#2 2015-07-05 03:14:09

tester
Guest

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

FM12始人様、ありがとうございます。実際してみたら分かるのですが、全角空白だとなぜかズレます。
苗字文字数は桁数計算で出来てるので、それを空白にあてがってるのですが
なぜか全角空白だとずれてしまい、全角アンダーライン他だと綺麗に縦列が並んでくれます。

ん~という感じです。

#3 2015-07-05 07:59:44

wader
Member

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

字数が同じで長さが揃わないのは、フォントのせいでSQLとは無関係では。

Offline

#4 2015-07-06 09:14:11

calcer
Guest

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

フォントを変えたくなければ、スペースでなくChar(9)を1つ入れて、表示するフィールドでタブ位置を設定すればそこに揃います。

#5 2015-07-06 09:50:32

チポ
Member

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

もう一つ、

ブランクがダメなら、その代わりに

TextColor関数
で背景色にした、適当な文字を入力。

Offline

#6 2015-07-07 09:04:20

barikan
Guest

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

表示上揃えたいということなら空白で位置調整しなくても
計算繰り返しフィールドに展開すると簡単です。

#7 2015-07-13 23:47:35

tester
Guest

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

皆様、ご意見ありがとうございます。返信遅くなり申し訳ございません。
フォントを他利用しましたが、結果が変わらなかったので、何かいいフォントがあるのでしょうか。
Charについては利用したことなかったので、触ってみます。
TextColor関数でした場合、SQLで取得した値では無効化されてしまいました。
計算繰り返しフィールドに展開すると簡単とのことなので、表示上ずれてるのが気持ち悪いと営業から言われたので、
なんとかしたいなという事でした。

皆様ありがとうございました。

#8 2015-07-14 12:32:30

calcer
Guest

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

SQLではデータしか扱いませんから、データ内の書式は無視されます。
連結しないで取得してから加工します。
ExecuteSQL ( "SELECT \"名前,\","内容\" FROM A WHERE \"日付\" = ?";Char(9);"";日付 )

#9 2015-07-14 22:34:48

tester
Guest

Re: リレーション、ExecuteSQLにおける空白桁数揃えについて

calcerさん、おっしゃる形にすれば、よほど長い苗字でない限り問題ない範囲でできました。
助かりました!

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: 517.46 KiB (Peak: 522 KiB) ]