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

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

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

You are not logged in.

Announcement

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


#1 2022-05-31 03:29:01

nyoro
Member

複数ファイルにスクリプトでアカウントを追加

分離モデルでシステムを作成しています。

main.fmp12
data.fmp12
master.fmp12

main.fmp12 に担当者マスタ(master.fmp12)を表示する担当者レイアウトがあり、レコード:Aさんから

login_name : Aさん
login_pass : password
login_kengen : 閲覧のみ

というフィールドを作成して、アカウント追加スクリプトを実行すると、main.fmp12に loginnameのアカウントが追加されます。

これを同じ様にdata.fmp12、master.fmp12も同じ様にアカウントを追加したいのですが、うまく行きません。

data.fmp12、master.fmp12にも同じレイアウトを作成して、アカウント追加スクリプトを実行しても、Aさんのデータをうまくとれません。
どのようにリレーションすれば良いのでしょうか?

Win,mac混合 FMP19です。ご教授よろしくお願いします。

Offline

#2 2022-05-31 08:37:23

himadanee
Guest

Re: 複数ファイルにスクリプトでアカウントを追加

リレーションでなくスクリプト引数で渡せばいいのでは?
レイアウトは不要でしょう。

#3 2022-05-31 08:44:21

Shin
Member

Re: 複数ファイルにスクリプトでアカウントを追加

まず、それを実行するアカウントで、スクリプトが動くかどうかを確認しましょう。
そのスクリプトが、管理者権限で動いていることを確認しましょう。
同じオカレンスでのレイアウトがあったとしても、対象レコードは引き継ぎませんので、新たに選択します。スクリプト引数で渡すので、簡単ですよ。

Offline

#4 2022-05-31 09:17:10

nyoro
Member

Re: 複数ファイルにスクリプトでアカウントを追加

himadanee様、Shin様、ありがとうございます。
スクリプト引数で、担当者マスタのIDを渡し、各ファイルのレイアウトでそのIDの担当者を検索し、アカウントを作成するのはできました。

ただhimadanee様のレイアウトが不要というのがわかりません。レイアウトなしにするには、どのような引数を渡すのでしょうか?
スクリプト引数で、2つ以上(loginname,loginpass)を渡せるのでしょうか?

Last edited by nyoro (2022-05-31 09:20:07)

Offline

#5 2022-05-31 10:09:50

nyoro
Member

Re: 複数ファイルにスクリプトでアカウントを追加

GetField ( master_tantosha::loginname )  & "¶"  &
GetField ( master_tantosha::loginpass )  & "¶"  &
"管理"

とスクリプト引数に渡して、受け取り側は、


変数を設定 [$引数1; 値:GetValue(Get(スクリプト引数);1)]
変数を設定 [$引数2; 値:GetValue(Get(スクリプト引数);2)]
変数を設定 [$引数3; 値:GetValue(Get(スクリプト引数);3)]

としましたが、

GetField ( master_tantosha::loginname )が?になります。

Offline

#6 2022-05-31 10:40:02

himadanee
Guest

Re: 複数ファイルにスクリプトでアカウントを追加

main.fmp12 に担当者マスタ(master.fmp12)を表示する担当者レイアウト
で必要な値を取得(GetField関数は不要です。フィールド名だけでフィールド値が参照されます)
それを各ファイルのスクリプトに引数で渡します。(3つ渡す方法は自己解決済みですね。改行のないデータは、その方法でOK)

試してませんけど、アカウント関係のスクリプトステップはレコードと無関係なので、どのレイアウトでも実行できますよね?

#7 2022-05-31 11:07:32

nyoro
Member

Re: 複数ファイルにスクリプトでアカウントを追加

ありがとうございます。理解できました。

Offline

#8 2022-05-31 12:21:47

Shin
Member

Re: 複数ファイルにスクリプトでアカウントを追加

最近は、JSON で渡すのが流行ですが、ちょっと古い方法で。

"$引数1" & " = " & master_tantosha::loginname  & " ;¶"  &
"$引数2" & " = " & master_tantosha::loginpass  & "; ;¶"  &
"$引数3" & " = " & "管理"

を引数で渡します。
スクリプト側では、最初のステップで、
変数を設定 [ $dummy ; 値:Evaluste ( "Let ([" & Get(スクリプト引数) & "]; 0 )" )]
を設定します。
その後、$引数1、$引数2、$引数3 が設定されていますので、アカウントを作成 が実行できます。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 7 queries executed - Memory usage: 516.13 KiB (Peak: 520.67 KiB) ]