点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
您好,专家。
请告诉我,ItemSearch参数是否影响LMS的PRD报告中的字段聚合(在我的自定义报告中,聚合显示最后一个值)? 问题是,当我在导出报表时使用ItemSearch筛选器时,聚合开始无法正常工作,并且不显示最后一个值,而是显示第一个值。
请参阅数据集的查询文本:
选择不同
sc.stud_id为"Идентификаторпользователя",
(从PA_STUD_USER中选择USER_VALUE,其中s.STUD_ID = stud_ID,COL_NUM = 110)作为" LDAP",
s.LNAME ||' '|| s.FNAME ||' '|| s.MI为"Сотрудник",
sc.AP_ID为"Профильназначения",
s.JOB_TITLE为"Должность",
y.REGULAR_TEMP_DESC为"Отдел",
d.JL_DESC为"Магазин",
s.REGION_ID为"Регион",
sc.CPNT_ID为"Идентификаторпредмета",
c.CPNT_TITLE为"Названиепредмета",
空为"Учебнаяпрограмма",
c.CPNT_CLASSIFICATION为"Тип",
to_char((first_value(sr.START_DTE)OVER(PARTITION BY sc.SCHD_ID ORDER BY sr.START_DTE DESC)+间隔3小时),'DD.MM.YYYY')为"Датаначала",
to_char((first_value(sr.END_DTE)OVER(PARTITION BY sc.SCHD_ID ORDER BY sr.END_DTE DESC)+间隔3小时),'DD.MM.YYYY')为"Датаокончания",
NULL为"Датапрохождения",
sc.ASSGN_DTE为"Назначен",
NULL为"Пройден",
i.LNAME ||' '|| i.FNAME ||' '|| i.MI为"ФИОтренера",
c.CPNT_LEN为"Время",
空为"Балл",
first_value(g.TOTAL_TIMES)OVER(按sc.CPNT_TYP_ID,sc.CPNT_ID,sc.STUD_ID,sc.REV_DTE OR BY BY g.CREATE_DTE DESC划分)为"Количествозапусков"
FROM PV_STUD_COURSE sc
左联接PV_COURSE c on sc.CPNT_TYP_ID = c.CPNT_TYP_ID和sc.CPNT_ID = c.CPNT_ID和sc.REV_DTE = c.REV_DTE
左联接PA_STUDENT的on sc.STUD_ID = s.STUD_ID
d.JL_ID = s.JL_ID上的LEFT JOIN PA_JOB_LOC d
在y.REGULAR_TEMP_ID = s.REGULAR_TEMP_ID上左加入PA_REGULAR_TEMP y
左连接PS_SCHD_RESOURCES sr ON sr.SCHD_ID = sc.SCHD_ID
左加入PA_INST i ON i.INST_ID = sr.INST_ID
左联接PA_CBT_STUD_CPNT g ON sc.STUD_ID = g.STUD_ID和sc.CPNT_TYP_ID = g.CPNT_TYP_ID和sc.CPNT_ID = g.CPNT_ID和sc.REV_DTE = g.REV_DTE
左联接PA_CPNT_SUBJ sj ON sj.CPNT_ID = sc.CPNT_ID和sj.CPNT_TYP_ID = sc.CPNT_TYP_ID
sc.COMPL_DTE为空
/**和[UserSearch]中的s.STUD_ID
和[ItemSearch]中的(sc.cpnt_typ_id,sc.cpnt_id,sc.rev_dte)
[RegionSearch]中的和s.REGION_ID
和[安全性:PA_STUDENT s,PV_COURSE c,PA_CPNT_EVTHST sc]
*/
联盟
选择不同
s.stud_id为"Идентификаторпользователя",
(从PA_STUD_USER中选择USER_VALUE,其中sc.STUD_ID = stud_ID和COL_NUM = 110)作为" LDAP",
s.LNAME ||' '|| s.FNAME ||' '|| s.MI为"Сотрудник",
stc.AP_ID为"Профильназначения",
s.JOB_TITLE为"Должность",
y.REGULAR_TEMP_DESC为"Отдел",
d.JL_DESC为"Магазин",
s.REGION_ID为"Регион",
sc.CPNT_ID为"Идентификаторпредмета",
c.CPNT_TITLE为"Названиепредмета",
cq.QUAL_TITLE为"Учебнаяпрограмма",
c.CPNT_CLASSIFICATION为"Тип",
to_char((first_value(sr.START_DTE)OVER(PARTITION BY stc.SCHD_ID ORDER BY sr.START_DTE DESC)+间隔3小时),'DD.MM.YYYY')为"Датаначала",
to_char((first_value(sr.END_DTE)OVER(PARTITION BY stc.SCHD_ID ORDER BY sr.END_DTE DESC)+间隔3小时),'DD.MM.YYYY')为"Датаокончания",
NULL为"Датапрохождения",
sc.ASSGN_DTE为"Назначен",
NULL为"Пройден",
i.LNAME ||' '|| i.FNAME ||' '|| i.MI为"ФИОтренера",
c.CPNT_LEN为"Время",
空为"Балл",
first_value(g.TOTAL_TIMES)OVER(按sc.CPNT_TYP_ID,sc.CPNT_ID,sc.STUD_ID,sc.REV_DTE OR BY BY g.CREATE_DTE DESC划分)为"Количествозапусков"
从PA_STUD_QUAL_CPNT sc
sc.CPNT_TYP_ID = c.CPNT_TYP_ID和sc.CPNT_ID = c.CPNT_ID和sc.REV_DTE = c.REV_DTE上的LEFT JOIN PV_COURSE
左联接PA_STUDENT的on sc.STUD_ID = s.STUD_ID
d.JL_ID = s.JL_ID上的LEFT JOIN PA_JOB_LOC d
在y.REGULAR_TEMP_ID = s.REGULAR_TEMP_ID上左加入PA_REGULAR_TEMP y
在STc.CPNT_TYP_ID = sc.CPNT_TYP_ID和stc.CPNT_ID = sc.CPNT_ID和stc.REV_DTE = sc.REV_DTE和stc.COMPL_DTE = sc.COMPL_DTE和stc.STUD_ID =上的LEFT JOIN PV_STUD_COURSE stc >
左联接PS_SCHD_RESOURCES sr ON sr.SCHD_ID = stc.SCHD_ID
左联接PA_QUAL cq ON cq.QUAL_ID = sc.QUAL_ID
左加入PA_INST i ON i.INST_ID = sr.INST_ID
左联接PA_CBT_STUD_CPNT g ON sc.STUD_ID = g.STUD_ID和sc.CPNT_TYP_ID = g.CPNT_TYP_ID和sc.CPNT_ID = g.CPNT_ID和sc.REV_DTE = g.REV_DTE
左联接PA_CPNT_SUBJ sj ON sj.CPNT_ID = sc.CPNT_ID和sj.CPNT_TYP_ID = sc.CPNT_TYP_ID
sc.COMPL_DTE为空
/**和[UserSearch]中的s.STUD_ID
和[ItemSearch]中的(sc.cpnt_typ_id,sc.cpnt_id,sc.rev_dte)
[RegionSearch]中的和s.REGION_ID
和[安全性:PA_STUDENT s,PV_COURSE c,PA_CPNT_EVTHST sc]
*/
联盟
选择不同
sc.stud_id为"Идентификаторпользователя",
(从PA_STUD_USER中选择USER_VALUE,其中s.STUD_ID = stud_ID,COL_NUM = 110)作为" LDAP",
s.LNAME ||' '|| s.FNAME ||' '|| s.MI为"Сотрудник",
以"Профильназначения"为空,
s.JOB_TITLE为"Должность",
y.REGULAR_TEMP_DESC为"Отдел",
d.JL_DESC为"Магазин",
s.REGION_ID为"Регион",
sc.CPNT_ID为"Идентификаторпредмета",
c.CPNT_TITLE为"Названиепредмета",
cq.QUAL_TITLE"Учебнаяпрограмма",
c.CPNT_CLASSIFICATION为"Тип",
to_char((first_value(sr.START_DTE)OVER(PARTITION BY sc.SCHD_ID ORDER BY sr.START_DTE DESC)+间隔3小时),'DD.MM.YYYY')为"Датаначала",
to_char((first_value(sr.END_DTE)OVER(PARTITION BY sc.SCHD_ID ORDER BY sr.END_DTE DESC)+间隔3小时),'DD.MM.YYYY')为"Датаокончания",
sc.COMPL_DTE为"Датапрохождения",
空为"Назначен",
sc.CMPL_STAT_ID为"Пройден",
i.LNAME ||' '|| i.FNAME ||' '|| i.MI为"ФИОтренера",
c.CPNT_LEN为"Время",
sc.GRADE为"Балл",
first_value(g.TOTAL_TIMES)OVER(按sc.CPNT_TYP_ID,sc.CPNT_ID,sc.STUD_ID,sc.REV_DTE OR BY BY g.CREATE_DTE DESC划分)为"Количествозапусков"
FROM PA_CPNT_EVTHST sc
sc.CPNT_TYP_ID = c.CPNT_TYP_ID和sc.CPNT_ID = c.CPNT_ID和sc.REV_DTE = c.REV_DTE上的LEFT JOIN PV_COURSE
左联接PA_STUDENT的on sc.STUD_ID = s.STUD_ID
d.JL_ID = s.JL_ID上的LEFT JOIN PA_JOB_LOC d
在y.REGULAR_TEMP_ID = s.REGULAR_TEMP_ID上左加入PA_REGULAR_TEMP y
在STc.CPNT_TYP_ID = sc.CPNT_TYP_ID和stc.CPNT_ID = sc.CPNT_ID和stc.REV_DTE = sc.REV_DTE和stc.COMPL_DTE = sc.COMPL_DTE和stc.STUD_ID =上的LEFT JOIN PV_STUD_COURSE stc >
左连接PS_SCHD_RESOURCES sr ON sr.SCHD_ID = sc.SCHD_ID
在sqc.CPNT_TYP_ID = sc.CPNT_TYP_ID和sqc.CPNT_ID = sc.CPNT_ID和sqc.REV_DTE = sc.REV_DTE和sqc.STUD_ID = sc.STUD_ID和sqc.COMPL_DTE =上左加入PA_STUD_QUAL_CPNT sqc >
左联接PA_QUAL cq开启cq.QUAL_ID = sqc.QUAL_ID
左加入PA_INST i ON i.INST_ID = sr.INST_ID
左联接PA_CBT_STUD_CPNT g ON sc.STUD_ID = g.STUD_ID和sc.CPNT_TYP_ID = g.CPNT_TYP_ID和sc.CPNT_ID = g.CPNT_ID和sc.REV_DTE = g.REV_DTE
左联接PA_CPNT_SUBJ sj ON sj.CPNT_ID = sc.CPNT_ID和sj.CPNT_TYP_ID = sc.CPNT_TYP_ID
/**,其中[UserSearch]中的s.STUD_ID
和[ItemSearch]中的(sc.cpnt_typ_id,sc.cpnt_id,sc.rev_dte)
[RegionSearch]中的和s.REGION_ID
和[安全性:PA_STUDENT s,PV_COURSE c,PA_CPNT_EVTHST sc]
*/
请参阅汇总:
(30.0 kB)
您是否在PRD中预览了查询或在不进行汇总的情况下运行报表以查看正在汇总的数据? 我看了一下SQL,怀疑使用first_value()可能返回的数据不是您期望的。
检查联合的第三个查询。 汇总过滤条件为完成日期不为null。 联合的前两个查询的SC.COMPL_DTE的where子句为null,这意味着只有第三个查询才会生成适用于聚合的数据。
我建议您检查外部联接。 在我看来有些倒退。 例如,SR为PS_SCHD_RESOURCES的" I.INST_ID = SR.INST_ID上的PA_INST I左联接"仅给出查询结果存在于讲师表中的计划提供资源,因为左外部联接会获取讲师,无论是否存在匹配项。 预定产品资源。 我认为您想在SR.INST_ID = I.INST_ID上左加入PA_INST I,以便查询结果已计划提供数据,无论讲师中是否有匹配项。
我没有看到聚合属性表达式中显示的名称为"Статус"的查询列。 您最后想要得到什么? 如何定义组ID?
Jorge Campos
你好,豪尔赫
我在运行报表时没有汇总。 正确的数据已导出。
为确保错误不是由于错误的查询文本引起的,我创建了一个包含一个表的新报告。 该报告显示4个字段,其中2个是聚合的。 并且在此简单报告中,重复了相同的错误。
请查看新的数据集查询文本:
SELECT
sc.stud_id为"Идентификаторпользователя",
sc.CPNT_ID为"Идентификаторпредмета",
sc.COMPL_DTE为"Датапрохождения",
sc.CMPL_STAT_ID为"Пройден"
来自PA_CPNT_EVTHST sc
/**其中,[UserSearch]中的sc.STUD_ID
和[ItemSearch]中的(sc.cpnt_typ_id,sc.cpnt_id,sc.rev_dte)
和[安全性:PA_STUDENT s]
*/
请参阅Aggregation and Aggregation_1:
迈克尔,
我建议将PS_SCHD_RESOURCES和PA_CBT_STUD_CPNT中的列添加到用于检查基础数据的查询中。
尝试此查询。
您预览了查询结果还是使用了硬连线的"(SC.CPNT_TYP_ID,SC.CPNT_ID,SC.REV_DTE)"来运行报告 元组>)"? 我认为没有汇总列的报告包括计划的提供数据和在线跟踪数据以及项目的硬连线where子句可以帮助揭示导致差异的原因。
一周热门 更多>