我有3个表(为清楚起见,我只列出了一些字段):
Table 1 (ID,Description1)
Table 2 (ID,Description2)
Table 3 (ID,Table1ID,Table2ID)
基本上我使用 Table 3 来创建多对多连接(并通过关系选项卡链接各种ID并设置要自动处理的ID字段) . 我希望能够使用 Table 1 中的所有记录创建布局,并允许用户在下拉列表中从 Table 2 中选择0到n个项目 .
到目前为止,我有一个包含 Table 1 描述1字段的布局,并尝试使用 Table 2 中的描述2字段放置一个门户 . 然后我通过检查器将控件样式更改为下拉列表,并将值从:属性更改为 Table 2 .
我不确定这是否可能或正确的方法 . 我希望Filemaker会使用关系图并创建必要的记录(基本上将 Table 3 中的条目链接在一起),但是我收到以下错误:“ This operation cannot be performed because one or more required related records are not available and cannot be created. ”
任何帮助将不胜感激,请在Filemaker新手上轻松一下:o)
2 回答
第一步是创建您的值列表(这不是关系图的一部分) . 您可以在文件>管理>值列表中执行此操作 .
您可以创建一个新的值列表并将其告诉 Use values from field (第一个无线电选项,未在图像中选择):
进入 Use values from field 对话框后,您可以选择同时显示第二个字段的值(id是第一个,描述是第2个),包括所有值,并且只显示第一个字段中的值(以隐藏用户的id) ) .
你是正确的,你的关系图将完成创建相关记录和填写密钥的工作 . 它应该如下所示:
在您的关系中检查' Allow creation of records in this table via this relationship '非常重要,具体如下:
正如您所说,您的布局基于表一,您的门户网站查看表三 . ' Show vertical scrollbar '将允许您创建无限数量的相关记录 . 如果未选择该选项,则仅限于门户网站中的行数 .
这就对了 . 保存布局,在表1中创建记录,您可以通过关系图创建相关记录,而无需编写脚本 .
您正在存储ID并显示说明 .
这几乎是正确的;你需要有一个表3的门户,允许通过这种关系创建记录,将Table3 :: Table2ID放在那里,并将其格式化为弹出菜单 . 菜单的值列表必须基于Table2并包括Table2 :: ID和Table2 :: Description2;你可能只希望显示第二列 .
从菜单中选择项目时,FileMaker将在Table3中添加具有所需ID的新记录(或者如果要修改行,则更改现有记录) .