Filemaker 将用户名与表中的用户匹配

Filemaker 将用户名与表中的用户匹配,filemaker,Filemaker,我需要获取当前登录用户的帐户名,并将其与我的用户表中的用户进行匹配。然后我想获取该用户的关联团队ID 更严格地说,我有一个用户表,每个用户都有一个\uu pkUserID字段,对应于我在文件>管理>安全窗格中创建的帐户名。每个用户还拥有一个\ufkteamid。当用户创建新记录时,我希望将\ufkteamid设置为与当前登录用户相同的\ufkteamid 实现这一目标的最佳方式是什么 创建一个只包含一条记录的实用程序表。在此处创建一个全局字段以保存当前用户ID。 使用Get(AccountNam

我需要获取当前登录用户的帐户名,并将其与我的用户表中的用户进行匹配。然后我想获取该用户的关联团队ID

更严格地说,我有一个用户表,每个用户都有一个
\uu pkUserID
字段,对应于我在文件>管理>安全窗格中创建的帐户名。每个用户还拥有一个
\ufkteamid
。当用户创建新记录时,我希望将
\ufkteamid
设置为与当前登录用户相同的
\ufkteamid

实现这一目标的最佳方式是什么


创建一个只包含一条记录的实用程序表。在此处创建一个全局字段以保存当前用户ID。 使用Get(AccountName)在启动脚本中设置此ID字段。您可以使用全局变量,但如果以后要基于当前用户驱动关系,则需要一个全局字段

创建另一个全局字段(或变量)来保存团队ID。在启动脚本中也设置此字段,从登录用户上匹配的用户表中获取它。
在需要的表中的“团队ID”字段中从此字段设置自动输入计算。

小心使用帐户名,尤其是在使用Active Directory和外部身份验证时。以…身份登录是合法的

帐户名 accountname@domain donain\accountname

。。。get(accountname)函数将返回任何经过身份验证的字符串

通过解析Get(accountname)返回的字符串中的名称来解决这个问题,并使用它来查找用户记录,从而找到团队id


我制作了一个自定义函数来进行解析,以便在新的变化变得明显时更容易更新解析算法。

如何将UserID与Users表匹配?最简单的FileMaker方法是在全局用户ID和Users表中的pk字段之间创建关系。如果你知道SQL,你可以用ExecuteSQL函数获取匹配的团队ID。不幸的是,我不知道SQL。以下是我到目前为止的一些截图:实用程序表看起来不错,只是CurrentUserID不应该有自动输入。get(Accountname)由启动脚本放入此字段。实用程序表始终只有一条记录。在users表中建立实用工具CurrentUserID与UserID之间的关系。在CurrentTeamID的计算中使用该关系。