点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我有一个报告,其中包含数据(学生姓,名,学生证和收集的分数总和),该报告按3个不同的列分组-诊所和学科以及学生证。 最终用户需要在运行时灵活地按任何列(学生的姓,名,学生ID和收集的分数)进行排序。 我无法使用参数和功能来执行此操作,因为收集的总和点被弄乱了,并且检索到的数据无效。
随附的报告设计副本。
此外,如果将学生的姓,名和学生ID串联在文本对象中,是否可以动态地进行相同的排序?
任何指导将不胜感激。
预先感谢,马里尼
grp-sort.jpg (74.4 kB)
您好,马里尼
请查看是否有效:
1。 使用以下代码创建一个名为" @SortFirstName"的公式:
如果{?Sort} ='FirstName',则{PRODUCER.FirstName}
2。 使用以下代码创建一个名为" @SortLastName"的公式:
如果{?Sort} ='LastName',则{PRODUCER.LastName}
3。 使用以下代码创建一个名为" @SortProviderID"的公式:
如果{?Sort} ='ProviderId',则{PRODUCER.Producer}
4。 使用以下代码创建一个名为" @SortRelValue"的公式:
如果{?Sort} ='RVU',则{GRADITEM.RelValue}
5。 转到"插入摘要"选项>选择@SortFirstName作为"要汇总的字段">选择"最大"作为"求和"功能>将摘要字段放在组页脚#3上。
6。 对@SortLastName和@SortProviderID字段重复步骤5。 确保汇总功能设置为"最大"。
7。 对@SortRelValue重复步骤5,但是,将摘要函数选择为'SUM'。
8。 转到"组排序专家">选择要进行排序的组(通常是最上面的组)>在"为此组排序"下选择"全部">在"基于"中的每个公式字段的下方添加一个 摘要列表>为每个功能选择升序还是降序。
-Abhilash
很棒的Abhilash !! 这个解决方案是多么救星。
再次非常感谢
马里尼
如果收集的总和是一个要转换为文本以进行排序的数字,则必须在左侧加'0'才能使其正确排序。 例如,如果该字段中的最大位数为3,则可以使用如下公式进行排序:
right('00'+ {MyTable.SumPoints},3)
这样,字符串始终包含3个字符,小于100的数字在开始时用0填充,使它们成为3个字符。
例如,如果将数字转换为 字符串,您将得到以下排序:
1
11
2
3
300
4
但是,如果您使用 0,您将得到以下排序:
001
002
003
004
011
300
哪个是正确的顺序。
此外,是的,您可以将名称附加在一起以进行排序,但是由于某些姓氏比其他名称具有更多的字符,因此您可能无法获得真正想要的排序,因此您必须在每个字段的右侧填充 带空格的值以获得正确的排序。 有点像数字示例,但是相反。
-Dell
谢谢克里斯蒂的快速回答,但是我该如何动态地做到这一点? 尤其是因为组排序顺序不显示任何列,而是"点数之和"。
您说您有一个用于此的参数。 您将创建一个返回字符串的公式,然后对该字符串进行排序。 公式如下:
Switch语句就像一组带有成对元素的if ... then ... else ...语句集。 每对中的第一个元素是要查找的条件,第二个是条件为真时的操作。 如果其他条件都不为真,那么最后的"真"就是该做什么。 如果学生ID字段以数字形式存储在数据中,而不是以字符串形式存储,则还必须将其转换为字符串-所有返回值必须为相同的数据类型。 查看ToText()的帮助以获取所有参数。
-Dell
您将在"公式编辑器"中创建公式,然后对其进行排序。 您可以张贴您正在使用的确切公式吗?
我已将公式添加到页面标题中,但排序不起作用。
一周热门 更多>