2

我有一个Targets具有唯一 IDnumber和字段的表data。我想得到一个包含 in 的所有值的列表numberTargets所以这个列表(最好用逗号分隔)最终可以作为 Web 视图中的 JS 数组。

在 SQL 中,它会很简单

SELECT number FROM Targets

但是我在 FileMaker Pro Advanced 11 中找不到任何合理的方法。我认为该List功能可能是它,但由于某种原因,它不会列出我所有的行。

如果你能做相当于

SELECT number, data FROM Targets
4

3 回答 3

1

Targets表上,添加一个看起来像 javascript 数组文字的计算字段(例如ID Data Array ):

"[" & number & "," & data & "]"

在与Targets表出现(例如Targets All )具有跨产品关系的布局上,添加一个 Web 视图组件,其内容类似于以下计算内容:

"data:text/html,¶" &
"<!DOCTYPE html PUBLIC " & Quote ( "-//W3C//DTD XHTML 1.0 Strict//EN" ) & "¶" &
Quote ( "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" ) & ">¶" &
"<html xmlns=" & Quote ( "http://www.w3.org/1999/xhtml" ) & ">¶" &
"<head>¶" &
"<meta http-equiv=" & Quote ( "content-type" ) & " content=" & Quote ( "text/html; charset=utf-8" ) & " />¶" &
"<title>Table Data</title>¶" &
"<script type=" & Quote ( "text/javascript" ) & " src=" & Quote ( "script.js" ) & " ) & ">¶" &
"var dataArray = [ " & Substitute ( List ( Targets All::ID Data Array ) ; "¶" ; "," ) & "];¶" &
"</script>¶" &
"</head>¶" &
"<body>¶" &

"</body>¶" &
"</html>"

关键组件是这样的:

"var dataArray = [ " & Substitute ( List ( Targets All::ID Data Array ) ; "¶" ; "," ) & "];¶"

这使用List函数将所有相关的ID 数据数组字段整理到一个 ¶ 分隔的列表中。

然后它使用Substitute函数将 ¶ 字符替换为逗号,这样你就得到了一个很好的逗号分隔的数组列表。

最后,它将它包装在一个 javascript 变量声明中,这样您就可以在页面的其余部分中使用变量dataArray 。

于 2012-06-13T20:31:41.243 回答
0

如果您使用的是 FileMaker Pro 11,请使用其中一个 SQL 插件来查询自身。或者,升级到 v12 并使用新的 SQL 命令。

于 2012-06-11T02:03:35.057 回答
0

最简单的方法,可能看起来像一个黑客,但不是,是制作一个价值清单。设置一个值列表以显示“数字”中的所有值。FileMaker 会自动将所有值合并到一个由返回分隔的唯一值列表中。然后你可以通过运行计算得到列表:

 ValueListItems( Get(FileName) ; "AND-PUT-YOUR-VALUELIST-NAME-HERE")
于 2012-06-22T15:45:30.590 回答