FINOC_RULE_MAT_BASE
Orgl Change-Rule: Materials Base
FINOC_RULE_MAT_BASE is a CDS View in S/4HANA. Orgl Change-Rule: Materials Base. It contains 7 fields. 3 CDS views read from this table.
CDS Views using this table (3)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| FINOC_RULE_MAT_DEFAULT | view | from | Orgl-Change: Default Rule for Materials | |
| FINOC_RULE_MAT_EXAMPLE | view | from | Organizational Change: Customer Rule MAT | |
| finoc_rule_mat_mock | view | from | Organizational Change Test : Domain Tests - Helper CDS View |
Fields (7)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | matnr | matnr | 1 |
| KEY | orgl_change | orgl_change | 1 |
| KEY | werks | werks | 1 |
| bukrs | bukrs | 1 | |
| kokrs | kokrs | 1 | |
| prctr_drvtn_source_type | prctr_drvtn_source_type | 1 | |
| prctr_old | prctr_old | 1 |
@AbapCatalog.sqlViewName: 'FINOC_RULE_MATB'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Orgl Change-Rule: Materials Base'
// This view returns all materials. A cross-join with all non-completed org changes is used to determine the
// profit center old, i.e. the profit center the material had before org change processing.
// Nevertheless, the org change runtime engine will always call the view with a restiction to orgl change, so that
// it won't return more than one org change per product / material.
define view FINOC_RULE_MAT_BASE
as select from marc as product
inner join t001w as plant on plant.werks = product.werks
inner join t001k as valuationArea on valuationArea.bwkey = plant.bwkey
inner join finoc_orglchg as oc on oc.processing_status <> 'CMP'
left outer to one join tka02 as companyCodeToControllingArea on companyCodeToControllingArea.bukrs = valuationArea.bukrs
left outer to one join finoc_rt_mat as rt on rt.matnr = product.matnr
and rt.werks = product.werks
and rt.orgl_change = oc.orgl_change
and rt.reassgmt_status = 'DONE'
{
key product.matnr,
key product.werks,
key oc.orgl_change,
companyCodeToControllingArea.kokrs,
valuationArea.bukrs,
coalesce(rt.prctr_old, product.prctr) as prctr_old,
cast( ' ' as finoc_prctr_new preserving type ) as prctr,
cast(' ' as finoc_prctr_drvtn_source_type preserving type) as prctr_drvtn_source_type // space = this is the root object
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"FINOC_ORGLCHG",
"FINOC_RT_MAT",
"MARC",
"T001K",
"T001W",
"TKA02"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/