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

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

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

You are not logged in.

Announcement

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


#1 2019-06-20 18:32:19

Valon
Member

ExecuteSQL関数で任意の場所に改行

お世話になっております。

Win10
FM17です。

ExecuteSQL関数でデータを取得する際、
任意の場所に改行をいれるにはどうしたらよいでしょうか。

SELECT AAA , BBB , ここに改行 CCC

例えば
SELECT AAA , BBB , 'K' , CCC
としておき、あとから改行にしようとも試みましたが
どうもうまくいきませんでした。


よろしくお願いいたします。

Offline

#2 2019-06-20 19:21:32

koeda
Member

Re: ExecuteSQL関数で任意の場所に改行

ExecuteSQL ( "SELECT AAA, BBB,  CHR(13)+CCC FROM テーブル" ; "," ; ¶)
とか?

Offline

#3 2019-06-20 19:23:39

Hiro
Member

Re: ExecuteSQL関数で任意の場所に改行

SELECT AAA , BBB , ここに改行 CCC

SELECT AAA , BBB , '¶' + CCC

Offline

#4 2019-06-21 09:05:16

Valon
Member

Re: ExecuteSQL関数で任意の場所に改行

koeda様、Hiro様
ありがとうございます。

koeda様の方法ですと、変数に格納した際はデバッグで見ると正しく改行されていますが
変数をメール送信の本文に引用すると改行されません。


"メール本文" & $hennsuu


Hiro様の方法ですと'¶'がテキストとし見てられるため、デバッグ上でもメール上でも
テキストしてみなされています。


実際のコード
テキストを挿入 [選択; $SQL ; 「SELECT "AAA" , "BBB" , ここに改行 , "CCC" FROM "テーブル" WHERE "フィールド1" = ? AND "フィールド2" =? AND "フィールド3" <> 0」
変数を設定 [$SQL2 ; 値: ExecuteSQL ( $SQL ; " " ; "" ; $変数1 ; $変数2 )]
メールを送信 [ "メール本文" & $SQL2 ]
日本語テーブル、フィールドが多いため一時テキストを挿入としています。

引き続きよろしくお願いいたします。

Last edited by Valon (2019-06-21 09:06:30)

Offline

#5 2019-06-21 10:31:03

koeda
Member

Re: ExecuteSQL関数で任意の場所に改行

Hiroさんの方法を拝見して、私もなるほどと思っていました(^^ゞ

メール本文に貼り付けるばあいの改行は\r\nなので、私の方法ならば
SELECT AAA, BBB,  CHR(13)+CHR(10)+CCC FROM テーブル"
のように、LFも追加しないとダメですね。

Offline

#6 2019-06-21 12:44:12

Valon
Member

Re: ExecuteSQL関数で任意の場所に改行

koeda様
ありがとうございます。

意図した結果となりました。
そういった知識が足りず恥ずかしいばかりです。またお願いいたします。

Offline

#7 2019-06-21 14:17:46

Hiro
Member

Re: ExecuteSQL関数で任意の場所に改行

終わってますが、ちょっと補足しますネ。

・SELECT '固定値'+"フィールド"
   ↓
・SELECT ?+"フィールド"
みたいにココでも「?」動的引数(ダイナミックパラメータ)が使えます。
なので、標準のSQL'固定値'に、動的なFM'変動値'を代入でき、非常に便利です。

他の場合でも、SQL特性とFM特性を組合せると工夫次第で
結構高機能なことが楽に実現できたりします。

Last edited by Hiro (2019-06-21 18:25:47)

Offline

#8 2019-06-21 15:45:00

Valon
Member

Re: ExecuteSQL関数で任意の場所に改行

Hiro様
ありがとうございます。

フィールド名の変更があっても良いように変数化しておくぐらいしか私では思いつきませんが
記憶にとどめておきます。

SQLは昨日初めて触ったものでまだまだです。
ありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.010 seconds, 11 queries executed - Memory usage: 511.95 KiB (Peak: 516.49 KiB) ]