使用特殊查询创建复杂查询

Objective

After completing this lesson, you will be able to 使用特殊查询中的附加选项创建复杂查询

复杂查询

报表期间使您能够确定检索对象的起始期间。系统搜索具有有效信息类型记录的对象,这些记录符合您指定的期间内的选择条件。

报告期间还会影响数据输出(人员和数据选择期间)。如果需要,可以在选择屏幕上分隔这些时间期间。您可以通过添加附加报表条件来创建复杂查询。您还可以运行统计报表,例如,居住在城市中的人数。

以下示例显示如何确定报表期间:

提示

系统始终选择在报表期间内的任何点存在有效记录的所有对象。例如,如果您报告整年,系统会选择在该年度中至少一天属于组织单位 1000 的员工。

时间限制

信息类型的时间约束会影响输出清单的内容。进行选择时,系统会确定在报表期间是否存在满足选择条件的任何对象。

执行输出时,系统会输出所选对象存在的所有有效记录。如果报告关键日期的数据,则会根据为信息类型指定的时间约束及其可能的子类型输出不同的记录数。

信息类型时间约束包括以下报告结果:

时间约束 1:
每个对象输出一行,因为系统始终只包含一个有效的信息类型记录(例如,信息类型 0002 个人数据)。
时间约束 2:
每个对象输出一行,因为系统只能包含一个有效的信息类型记录(例如,信息类型 0050 时间记录信息)。
时间约束 3:
系统可以同时包含多个有效的信息类型记录。因此,有效记录的数量确定为每个对象输出的行数(例如,信息类型 0023其他/先前雇主)。
具有不同时间约束的子类型:
如果信息类型具有子类型,则子类型的时间约束可以确定每个子类型存在不同的记录数。因此,存在的记录数决定了每个对象输出的行数。
例如,选择居住在纽约的所有员工。您的选择列出了居住在纽约的所有人员。如果随后包括员工的临时住所,将为每个有效的临时住所输出一行;例如,纽约永久住所(时间约束为 1 的子类型)和伦敦、柏林和沃尔多夫的临时住所(时间约束为 3 的子类型)。

重用查询

创建查询时,可以在查询范围、用户组和信息集之间切换。如果已将您分配到用户组,则可以保存查询。查询自动对属于同一用户组的所有用户可用。

如果您经常使用相同的选择条件但不同的值执行报表,建议您保存查询而不指定值。保存前不要在值和选项字段中输入数据。

如果您经常使用相同的选择条件和相同的值执行报表,建议您保存包含值的查询。

可以从以下源访问保存的查询:

特殊查询:
如果从特殊查询访问保存的查询,则可以执行、更改或以更改的形式或以新名称保存。
SAP 查询:
SAP 查询可用于继续编辑已保存的查询。如果要在 SAP 查询中使用特定的输出功能,例如输出清单中的汇总级别或颜色,建议您在 SAP 查询中继续编辑。
菜单:
您可以从分配给用户的角色菜单中访问保存的查询。

警告

查询的技术名称不得超过 14 个字符,并且不能包含除下划线和连字符以外的任何特殊字符。例如,可以保存包含期间的查询,但不能再次访问。

创建具有特定报表期间的报表

业务示例

您需要具有特定报表期间的 HR 主数据报表,因为任何标准报表都无法满足您的要求。

使用特殊查询创建标准员工清单报表。

