I_SAFTBillingOneTimeCustomer
SAF-T Billing OneTimeCustomers
I_SAFTBillingOneTimeCustomer is a Composite CDS View that provides data about "SAF-T Billing OneTimeCustomers" in SAP S/4HANA. It reads from 6 data sources and exposes 45 fields with key fields BillingDocument, FiscalYear, CompanyCode, PartnerFunction, FiscalYear. It has 1 association to related views.
Data Sources (6)
| Source | Alias | Join Type |
|---|---|---|
| I_SDDocumentCompletePartners | Cust | inner |
| I_SDDocumentCompletePartners | Cust | inner |
| I_BillingDocument | SDDoc | from |
| I_InvoiceList | SDDoc | union |
| I_OneTimeCustomerTaxNumber | Tax | left_outer |
| I_OneTimeCustomerTaxNumber | Tax | left_outer |
Associations (1)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_CustomerCompany | _CustCompany | Cust.Customer = _CustCompany.Customer and SDDoc.CompanyCode = _CustCompany.CompanyCode |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | ISAFTOTBILCUST | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| VDM.viewType | #COMPOSITE | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_INCLUDED | view | |
| EndUserText.label | SAF-T Billing OneTimeCustomers | view |
Fields (45)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BillingDocument | I_InvoiceList | BillingDocument | |
| KEY | FiscalYear | I_InvoiceList | FiscalYear | |
| KEY | CompanyCode | I_InvoiceList | CompanyCode | |
| KEY | PartnerFunction | I_SDDocumentCompletePartners | PartnerFunction | |
| InvoiceDate | I_InvoiceList | BillingDocumentDate | ||
| Customer | I_SDDocumentCompletePartners | Customer | ||
| IsOneTimeAccount | I_SDDocumentCompletePartners | PartnerIsOneTimeAccount | ||
| ReconciliationAccount | _CustCompany | ReconciliationAccount | ||
| AddressNumber | I_SDDocumentCompletePartners | AddressID | ||
| AddressID | I_SDDocumentCompletePartners | AddressID | ||
| FullName | ||||
| StreetName | ||||
| StreetPrefixName | ||||
| AdditionalStreetPrefixName | ||||
| StreetSuffixName | ||||
| AdditionalStreetSuffixName | ||||
| HouseNumber | ||||
| Region | ||||
| _Address | I_SDDocumentCompletePartners | _Address | ||
| PhoneNumber | ||||
| FaxNumber | ||||
| EmailAddress | ||||
| InvoiceListasBillingDocument | ||||
| KEY | FiscalYear | I_InvoiceList | FiscalYear | |
| KEY | CompanyCode | I_InvoiceList | CompanyCode | |
| KEY | PartnerFunction | I_SDDocumentCompletePartners | PartnerFunction | |
| InvoiceDate | I_InvoiceList | BillingDocumentDate | ||
| Customer | I_SDDocumentCompletePartners | Customer | ||
| IsOneTimeAccount | I_SDDocumentCompletePartners | PartnerIsOneTimeAccount | ||
| ReconciliationAccount | _CustCompany | ReconciliationAccount | ||
| AddressNumber | I_SDDocumentCompletePartners | AddressID | ||
| AddressID | I_SDDocumentCompletePartners | AddressID | ||
| FullName | ||||
| StreetName | ||||
| StreetPrefixName | ||||
| AdditionalStreetPrefixName | ||||
| StreetSuffixName | ||||
| AdditionalStreetSuffixName | ||||
| HouseNumber | ||||
| Region | ||||
| _Address | I_SDDocumentCompletePartners | _Address | ||
| PhoneNumber | ||||
| FaxNumber | ||||
| EmailAddress | ||||
| WebsiteURL |
@AbapCatalog.sqlViewName: 'ISAFTOTBILCUST'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #COMPOSITE
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #BLOCKED_DATA_INCLUDED
@EndUserText.label: 'SAF-T Billing OneTimeCustomers'
define view I_SAFTBillingOneTimeCustomer
as select from I_BillingDocument as SDDoc
inner join I_SDDocumentCompletePartners as Cust on SDDoc.BillingDocument = Cust.SDDocument
left outer join I_OneTimeCustomerTaxNumber as Tax on Cust.SDDocument = Tax.SDDocument
and Cust.SDDocumentItem = Tax.SDDocumentItem
and Cust.PartnerFunction = Tax.PartnerFunction
association [0..1] to I_CustomerCompany as _CustCompany on Cust.Customer = _CustCompany.Customer
and SDDoc.CompanyCode = _CustCompany.CompanyCode //update 1905
{
key SDDoc.BillingDocument as BillingDocument,
key SDDoc.FiscalYear as FiscalYear,
key SDDoc.CompanyCode as CompanyCode,
key Cust.PartnerFunction,
SDDoc.BillingDocumentDate as InvoiceDate,
Cust.Customer as Customer,
Cust.PartnerIsOneTimeAccount as IsOneTimeAccount,
case
when SDDoc.VATRegistration is initial or SDDoc.VATRegistration is null
then Tax.TaxNumber1
else substring(SDDoc.VATRegistration,3,18)
end as CustomerVATRegistration,
_CustCompany.ReconciliationAccount as ReconciliationAccount,
Cust.AddressID as AddressNumber,
Cust.AddressID,
Cust._Address.FullName as FullName,
Cust._Address.StreetName as StreetName,
Cust._Address.StreetPrefixName as StreetPrefixName,
Cust._Address.AdditionalStreetPrefixName as AdditionalStreetPrefixName,
Cust._Address.StreetSuffixName as StreetSuffixName,
Cust._Address.AdditionalStreetSuffixName as AdditionalStreetSuffixName,
Cust._Address.HouseNumber as HouseNumber,
Cust._Address.Region as Region,
Cust._Address,
Cust._Address._DefaultPhoneNumber.PhoneNumber as PhoneNumber,
Cust._Address._DefaultFaxNumber.FaxNumber as FaxNumber,
Cust._Address._DefaultEmailAddress.EmailAddress as EmailAddress,
cast(lower(Cust._Address._DefaultURLAddress.SearchURLAddress) as ad_uri2) as WebsiteURL
}
where
PartnerIsOneTimeAccount = 'X'
union select from I_InvoiceList as SDDoc
inner join I_SDDocumentCompletePartners as Cust on SDDoc.InvoiceList = Cust.SDDocument
left outer join I_OneTimeCustomerTaxNumber as Tax on Cust.SDDocument = Tax.SDDocument
and Cust.SDDocumentItem = Tax.SDDocumentItem
and Cust.PartnerFunction = Tax.PartnerFunction
association [0..1] to I_CustomerCompany as _CustCompany on Cust.Customer = _CustCompany.Customer
and SDDoc.CompanyCode = _CustCompany.CompanyCode //update 1905
{
key SDDoc.InvoiceList as BillingDocument,
key SDDoc.FiscalYear as FiscalYear,
key SDDoc.CompanyCode as CompanyCode,
key Cust.PartnerFunction,
SDDoc.BillingDocumentDate as InvoiceDate,
Cust.Customer as Customer,
Cust.PartnerIsOneTimeAccount as IsOneTimeAccount,
case
when SDDoc.VATRegistration is initial or SDDoc.VATRegistration is null
then Tax.TaxNumber1
else substring(SDDoc.VATRegistration,3,18)
end as CustomerVATRegistration,
_CustCompany.ReconciliationAccount as ReconciliationAccount,
Cust.AddressID as AddressNumber,
Cust.AddressID,
Cust._Address.FullName as FullName,
Cust._Address.StreetName as StreetName,
Cust._Address.StreetPrefixName as StreetPrefixName,
Cust._Address.AdditionalStreetPrefixName as AdditionalStreetPrefixName,
Cust._Address.StreetSuffixName as StreetSuffixName,
Cust._Address.AdditionalStreetSuffixName as AdditionalStreetSuffixName,
Cust._Address.HouseNumber as HouseNumber,
Cust._Address.Region as Region,
Cust._Address,
Cust._Address._DefaultPhoneNumber.PhoneNumber as PhoneNumber,
Cust._Address._DefaultFaxNumber.FaxNumber as FaxNumber,
Cust._Address._DefaultEmailAddress.EmailAddress as EmailAddress,
cast(lower(Cust._Address._DefaultURLAddress.SearchURLAddress) as ad_uri2) as WebsiteURL
}
where
PartnerIsOneTimeAccount = 'X'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ADDRESS",
"I_ADDRESSEMAILADDRESS",
"I_ADDRESSFAXNUMBER",
"I_ADDRESSHOMEPAGEURL",
"I_ADDRESSPHONENUMBER",
"I_BILLINGDOCUMENT",
"I_CUSTOMERCOMPANY",
"I_INVOICELIST",
"I_ONETIMECUSTOMERTAXNUMBER",
"I_SDDOCUMENTCOMPLETEPARTNERS"
],
"ASSOCIATED":
[
"I_ADDRESS",
"I_CUSTOMERCOMPANY"
],
"BASE":
[
"I_SDDOCUMENTCOMPLETEPARTNERS"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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