adesso orange🍊Stellenangebote:
Software Engineer Trainee · Senior | (Senior) Cloud Software Engineer BTP
(Senior) Consultant Technologie · Consultant ABAP
Werkstudent Softwareentwicklung · Fiori / UI5 · Consulting · Application Management

Ich habe manuell über mehrere Versionen das Wiki geupdated. Evtl. läuft es noch nicht ganz rund ツ

CDS Views Grundlagen: Unterschied zwischen den Versionen

Aus SAP Wiki ツ
M1ch3lde (Diskussion | Beiträge)
M1ch3lde (Diskussion | Beiträge)
Zeile 7: Zeile 7:
** kann übersteuert werden z.B. mit INNER
** kann übersteuert werden z.B. mit INNER


<syntaxhighlight lang="abap" line start="1">
<syntaxhighlight line start="1">
@AbapCatalog.sqlViewName: 'ZCDSUSERINFOVIEW'
@AbapCatalog.sqlViewName: 'ZCDSUSERINFOVIEW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.compiler.compareFilter: true

Version vom 24. März 2022, 11:43 Uhr


Associations

  • Datenbankseitig entsprechen Associations den Joins
  • Standardgemäß LEFT OUTER JOIN
    • kann übersteuert werden z.B. mit INNER
@AbapCatalog.sqlViewName: 'ZCDSUSERINFOVIEW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Userinformationen'
@VDM.viewType: #CONSUMPTION
define view ZCDS_USER_INFORMATION as select from usr21 as user
-- JOIN
//left outer join adrc as company
//    on user.addrnumber = company.addrnumber
//left outer join adr6 as email
//    on user.addrnumber = email.addrnumber and user.persnumber = email.persnumber
//left outer join adrp as name
//    on user.persnumber = name.persnumber
-- ASSOCIATIONS
association to adrc as company on user.addrnumber = company.addrnumber
association to adr6 as email on user.addrnumber = email.addrnumber and user.persnumber = email.persnumber
association to adrp as name on user.persnumber = name.persnumber
{
    user.bname as Benutzername,
    name.name_first as Vorname,
    name.name_last as Nachname,
    email[inner].smtp_addr as EMail, // ohne inner = outer join über 600 Einträge, mit Inner nur Einträge wo die E-Mail vorhanden ist
    company.name1 as Firmenname
}

Sonstiges

SY-Felder

sy-mandt #CLIENT
sy-datum #SYSTEM_DATE
sy-uzeit #SYSTEM_TIME
sy-langu #SYSTEM_LANGUAGE
sy-user #USER