步骤

  1. 使用信息集 PA_## 、标准范围(客户端特定)工作区和 S4HR58## 用户组定义新查询。查询必须使您能够确定人事范围 CABB 中的哪些员工是在 2024 年雇用的(活动类型 Z0,操作原因 Z0)。该清单必须包括员工号、名字、姓氏和入职日期。使用其他期间作为报表期间(2024 年 1 月 1 日至 2024 年 12 月 31 日)。使用名称 GR##_AHQ_4 保存查询。

    1. SAP 轻松访问屏幕上,选择人力资源 → 信息系统 → 报表工具 → 特殊查询

    2. 在信息集查询屏幕上,选择查询 → 新建。在创建新查询 – 信息集选择屏幕上,在工作区字段中选择标准范围(客户端特定),然后在用户组字段中选择 S4HR58## 。选择信息集 PA_## ,然后选择继续

    3. 字段组/字段部分中,打开个人数据字段组,然后选择姓氏名字作为输出字段。

    4. 打开操作字段组,选择录入日期作为选择字段和输出字段,并选择操作类型和操作原因作为选择字段。

    5. 打开组织分配字段组并选择人事范围作为选择字段。

    6. 输入以下值:   

      字段名称价值
      人事范围CABB
      操作类型Z0 雇用基础 PA
      输入日期01.01.2024 到 12.31.2024 
      操作原因Z0(新雇用)
    7. 选择报告期间按钮,然后选择其他期间。输入 01.01.202412.31.2024。要选择合适的人员,请选择搜索结果清单按钮

    8. 选择输出

      返回信息集查询(查询组 S4HR58##)屏幕,然后选择查询另存为。在保存查询屏幕的名称和标题字段中输入 GR##AHQ4然后选择继续

    9. 返回至 SAP 轻松访问屏幕。

创建统计报表

业务示例

人力资源主数据需要特殊统计报表,因为任何标准报表都无法满足您的要求。

定义允许您报告属于人事范围 CABB 的所有员工的新查询。使用人事范围在此练习中选择对象;不要通过组织结构选择对象。使用名称 GR##_AHQ_5 保存查询。

提示

  • 在用户组 S4HR58## 的标准区域(客户端特定)进行这些练习。
  • 除非另有说明,否则使用信息集 PA_## 。除非另有说明,否则使用今天作为报告期间。

步骤

  1. 显示统计,显示有多少员工属于人事范围 CABB。

    1. SAP 轻松访问屏幕上,选择人力资源 → 信息系统 → 报表工具 → 特殊查询。

    2. 要创建新查询,请选择 查询新建 。

    3. 创建新查询:信息集选择屏幕上,缺省情况下输入工作范围和用户组。选择信息集 PA_## 。选择继续。

    4. 字段组/字段部分,打开组织分配字段组。选择人事范围作为选择字段和输出字段。在人事范围字段名称的值字段中输入 CABB。通过选择搜索结果清单按钮开始选择。

    5. 在组织分配字段组中,选择人事子范围作为输出字段。

    6. 选择编辑 → 设置。在设置对话框的输出标签页上,选择统计作为输出清单的类型。

    7. 选择继续

    8. 选择输出按钮

    9. 返回信息集查询(查询组 S4HR58##)屏幕,然后选择查询另存为。在保存查询屏幕的名称和标题字段中输入 GR##AHQ5然后选择继续

生成带有分级清单的报表

业务示例

使用特殊查询,您需要具有人力资源主数据分级清单的特殊报表。

定义一个新查询,允许您报告属于人事范围 CABB 的所有员工。使用人事范围在此练习中选择对象;不要通过组织结构选择对象。使用名称 GR##_AHQ_6 保存查询。

步骤

  1. 显示分级清单,为属于人事范围 CABB 的员工指定五个最常用的居住城市。使用名称 GR##_AHQ_6 保存此查询。显示分级清单选项。哪个是最受欢迎的城市,哪个是排名榜单中第二受欢迎的城市?

    1. 转到上次查询的特殊查询的初始屏幕。删除人事子范围输出字段。

    2. 字段组/字段部分,打开地址字段组并选择城市作为输出字段。

    3. 选择编辑 → 设置

    4. 在设置对话框中,选择输出标签页。选择分级清单作为输出清单类型。

    5. 统计/分级清单标签页上,输入指定的排名数 5

    6. 选择继续

    7. 选择输出

    8. 返回信息集查询屏幕,选择查询另存为并输入名称 GR##AHQ6 以保存查询。

    9. 停留在此屏幕上。

使用逻辑数据库 PNPCE 和 PCH 中的信息集创建查询

业务示例

您需要使用特殊查询,根据逻辑数据库 PNPCE 和 PCH 中的信息集为人力资源主数据准备报表。

步骤

  1. 在本练习中更改为信息集 PAQ_## 。输出属于人事范围 CABB 的员工清单。清单应包含以下信息:

    • 员工号
    • 姓氏
    • 名字
    • 资格(名称) 

    提示

    根据姓氏或资格对列表进行排序。将查询另存为 GR##AHQ7
    1. 要切换信息集,请选择查询 → 新建。出现创建新查询 – 信息集选择对话框。

    2. 选择信息集 PAQ_## 。

    3. 选择继续。所选信息集显示在选择树中,您可以使用它来定义查询。

    4. 字段组/字段部分,打开组织分配字段组并选择人事范围作为选择字段。在人事地区字段名称的值字段中,输入 CABB

    5. 打开个人数据字段组并选择姓氏名字作为输出字段。

    6. 打开资格字段组并选择资格名称(名称)作为输出字段。检查输出预览中输出字段的顺序。如有必要,添加员工号(仅值)作为第一列。

    7. 选择输出。返回到 PAQ_## 屏幕。

    8. 通过选择查询另存为来保存此查询,然后在保存查询对话框中输入名称 GR##AHQ7 并选择继续

    9. 返回至 SAP 轻松访问屏幕。