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

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

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

You are not logged in.

Announcement

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


#1 2015-08-21 12:53:46

eddie
Member

ポータル行を区分ごとにまとめてHTMLに

お世話になっております。FMP11 Mac 使用です。

ちょっとややこしい話で恐縮です。

ポータルで、各行に「区分」と「商品名」が入力されています。

例えば

区分・・・商品名
1 ・・・ピアス
1 ・・・指輪
5 ・・・かばん
7 ・・・ドレス
7 ・・・カーディガン
7 ・・・ハイヒール

と入力されているときに、最終的にこれをHTMLで

区分:1<BR>
ピアス,指輪<BR>
<BR>
区分:5<BR>
かばん<BR>
<BR>
区分:7<BR>
ドレス,カーディガン,ハイヒール<BR>
<BR>

という形で書き出したいのですが、どのような方法があるでしょうか?

ポータルへの入力がすべて終わったタイミングでスクリプトを起動させる方法を考えていますが、HTMLを計算フィールドにする方法でも構いません。
よろしくお願いいたします。

Offline

#2 2015-08-21 15:00:44

calcer
Guest

Re: ポータル行を区分ごとにまとめてHTMLに

ポータル内に区分と商品名を連結するフィールドを作っておけば、全体は
Substitute ( List ( ポータル::連結 ) ; ¶ ; "<BR>¶" )

#3 2015-08-21 15:41:51

eddie
Member

Re: ポータル行を区分ごとにまとめてHTMLに

calcerさま

早速のご回答ありがとうございます。
理解度が低くてすみません、その方法だと商品ごとに区分と商品名が連結されてしまうように思います。

今回やりたいのは、区分1の商品がピアスと指輪である場合に、

■ 区分は一箇所だけ、
区分:1<BR>
とする、

■ 商品はその区分の直下にまとめて、
ピアス,指輪<BR>
とする、

ということでして、
要するに商品を区分単位でまとめてListにする方法と、そうしてListされた商品を区分とセットにして、HTMLのフィールドに繰り返して記述する方法を教えていただきたいのです。

区分:1<BR>
ピアス,指輪<BR>
<BR>

↑これがひとつの単位で、これを区分ごとに繰り返す必要があります。

わかりづらくて申し訳ありません。
引き続きよろしくお願いいたします。

Offline

#4 2015-08-21 16:50:21

チポ
Member

Re: ポータル行を区分ごとにまとめてHTMLに

スクリプトの考え方。

  ポータルの最初の行へ
  変数k = 区分
  変数t = "区分:" & 区分 & "<BR>¶" & 商品名   
  Loop
    If  区分 ≠ 変数k ?
      変数k = 区分
      変数t = 変数t & "<BR>¶<BR>¶" &  "区分:" & 区分 & "<BR>¶" & 商品名
    Else
      変数t = 変数t & "," & 商品名
    End If
    次のポータル行へ[最後まできたら終了]
  End Loop
  変数t = 変数t & "<BR>¶<BR>"

これで変数tにHTMLが作られます。

検証していません、
細かなところで間違えているかも、よく確かめてください。

Offline

#5 2015-09-13 05:33:05

eddie
Member

Re: ポータル行を区分ごとにまとめてHTMLに

チポさま

ありがとうございます。返信が遅くなってしまい申し訳ありません。

教えていただいたスクリプトを作ってみたのですが、以下の点でうまくいきません。

1.すべての商品をカンマで区切った商品名が、ポータル行分繰り返して表示されてしまいます。
質問文の例では、

区分:1<BR>
ピアス,指輪,ピアス,指輪,ピアス,指輪,ピアス,指輪,・・・

とポータル行分繰り返してしまいます。

2.区分ごとに同じ単位を繰り返したいのですが、一番上の区分しか処理できません。


せっかくここまで教えていただいたのであとは自分で何とかしようといろいろやってみたのですが、恥ずかしながら設定している変数の意味が十分にわからず、解決できませんでした。お手数ですが引き続きアドバイスいただけますと幸いです。

どうぞよろしくお願いいたします。

Offline

#6 2015-09-13 06:01:01

eddie
Member

Re: ポータル行を区分ごとにまとめてHTMLに

ちなみにですが、HTMLを計算フィールドにするパターンにも挑戦しようとLet関数で同様の処理をしようとしたのですが、スクリプトステップでない場合にLoop処理の方法がわからず断念しました。。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 7 queries executed - Memory usage: 558.3 KiB (Peak: 582.45 KiB) ]