みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
こんにちは。
テーブルA テキスト、チェック結果
テーブルB キーワード
という3つのフィールドがあります。
ここから、スクリプトで
「テーブルAのテキスト欄に、テーブルBのキーワードが含まれていたら、チェック結果に「1」を入力する」
という事をやりたいのですが、全く分からず困っております。
FM歴1ヶ月、環境はWin7、FMP11です。
よろしくお願いします。
Aのテキストの一部がキーワードと一致
でしょうか?
それとも
テキスト = キーワード
でしょうか?
前者の場合、
テキストとキーワードはどのような文字列?
この場合は、
チェック結果は計算フィールドでは無理だと思いますよ。
Offline
チポさん
ご返信ありがとうございます。
「Aのテキストの一部がキーワードと一致」になります。
>テキストとキーワードはどのような文字列?
「ひらがな」「漢字」「全角カタカナ」になります。
お尋ねしたのは
複数の単語
短い文章
長ーーい文章
とかでした;;;
取りあえず、、
テーブルBからテーブルAへ部分一致のリレーションをして、
関連レコードへ移動(対象レコードの照合)
でテーブルAのレコードを絞り込んで、チェック結果に全置換で入力。
で出来ると思いますよ。
部分一致のリレーション法は過去スレを参照してください。
https://fm-aid.com/bbs2/viewtopic.php?id=1083
Offline
チポさん
回答ありがとうございます。
Re: 検索キーワードのリスト化
>お尋ねしたのは
> 複数の単語
> 短い文章
> 長ーーい文章
>とかでした;;;
すみません、私も変だなとは思ったのですが、そのまま回答してしまいました(笑)
お陰様で前方一致のリレーションで移動する所までは上手く行きました!
が、
>繰り返しフィールドにして、商品名称の
> 右から1文字
> 右から2文字
> 右から3文字
> ・・・
>と全て入力して、これと照合します。
この部分が理解出来ませんでした。
これはどのように設定すれば宜しいのでしょうか。
質問ばかりですみません。
よろしくお願いします。
テーブルAのテキストフィールドの値を
「この部分が理解出来ませんでした」
とします。
これを計算フィールド・繰り返しに
この部分が理解出来ませんでした
の部分が理解出来ませんでした
部分が理解出来ませんでした
分が理解出来ませんでした
が理解出来ませんでした
・・・(略)
でした
した
た
このように入力します。
繰り返しの上下逆でも可です。
このフィールドと前方一致の照合をすると、
部分一致のリレーションとなります。
Offline
チポ様
ご説明ありがとうございました。
ただ、私の知識レベルが足りない為か、
どの画面からどのように設定をすれば良いのか
さっぱり分かりませんでした。
申し訳ありませんが、もしよろしければ、もう少し詳しくご教授頂けますでしょうか。
よろしくお願いします。
テーブルAで計算フィールドを作り、
その計算式
Right ( F01[1] ; Get ( 計算式繰り返し位置番号 ) )
として、
繰り返し数をテキストフィールドに入力される最大文字数より大きくします。
この式のままでは、
テキストの文字数より大きな繰り返しに同じ値が並びますから、
Case ( Get ( 計算式繰り返し位置番号 ) ≤ Length ( テキスト[1] ) ; Right ( テキスト[1] ; Get ( 計算式繰り返し位置番号 ) ) )
としたほうがいいかな。
このフィールドに対して、
テーブルBから前方一致のリレーションをします。
Offline
Pages: 1
[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 520.45 KiB (Peak: 525.35 KiB) ]