使用信息集切换

Objective

After completing this lesson, you will be able to 概述由查询生成器处理的信息集切换

信息集切换

如果使用通用报表工具,例如 SAP 查询和信息集查询,则使用查询生成器自动生成源代码。以这种方式生成的源代码受"查询生成器"和"查询定义"的生成逻辑控制。

使用 SAP 查询中提供的查询生成器,您可以在信息集级别配置查询逻辑。当您想要定义查询以满足不同要求时,这将为您提供更大的灵活性。

您可以使用切换进行设置,查询生成器会对其进行处理。可以使用常规切换和信息类型特定的切换。

查询生成器自动生成源代码。

开关具有以下类型:

  • 常规切换:

    常规切换用于控制对整个信息集有效的设置。

  • 信息类型特定切换:

    信息类型特定的开关控制为每个信息类型定义的设置。

常规切换

以下列表包含常规开关及其描述的示例:

常规切换

常规切换描述
BL_ALLOW DUP_LINES在基本清单中输出相同(双)行
REPORT_CLASS设置报表类别(PNP 和 PNPCE)
PROCESS_LOCKED_RECORDS处理锁定的数据记录(PNP 和 PNPCE)
PROC_PERNR_PARTIAL_AUT处理仅部分授权可用的人员(PNP 和 PNPCE)
PERSON_ONLY_ONCE每个人员仅处理一次 (PNPCE)

信息类型特定切换

以下列表包含信息类型特定切换及其描述的示例:

信息类型特定切换描述
LAST_RECORD_ONLY仅处理最后一个数据记录
提供合并相邻或重叠数据记录
PROVIDE_FIELD选择合并数据记录的相关字段
PRIMARY_INFTY确定与主要信息类型(信息类型视图)的信息类型关系
TIME_DEPENDENCE确定时间相关性
DATA_REQUIRED确定所需数据记录的存在
SPLIT_DATA_REQUIRED确定拆分期间所需的数据记录是否存在
NO_INDIRECT_EVALUATION指定不计算间接报告的工资项
IGNORE_WAGE_TYPE_OPERA忽略操作标识(针对扣减工资项)
NO_DUPLICATE_LANGU仅用一种语言确定要输出的数据记录。
CASE_SENSITIVE_SEL确定区分大小写的选择
ADD_FIELDS_SPLIT_DEP确定视为与拆分相关的 HR 附加字段
SPLIT_DEPENDENT_AF确定与拆分相关的 HR 附加字段的技术名称
SPLIT_INDEPENDENT_AF确定与拆分无关的 HR 附加字段的技术名称

有关开关及其使用方式的详细信息,请参阅定制活动 为 HR 创建信息集 的文档。要访问这些定制活动,请选择 人事管理人力资源信息系统SAP 查询的 HR 设置为 HR 创建信息集 。

  • "请两人一组通过私聊讨论下列问题"。
  • "您将有 5 分钟的时间与您的搭档进行讨论,然后我们会按组进行简要总结"。
  • 向两人团队签字。
  • 提醒学员如何使用私聊功能。
  • 说明此活动的目的是讨论白板或 PPT 幻灯片上的问题。
  • 提问多组回答问题,当组开始重复其他组表达的内容时停止,以此方式进行总结。
  • 提醒学员积极参与课堂讨论,并在学员手册中记录感兴趣的信息。
  • 在白板上写出组名。
  • 在整个组总结期间,在白板上记录学员的建议,用于即时讨论以及日后参考或分发。

示例 - 常规切换

REPORT_CLASS 开关用于定义报表类别,以控制选择屏幕的结构。此报表类别概念适用于逻辑数据库 PNP 和 PNPCE。基于两个逻辑数据库中的任何一个的每个报表,都可以分配到特定的报表类别。

在定制中维护报表类别,路径为 人事管理人力资源信息系统报告调整标准选择屏幕创建报表类别 。

根据信息集所基于的逻辑数据库,在标准系统中分配缺省报表类别。如果信息集基于逻辑数据库 PNP,则使用报表类别 ___X2001。如果此报表类别不存在,则使用报表类别 ___22002。如果信息集基于逻辑数据库 PNPCE,则使用报表类别 QUEPNPCE。

由于 PNP 和 PNPCE 使用不同的报表类别,因此必须确保为信息类型中使用的逻辑数据库创建指定的报表类别。

注意

  • REPORT_CLASS 开关不能用于基于逻辑数据库 PNP 和 PNPCE 以外的数据库的信息集。
  • 由于每个查询都是生成的报表,因此也可以将报表类别分配给查询。
  • 特殊查询不使用逻辑数据库的数据选择屏幕来定义选择条件。特殊查询中报表类别的说明没有明显的影响。

