P_NO_SAFTJournalCustSupMD
SAF-T Norway Journal Item BP Master Data
P_NO_SAFTJournalCustSupMD is a Composite CDS View that provides data about "SAF-T Norway Journal Item BP Master Data" in SAP S/4HANA. It reads from 28 data sources and exposes 116 fields with key fields CompanyCode, FiscalYear, AccountingDocument, LedgerGLLineItem, Ledger.
Data Sources (28)
| Source | Alias | Join Type |
|---|---|---|
| I_Address_2 | Address | inner |
| I_Address_2 | Address | inner |
| I_Address_2 | Address | inner |
| I_Address_2 | Address | inner |
| I_BusinessPartner | BP | inner |
| I_BusinessPartner | BP | inner |
| I_BusinessPartner | BP | inner |
| I_BusinessPartner | BP | inner |
| I_BPCurrentDefaultAddress | BPAddress | inner |
| I_BPCurrentDefaultAddress | BPAddress | inner |
| I_BPCurrentDefaultAddress | BPAddress | inner |
| I_BPCurrentDefaultAddress | BPAddress | inner |
| I_Customer | Customer | inner |
| I_Customer | Customer | inner |
| I_CustomerCompany | CustomerCompany | inner |
| I_CustomerToBusinessPartner | CustToBP | inner |
| I_CustomerToBusinessPartner | CustToBP | inner |
| I_NO_SAFTJournalItem | JournalLineItem | from |
| I_NO_SAFTJournalItem | JournalLineItem | union |
| I_NO_SAFTJournalItem | JournalLineItem | union |
| I_NO_SAFTJournalItem | JournalLineItem | union |
| I_OneTimeAccountBP | OneTimeBP | inner |
| I_OneTimeAccountBP | OneTimeBP | inner |
| I_Supplier | Supplier | inner |
| I_Supplier | Supplier | inner |
| I_SupplierCompany | SupplierCompany | inner |
| I_SupplierToBusinessPartner | SupToBP | inner |
| I_SupplierToBusinessPartner | SupToBP | inner |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PNOSAFTJCSMD | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| VDM.private | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #P | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| EndUserText.label | SAF-T Norway Journal Item BP Master Data | view |
Fields (116)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CompanyCode | I_NO_SAFTJournalItem | CompanyCode | |
| KEY | FiscalYear | I_NO_SAFTJournalItem | FiscalYear | |
| KEY | AccountingDocument | I_NO_SAFTJournalItem | AccountingDocument | |
| KEY | LedgerGLLineItem | I_NO_SAFTJournalItem | LedgerGLLineItem | |
| KEY | Ledger | I_NO_SAFTJournalItem | Ledger | |
| PostingDate | I_NO_SAFTJournalItem | PostingDate | ||
| Customer | I_NO_SAFTJournalItem | Customer | ||
| Supplier | I_NO_SAFTJournalItem | Supplier | ||
| BusinessPartner | I_BusinessPartner | BusinessPartner | ||
| BusinessPartnerUUID | I_BusinessPartner | BusinessPartnerUUID | ||
| VATRegistration | I_Customer | VATRegistration | ||
| IsOneTimeAccount | ||||
| GLAccount | I_CustomerCompany | ReconciliationAccount | ||
| AddressID | I_Customer | AddressID | ||
| TaxNumber1 | I_Customer | TaxNumber1 | ||
| TaxNumber2 | I_Customer | TaxNumber2 | ||
| OrganizationBPName1 | I_Customer | OrganizationBPName1 | ||
| OrganizationBPName2 | I_Customer | OrganizationBPName2 | ||
| CityName | I_Address_2 | CityName | ||
| StreetName | I_Address_2 | StreetName | ||
| HouseNumber | I_Address_2 | HouseNumber | ||
| PostalCode | I_Address_2 | PostalCode | ||
| Country | I_Address_2 | Country | ||
| POBox | I_Address_2 | POBox | ||
| POBoxPostalCode | I_Address_2 | POBoxPostalCode | ||
| Region | RegionText | RegionName | ||
| _CompanyCode | I_NO_SAFTJournalItem | _CompanyCode | ||
| _FiscalYear | I_NO_SAFTJournalItem | _FiscalYear | ||
| _Ledger | I_NO_SAFTJournalItem | _Ledger | ||
| CompanyCodeasCompanyCode | ||||
| KEY | FiscalYear | I_NO_SAFTJournalItem | FiscalYear | |
| KEY | AccountingDocument | I_NO_SAFTJournalItem | AccountingDocument | |
| KEY | LedgerGLLineItem | I_NO_SAFTJournalItem | LedgerGLLineItem | |
| KEY | Ledger | I_NO_SAFTJournalItem | Ledger | |
| PostingDate | I_NO_SAFTJournalItem | PostingDate | ||
| Customer | I_NO_SAFTJournalItem | Customer | ||
| Supplier | I_NO_SAFTJournalItem | Supplier | ||
| BusinessPartner | I_BusinessPartner | BusinessPartner | ||
| BusinessPartnerUUID | I_BusinessPartner | BusinessPartnerUUID | ||
| VATRegistration | I_Supplier | VATRegistration | ||
| IsOneTimeAccount | ||||
| GLAccount | I_SupplierCompany | ReconciliationAccount | ||
| AddressID | I_Supplier | AddressID | ||
| TaxNumber1 | I_Supplier | TaxNumber1 | ||
| TaxNumber2 | I_Supplier | TaxNumber2 | ||
| OrganizationBPName1 | I_Supplier | OrganizationBPName1 | ||
| OrganizationBPName2 | I_Supplier | OrganizationBPName2 | ||
| CityName | I_Address_2 | CityName | ||
| StreetName | I_Address_2 | StreetName | ||
| HouseNumber | I_Address_2 | HouseNumber | ||
| PostalCode | I_Address_2 | PostalCode | ||
| Country | I_Address_2 | Country | ||
| POBox | I_Address_2 | POBox | ||
| POBoxPostalCode | I_Address_2 | POBoxPostalCode | ||
| Region | RegionText | RegionName | ||
| _CompanyCode | I_NO_SAFTJournalItem | _CompanyCode | ||
| _FiscalYear | I_NO_SAFTJournalItem | _FiscalYear | ||
| _Ledger | I_NO_SAFTJournalItem | _Ledger | ||
| CompanyCodeasCompanyCode | ||||
| KEY | FiscalYear | I_NO_SAFTJournalItem | FiscalYear | |
| KEY | AccountingDocument | I_NO_SAFTJournalItem | AccountingDocument | |
| KEY | LedgerGLLineItem | I_NO_SAFTJournalItem | LedgerGLLineItem | |
| KEY | Ledger | I_NO_SAFTJournalItem | Ledger | |
| PostingDate | I_NO_SAFTJournalItem | PostingDate | ||
| Customer | I_NO_SAFTJournalItem | Customer | ||
| Supplier | I_NO_SAFTJournalItem | Supplier | ||
| BusinessPartner | I_BusinessPartner | BusinessPartner | ||
| BusinessPartnerUUID | I_BusinessPartner | BusinessPartnerUUID | ||
| VATRegistration318endasVATRegistration | ||||
| IsOneTimeAccount | ||||
| GLAccount | ||||
| AddressID | I_OneTimeAccountBP | AddressID | ||
| TaxNumber1 | ||||
| TaxNumber2 | ||||
| OrganizationBPName1 | ||||
| OrganizationBPName2 | ||||
| CityName | I_Address_2 | CityName | ||
| StreetName | I_Address_2 | StreetName | ||
| HouseNumber | I_Address_2 | HouseNumber | ||
| PostalCode | I_Address_2 | PostalCode | ||
| Country | I_Address_2 | Country | ||
| POBox | I_Address_2 | POBox | ||
| POBoxPostalCode | I_Address_2 | POBoxPostalCode | ||
| Region | RegionText | RegionName | ||
| _CompanyCode | I_NO_SAFTJournalItem | _CompanyCode | ||
| _FiscalYear | I_NO_SAFTJournalItem | _FiscalYear | ||
| _Ledger | I_NO_SAFTJournalItem | _Ledger | ||
| CompanyCodeasCompanyCode | ||||
| KEY | FiscalYear | I_NO_SAFTJournalItem | FiscalYear | |
| KEY | AccountingDocument | I_NO_SAFTJournalItem | AccountingDocument | |
| KEY | LedgerGLLineItem | I_NO_SAFTJournalItem | LedgerGLLineItem | |
| KEY | Ledger | I_NO_SAFTJournalItem | Ledger | |
| PostingDate | I_NO_SAFTJournalItem | PostingDate | ||
| Customer | I_NO_SAFTJournalItem | Customer | ||
| Supplier | I_NO_SAFTJournalItem | Supplier | ||
| BusinessPartner | I_BusinessPartner | BusinessPartner | ||
| BusinessPartnerUUID | I_BusinessPartner | BusinessPartnerUUID | ||
| IsOneTimeAccount | ||||
| GLAccount | ||||
| AddressID | I_OneTimeAccountBP | AddressID | ||
| TaxNumber1 | ||||
| TaxNumber2 | ||||
| OrganizationBPName1 | ||||
| OrganizationBPName2 | ||||
| CityName | I_Address_2 | CityName | ||
| StreetName | I_Address_2 | StreetName | ||
| HouseNumber | I_Address_2 | HouseNumber | ||
| PostalCode | I_Address_2 | PostalCode | ||
| Country | I_Address_2 | Country | ||
| POBox | I_Address_2 | POBox | ||
| POBoxPostalCode | I_Address_2 | POBoxPostalCode | ||
| Region | RegionText | RegionName | ||
| _CompanyCode | I_NO_SAFTJournalItem | _CompanyCode | ||
| _FiscalYear | I_NO_SAFTJournalItem | _FiscalYear | ||
| _Ledger | I_NO_SAFTJournalItem | _Ledger | ||
| _JournalEntry | I_NO_SAFTJournalItem | _JournalEntry |
@AbapCatalog.sqlViewName: 'PNOSAFTJCSMD'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private: true
@VDM.viewType: #COMPOSITE
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #P
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking : #NOT_REQUIRED
@EndUserText.label: 'SAF-T Norway Journal Item BP Master Data'
define view P_NO_SAFTJournalCustSupMD
as select from I_NO_SAFTJournalItem as JournalLineItem
inner join I_CustomerToBusinessPartner as CustToBP on CustToBP.Customer = JournalLineItem.Customer
inner join I_BusinessPartner as BP on BP.BusinessPartnerUUID = CustToBP.BusinessPartnerUUID
inner join I_BPCurrentDefaultAddress as BPAddress on BPAddress.BusinessPartner = BP.BusinessPartner
inner join I_Address_2 as Address on Address.AddressID = BPAddress.AddressID
inner join I_Customer as Customer on Customer.Customer = CustToBP.Customer
inner join I_CustomerCompany as CustomerCompany on CustomerCompany.Customer = Customer.Customer
and CustomerCompany.CompanyCode = JournalLineItem.CompanyCode
left outer to one join I_RegionText as RegionText on RegionText.Region = Address.Region
and RegionText.Country = Address.Country
and RegionText.Language = $session.system_language
{
@ObjectModel.foreignKey.association: '_CompanyCode'
key JournalLineItem.CompanyCode as CompanyCode,
@ObjectModel.foreignKey.association: '_FiscalYear'
key JournalLineItem.FiscalYear as FiscalYear,
@ObjectModel.foreignKey.association: '_JournalEntry'
key JournalLineItem.AccountingDocument as AccountingDocument,
key JournalLineItem.LedgerGLLineItem as LedgerGLLineItem,
@ObjectModel.foreignKey.association: '_Ledger'
key JournalLineItem.Ledger as Ledger,
JournalLineItem.PostingDate,
JournalLineItem.Customer,
JournalLineItem.Supplier,
// This fields will be used to access the customer contacs
BP.BusinessPartner,
BP.BusinessPartnerUUID,
Customer.VATRegistration,
'' as IsOneTimeAccount,
CustomerCompany.ReconciliationAccount as GLAccount,
Customer.AddressID,
Customer.TaxNumber1,
Customer.TaxNumber2,
Customer.OrganizationBPName1,
Customer.OrganizationBPName2,
Address.CityName,
Address.StreetName,
Address.HouseNumber,
Address.PostalCode,
Address.Country,
Address.POBox,
Address.POBoxPostalCode,
RegionText.RegionName as Region,
JournalLineItem._CompanyCode,
JournalLineItem._FiscalYear,
JournalLineItem._Ledger,
JournalLineItem._JournalEntry
}
where
Customer.IsOneTimeAccount = ' '
and JournalLineItem.FinancialAccountType = 'D'
union select from I_NO_SAFTJournalItem as JournalLineItem
inner join I_SupplierToBusinessPartner as SupToBP on SupToBP.Supplier = JournalLineItem.Supplier
inner join I_BusinessPartner as BP on BP.BusinessPartnerUUID = SupToBP.BusinessPartnerUUID
inner join I_BPCurrentDefaultAddress as BPAddress on BPAddress.BusinessPartner = BP.BusinessPartner
inner join I_Address_2 as Address on Address.AddressID = BPAddress.AddressID
inner join I_Supplier as Supplier on Supplier.Supplier = SupToBP.Supplier
inner join I_SupplierCompany as SupplierCompany on SupplierCompany.Supplier = Supplier.Supplier
and SupplierCompany.CompanyCode = JournalLineItem.CompanyCode
left outer to one join I_RegionText as RegionText on RegionText.Region = Address.Region
and RegionText.Country = Address.Country
and RegionText.Language = $session.system_language
{
@ObjectModel.foreignKey.association: '_CompanyCode'
key JournalLineItem.CompanyCode as CompanyCode,
@ObjectModel.foreignKey.association: '_FiscalYear'
key JournalLineItem.FiscalYear as FiscalYear,
@ObjectModel.foreignKey.association: '_JournalEntry'
key JournalLineItem.AccountingDocument as AccountingDocument,
key JournalLineItem.LedgerGLLineItem as LedgerGLLineItem,
@ObjectModel.foreignKey.association: '_Ledger'
key JournalLineItem.Ledger as Ledger,
JournalLineItem.PostingDate,
JournalLineItem.Customer,
JournalLineItem.Supplier,
// This fields will be used to access the supplier contacs
BP.BusinessPartner,
BP.BusinessPartnerUUID,
Supplier.VATRegistration,
'' as IsOneTimeAccount,
SupplierCompany.ReconciliationAccount as GLAccount,
Supplier.AddressID,
Supplier.TaxNumber1,
Supplier.TaxNumber2,
Supplier.OrganizationBPName1,
Supplier.OrganizationBPName2,
Address.CityName,
Address.StreetName,
Address.HouseNumber,
Address.PostalCode,
Address.Country,
Address.POBox,
Address.POBoxPostalCode,
RegionText.RegionName as Region,
JournalLineItem._CompanyCode,
JournalLineItem._FiscalYear,
JournalLineItem._Ledger,
JournalLineItem._JournalEntry
}
where
Supplier.IsOneTimeAccount = ' '
and JournalLineItem.FinancialAccountType = 'K'
union select from I_NO_SAFTJournalItem as JournalLineItem
inner join I_CustomerToBusinessPartner as CustToBP on CustToBP.Customer = JournalLineItem.Customer
inner join I_BusinessPartner as BP on BP.BusinessPartnerUUID = CustToBP.BusinessPartnerUUID
inner join I_BPCurrentDefaultAddress as BPAddress on BPAddress.BusinessPartner = BP.BusinessPartner
inner join I_Address_2 as Address on Address.AddressID = BPAddress.AddressID
inner join I_Customer as Customer on Customer.Customer = CustToBP.Customer
inner join I_OneTimeAccountBP as OneTimeBP on JournalLineItem.CompanyCode = OneTimeBP.CompanyCode
and JournalLineItem.FiscalYear = OneTimeBP.FiscalYear
and JournalLineItem.AccountingDocument = OneTimeBP.AccountingDocument
and JournalLineItem.AccountingDocumentItem = OneTimeBP.AccountingDocumentItem
left outer to one join I_RegionText as RegionText on RegionText.Region = Address.Region
and RegionText.Country = Address.Country
and RegionText.Language = $session.system_language
{
@ObjectModel.foreignKey.association: '_CompanyCode'
key JournalLineItem.CompanyCode as CompanyCode,
@ObjectModel.foreignKey.association: '_FiscalYear'
key JournalLineItem.FiscalYear as FiscalYear,
@ObjectModel.foreignKey.association: '_JournalEntry'
key JournalLineItem.AccountingDocument as AccountingDocument,
key JournalLineItem.LedgerGLLineItem as LedgerGLLineItem,
@ObjectModel.foreignKey.association: '_Ledger'
key JournalLineItem.Ledger as Ledger,
JournalLineItem.PostingDate,
JournalLineItem.Customer,
JournalLineItem.Supplier,
// This fields will be used to access the customer contacs
BP.BusinessPartner,
BP.BusinessPartnerUUID,
case
when OneTimeBP.TaxID1 is not initial
then OneTimeBP.TaxID1
else substring(JournalLineItem.VATRegistration ,3,18)
end as VATRegistration,
'X' as IsOneTimeAccount,
'' as GLAccount,
OneTimeBP.AddressID,
'' as TaxNumber1,
'' as TaxNumber2,
'' as OrganizationBPName1,
'' as OrganizationBPName2,
Address.CityName,
Address.StreetName,
Address.HouseNumber,
Address.PostalCode,
Address.Country,
Address.POBox,
Address.POBoxPostalCode,
RegionText.RegionName as Region,
JournalLineItem._CompanyCode,
JournalLineItem._FiscalYear,
JournalLineItem._Ledger,
JournalLineItem._JournalEntry
}
where
Customer.IsOneTimeAccount = 'X'
and JournalLineItem.FinancialAccountType = 'D'
union select from I_NO_SAFTJournalItem as JournalLineItem
inner join I_SupplierToBusinessPartner as SupToBP on SupToBP.Supplier = JournalLineItem.Supplier
inner join I_BusinessPartner as BP on BP.BusinessPartnerUUID = SupToBP.BusinessPartnerUUID
inner join I_BPCurrentDefaultAddress as BPAddress on BPAddress.BusinessPartner = BP.BusinessPartner
inner join I_Address_2 as Address on Address.AddressID = BPAddress.AddressID
inner join I_Supplier as Supplier on Supplier.Supplier = SupToBP.Supplier
inner join I_OneTimeAccountBP as OneTimeBP on JournalLineItem.CompanyCode = OneTimeBP.CompanyCode
and JournalLineItem.FiscalYear = OneTimeBP.FiscalYear
and JournalLineItem.AccountingDocument = OneTimeBP.AccountingDocument
and JournalLineItem.AccountingDocumentItem = OneTimeBP.AccountingDocumentItem
left outer to one join I_RegionText as RegionText on RegionText.Region = Address.Region
and RegionText.Country = Address.Country
and RegionText.Language = $session.system_language
{
@ObjectModel.foreignKey.association: '_CompanyCode'
key JournalLineItem.CompanyCode as CompanyCode,
@ObjectModel.foreignKey.association: '_FiscalYear'
key JournalLineItem.FiscalYear as FiscalYear,
@ObjectModel.foreignKey.association: '_JournalEntry'
key JournalLineItem.AccountingDocument as AccountingDocument,
key JournalLineItem.LedgerGLLineItem as LedgerGLLineItem,
@ObjectModel.foreignKey.association: '_Ledger'
key JournalLineItem.Ledger as Ledger,
JournalLineItem.PostingDate,
JournalLineItem.Customer,
JournalLineItem.Supplier,
// This fields will be used to access the customer contacs
BP.BusinessPartner,
BP.BusinessPartnerUUID,
case
when OneTimeBP.TaxID1 is not initial
then substring(OneTimeBP.TaxID1 ,3,18)
when JournalLineItem.VATRegistration is not initial
then substring(JournalLineItem.VATRegistration ,3,18)
else ''
end as VATRegistration,
'X' as IsOneTimeAccount,
'' as GLAccount,
OneTimeBP.AddressID,
'' as TaxNumber1,
'' as TaxNumber2,
'' as OrganizationBPName1,
'' as OrganizationBPName2,
Address.CityName,
Address.StreetName,
Address.HouseNumber,
Address.PostalCode,
Address.Country,
Address.POBox,
Address.POBoxPostalCode,
RegionText.RegionName as Region,
JournalLineItem._CompanyCode,
JournalLineItem._FiscalYear,
JournalLineItem._Ledger,
JournalLineItem._JournalEntry
}
where
Supplier.IsOneTimeAccount = 'X'
and JournalLineItem.FinancialAccountType = 'K'
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA