关于sap:什么是-SAP-CDS-view-的-Ad-hoc-Association

1次阅读

共计 2286 个字符,预计需要花费 6 分钟才能阅读完成。

在 SAP CDS(Core Data Services)的畛域中,ad hoc association指的是一种在 CDS 视图中长期定义的关联关系。CDS 视图是一种在 SAP 零碎中定义和治理数据模型的技术,用于将不同的数据源和表关联起来,以便在应用程序中进行查问和剖析。ad hoc association容许在不当时在数据模型中定义的状况下,在 CDS 视图中创立长期的、非常规的关联,以满足特定的查问需要。

下图红色高亮区域是一个具体的例子:

示例:

假如有一个 SAP 零碎,其中蕴含无关员工和部门的数据。通常状况下,您可能曾经在 CDS 数据模型中定义了名为 Employee 的实体和名为 Department 的实体,并在它们之间建设了正式的关联。例如:

entity Employee {
    key EmployeeID: Integer;
    FirstName: String;
    LastName: String;
    DepartmentID: Integer;
}

entity Department {
    key DepartmentID: Integer;
    Name: String;
}

在这种状况下,您能够轻松地通过正式关联来查问员工和其所属部门的信息。然而,有时您可能须要进行长期的、特定的查问,须要应用不同的关联条件。这就是 ad hoc association 发挥作用的中央。

长期关联的应用:

假如您须要查问特定部门中工资高于某个阈值的员工。尽管您的 CDS 数据模型中没有定义这种关联,但您能够通过 ad hoc association 实现此指标。在查问中,您能够在 CDS 视图中定义长期的关联条件,以实现特定的过滤需要。

@AbapCatalog.sqlViewName: 'HighSalaryEmployees'
@EndUserText.label: 'View with high salary employees'
define view HighSalaryEmployees as select from Employee
association [0..1] to Department as _Department on _Department.DepartmentID = Employee.DepartmentID
where Employee.Salary > 80000;

在这个示例中,咱们应用了ad hoc association,通过将员工表与部门表连接起来,而后筛选出工资高于 80000 的员工。只管这个关联不是在数据模型中事后定义的,但它容许您依据特定的查问需要进行关联和过滤。

通过ad hoc association,您能够在不批改正式数据模型的状况下,针对特定查问场景创立长期的关联关系。这使您可能更加灵便地适应不同的查问需要,而不用在数据模型中为每个可能的状况都定义正式的关联关系。

持续应用后面的示例,咱们将进一步阐明 ad hoc association 的用法。假如您须要为特定部门中工资高于某个阈值的员工创立一个报告,以便将这些员工的信息展现给人力资源部门。您能够应用 ad hoc association 在 CDS 视图中实现这个报告的创立,而无需在数据模型中定义额定的正式关联。

@AbapCatalog.sqlViewName: 'HighSalaryReport'
@EndUserText.label: 'Report of high salary employees'
define view HighSalaryReport as
  select from Department
  left outer join HighSalaryEmployees on Department.DepartmentID = HighSalaryEmployees._Department.DepartmentID
{
  Department.DepartmentID,
  Department.Name,
  HighSalaryEmployees.EmployeeID,
  HighSalaryEmployees.FirstName,
  HighSalaryEmployees.LastName,
  HighSalaryEmployees.Salary
}

在这个示例中,咱们应用了 ad hoc association 来创立一个报告,其中蕴含特定部门中工资高于 80000 的员工信息。通过在视图中连贯 DepartmentHighSalaryEmployees,咱们能够依据特定查问需要,将员工的信息与其所属部门的信息一起展现。

ad hoc association的价值:

  • 灵活性: ad hoc association容许您依据特定的查问需要,长期定义关联关系,而无需批改整个数据模型。这使您可能更加灵便地应答不同的查问场景。
  • 特定查问需要: 有时,您可能须要创立长期报表、剖析或查问,这些查问在数据模型中没有事后定义的关联关系。通过ad hoc association,您能够满足这些特定的查问需要。
  • 防止适度复杂化: 如果为每个可能的查问都定义正式关联关系,数据模型可能会变得复杂且难以保护。ad hoc association使您可能在不减少数据模型复杂性的状况下解决特定的查问问题。
  • 疾速响应需要: 因为 ad hoc association 容许在 CDS 视图中长期定义关联关系,因而您能够更快地响应业务部门的查问需要,而无需期待正式关联的创立和批准。

综上所述,SAP CDS 视图中的 ad hoc association 是一种灵便的技术,容许在不当时定义正式关联的状况下,依据特定的查问需要创立长期的关联关系。通过这种形式,您能够更加灵便地满足不同的查问场景,提供定制化的报表和剖析,同时防止适度复杂化的数据模型。

正文完
 0