开关示例如下:

  • *$HR$ [COMMON]
  • *$HR$ REPORT_CLASS = ’0MYREPCL’

示例 - 信息类型特定切换

查询中显示的所有信息类型并不总是存在数据。缺省情况下,查询显示不存在数据记录的人员或对象的初始值。或者,您可以选择不显示不存在数据记录的人员或对象。为此,请使用 DATA_REQUIRED 开关。如果设置此开关,则仅当评估期间内至少存在一个数据记录时才会显示人员或对象。

DATA_REQUIRED 开关可设置为以下任意一个值:

  • "X"= 仅显示评估期间内至少具有一个数据记录的人员和对象。
  • ""= 这是默认值。显示满足选择条件的所有人员和对象。如果这些人员或对象之一不存在数据记录,则会显示初始值。

DATA_REQUIRED 开关的示例如下:

类似的开关 SPLIT_DATA_REQUIRED 允许更多控制。

  • *$HR$ [P0004]
  • *$HR$ DATA_REQUIRED = ’X’

在信息集中切换的使用 - 步骤 1

输入短文本并选择创建。然后选择逻辑数据库 PNPCE

在信息集中使用切换 - 步骤 2

要进行信息集特定设置,请在 更改信息集 <信息集名称> 屏幕上选择 转到代码数据

在信息集中切换的使用 - 步骤 3

在右侧屏幕区域(编码标签或编码部分 DATA)中,输入所需设置的开关和值。请参阅定制中的文档,路径为 SAP 查询的 HR 设置为 HR 创建信息集 。

常规开关具有以下语法:

  • *$HR$ [COMMON]
  • *$HR$ NAME_OF_SWITCH = "VALUE"

信息类型特定切换(NNNN = 信息类型编号)具有以下语法:

  • 信息类型的定义
    • *$HR$ [PNNNN]
    • *$HR$ NAME_OF_SWITCH = "VALUE"
  • 不同信息类型的说明
    • *$HR$ [P0000, P0004, P0006]
  • 范围说明
    • *$HR$ [P0006 # P0009]
  • 模板或占位符(+ 代表一个字符,* 代表多个字符)
    • *$HR$ [P00++]
    • *$HR$ [P*]
    • *$HR$ [P0+1*]

在信息集中使用切换 - 步骤 4

检查生成的查询代码。

在查询的维护事务中,选择 查询更多功能显示报表名称

在 ABAP 编辑器中,输入 <报表名称> → 显示并查找 "HR-LOG"。

附加报表字段

术语 附加字段 涵盖相应信息类型的数据库表中不存在但可用于报告的所有字段。

附加字段可分组为以下类别:

  • 标准附加字段

    这些字段是大多数客户所需的附加字段。创建信息集时,它们在标准系统中可用。

  • 客户定义的附加字段

    这些字段由客户定义以满足公司特定要求。它们可以在 HR 的定制中创建,也可以在创建信息集时创建。如果在定制中创建这些字段(路径为 SAP 的 HR 设置查询有关信息集维护的附加信息定义附加字段 ),则在创建信息集时这些字段始终可用。如果在信息集中创建,则它们仅在该特定信息集中可用。

    注意

    与附加字段一样,本地字段也用于满足特定要求。它们在查询中定义,并且仅适用于该查询,例如 SAP 查询。

信息集日志

要使用特殊查询接收有关查询执行的日志,必须将信息集链接到日志记录。可在维护事务 SQ02 的附加菜单中执行此操作。

如果随后使用此信息集创建并执行查询(不必保存查询),则系统会在选择屏幕(表 AQPROT)上保存用户和条目等信息。您可以使用数据浏览器报告此信息、用户组 /SAPQUERY/QUERY_LOGGING 中的现有查询(在全局工作区的用户组 SAPQuery/SQ 中)或您自己的查询。

您可以在 附加 管理日志 下的维护事务 SQ02 中删除 → 日志。

访问选择屏幕,可在其中限制已删除的日志。例如,您可以删除用户的所有日志。

查询日志

日志是可选的。可以记录已使用特殊查询或信息集查询启动的查询。

记录以下字段:

  • 查询范围
  • 信息集
  • 用户
  • 日期和时间
  • 选择字段
  • 选择值
  • 选择选项
  • 输出字段

您可以打开和关闭日志功能。您可以删除不再需要的任何日志。此外,您可以使用业务加载项 AQ_QUERY_PROT 添加自己的日志功能。还可以使用信息集查询或数据浏览器分析日志。

有关日志的详细信息,请在定制中选择 SAP NetWeaverApplication ServerSAP QueryLogging