Filemaker计算以在列表中正确显示逗号

0 filemaker

我有一个项目列表,如果它们被标记,我需要在报告中显示.正如您在下面的代码中看到的,它只不过是用逗号分隔的数字列表.问题是如果#1不在列表中,则列表前面总是以逗号开头.我可以将逗号移到最后但是如果它不是我计算中的最后一个数字,那么在最后一个数字之后我会遇到同样的问题.有没有人知道如何调整这个,所以逗号只出现在数字之间?如果我能在最后一个数字之后获得一段时间,那将会很棒.

//备件计算

如果($ {1} ="备用"且panelSize≥1;"1";"")&

如果($ {2} ="Spare"且panelSize≥2;",2";"")&

如果($ {3} ="Spare"且panelSize≥3;",3";"")&

如果($ {4} ="Spare"且panelSize≥4;",4";"")&

Sam*_*num 5

您可以使用此List功能,因为它排除了空项目.只需将您的数字和空字符串作为参数传递给List,然后用逗号替换换行符,并在nend上添加句点.

Substitute ( List("1" ; "" ; "3" ; "4") ; "¶" ; ", ") & "."
Run Code Online (Sandbox Code Playgroud)

以上结果如下:

1, 3, 4.
Run Code Online (Sandbox Code Playgroud)

在您的示例中,您可以将Case语句用作List的参数:

Substitute ( List(
     Case ( ${1} = "Spare" and panelSize ? 1 ; "1" ) ;
     Case ( ${2} = "Spare" and panelSize ? 2 ; "2" ) ;
     Case ( ${3} = "Spare" and panelSize ? 3 ; "3" ) ;
     Case ( ${4} = "Spare" and panelSize ? 4 ; "4" ) ;
) ; "¶" ; ", ") & "."
Run Code Online (Sandbox Code Playgroud)