Beruflich Dokumente
Kultur Dokumente
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Q&As | Case Studies | Blogs | White Papers | Webinars | Videos | Podcasts | Books | Events
| Magazines
| Why Subscribe?
Search
FINANCIALS
GRC
HR
SCM
CRM
BI
HANA
CLOUD
ADMIN/DEV
ROADMAP
TRENDINGTOPICS
Article
byKarlKessler|SAPinsider,Volume16,Issue4
October8,2015
WiththeadventofSAPHANA,anewdatamodelinginfrastructurecalledcoredataservices(CDS)has
beenintroducedbySAPtosimplifyhowdevelopersdefinesemanticallyrichdatamodels.Readontolearn
theconceptsbehindCDSandhowitworksinABAPdevelopmentprocesses,andwalkthroughastepby
stepguideonusingCDSwithSAPsdevelopmenttoolset.
Datamodelsareacornerstoneofapplicationdevelopment.Theyprovidea
standardizedmethodfordefiningandformattingdatabasecontentsconsistently
acrosssystems,enablingdifferentapplicationstosharethesamedata
reducingdevelopmentcosts,speedingtimetomarket,andimprovingqualityand
performance.
ThosefamiliarwithapplicationdevelopmentintheABAPworldarenostrangers
tothetraditionaldatamodelingtoolsincludedwithSAPNetWeaverApplication
Server(SAPNetWeaverAS)ABAPinparticular,theABAPdatadictionary
(DDIC),whichstoresdefinitionsofobjects,suchasdatabasetablesandviews,
thatcanbeusedinABAPprograms.AndthenalongcameSAPHANAandthe
newparadigmofpushingdowndataintensivelogictothedatabaselayer.
DataModelingBasicsinSAPBWonSAP
HANAandBWIntegratedPlanning
QuickTip:3MethodsforIdentifyingand
RemediatingCustomABAPCodeIssueswhen
MigratingSAPBWtoSAPHANA
AnIntroductiontoAMDPsforIntegrated
Planning
TotakeadvantageofSAPHANAforapplicationdevelopment,SAPintroduced
anewdatamodelinginfrastructureknownascoredataservices(CDS).With
CDS,datamodelsaredefinedandconsumedonthedatabaseratherthanon
theserver.CDSalsoofferscapabilitiesbeyondthetraditionaldatamodeling
tools,includingsupportforconceptualmodelingandrelationshipdefinitions,
builtinfunctions,andextensions.Originally,CDSwasavailableonlyinthe
designtimeandruntimeenvironmentofSAPHANA.Now,theCDSconceptis
alsofullyimplementedinSAPNetWeaverASABAP,enablingdevelopersto
workintheABAPlayerwithABAPdevelopmenttoolswhilethecodeexecution
ispusheddowntothedatabase.
ThisarticlefocusesontheABAPimplementationofCDS. 1Itlooksatthe
conceptsbehindCDS,andthenwalksyouthroughadetailedexamplethat
demonstrateshowCDSinABAPworks,andhowCDSissupportedduringthe
ABAPdevelopmentprocessbySAPsABAPdevelopmenttoolsforEclipse.
WhatIsCDS?
CDSisaninfrastructurelayerfordefiningsemanticallyrichdatamodels,which
arerepresentedasCDSviews.Inaverybasicway,CDSallowsdevelopersto
defineentitytypes(suchasorders,businesspartners,orproducts)andthe
semanticrelationshipsbetweenthem,whichcorrespondtoforeignkey
relationshipsintraditionalentityrelationship(ER)models.CDSisdefinedusing
aSQLbaseddatadefinitionlanguage(DDL)thatisbasedonstandardSQLwith
someadditionalconcepts,suchasassociations,whichdefinetherelationships
betweenCDSviews,andannotations,whichdirectthedomainspecificuseof
CDSartifacts.Anotherexampleisexpressions,whichcanbeusedinscenarios
inwhichcertainCDSattributesareconsideredasmeasurestobeaggregated.
SimilartotheroleoftheDDICinthetraditionalABAPworld,datamodelsbased
UP NEXT@ SAPinsider
Thursday, August 11
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
1/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
onCDSserveascentraldefinitionsthatcanbeusedinmanydifferentdomains,
suchastransactionalandanalyticalapplications,tointeractwithdatainthe
databaseinaunifiedway(seethesidebar"CDSinSAPSoftware"formoreon
howSAPitselfisusingCDSinitsownapplications).However,CDSdata
modelsgobeyondthecapabilitiesoftheDDIC,whichweretypicallylimitedtoa
transactionalscope(thinkoftraditionalonlinetransactionprocessing
functionality).Forexample,inCDS,youcandefineviewsthataggregateand
analyzedatainalayeredfashion,startingwithbasicviewsandthenadding
powerfulviewsthatcombinethebasicviews.Anotherdifferenceisthesupport
forspecialoperatorssuchasUNION,whichenablesthecombinationofmultiple
selectstatementstoreturnonlyoneresultset.
Originally,CDSwasdesignedfornativeSAPHANAapplicationdevelopment.It
wasintroducedwithsupportpackagestack(SPS)06forSAPHANAaspartof
SAPHANAextendedapplicationservices(XS),anapplicationserverforSAP
HANAthatincludesaruntimeenvironmentfornativedevelopment.WithSAP
NetWeaver7.4SPS05,theCDSconceptwasalsofullyimplementedinSAP
NetWeaverASABAP.Whiledifferenceshaveevolvedbetweenthetwovariants
forexample,SAPHANAbasedCDSobviouslyoperatesonSAPHANA,
whileABAPbasedCDSoperatesonmostmajordatabaseplatformsaswellas
SAPHANA,andeachhasadifferenttypeofrepositoryfordevelopmentobjects
bothvariantspursuethesamegoal:torepresentcentraldatadefinitionsasa
commonbasisforapplicationdevelopmentofallkinds.
Q&A:DiscoveringtheNewest
DevelopmentsofSAPBusinessObjects
WebIntelligence4.2
Wednesday, August 31
Q&A:LeveragingSAPBusinessObjects
LumirawithSAPBusinessObjectsBI
4.2
Tuesday, September 27
Q&A:AdvancingYourAnalyticsforthe
DigitalAgewithSAPBusinessObjects
Enterprise,PremiumEdition
Monday, October 10
Conferences&Seminars:Financials
2016,BI2016,GRC2016,
HANA2016
Conferences&Seminars:Logisticsand
SCM2016
Seemore
CDSinSAPSoftware
ABAPbasedCDSplaysasubstantialroleinthefoundationofSAPBusinessSuite4SAP
HANA(SAPS/4HANA).AlargesetofCDSartifactsseveralthousandCDSviews
consistingofseveralhundredthousandlinesofABAPcode,representtheunderlyingcore
datamodeloftheSAPS/4HANAsolution.ThemainmotivationforSAPS/4HANAwasto
provideasemanticlayerontopofthetraditionalphysicalSAPERPtables,whichoftenact
asphysicaldatacontainersonthedatabaseandhaveaverycomplexinnerstructurethat,
inmostcases,cannotbeevaluatedwithouttraditionalABAPprocessing.Thesemantically
richdatamodelingprovidedbyCDSenablesthislayerinSAPS/4HANA,facilitating
simplified,efficientaccesstotheunderlyingdata.
TheCDSdatamodelusedbySAPS/4HANAcanbeconsideredasuccessortothevirtual
datamodelusedbySAPHANALive,whichusesSAPHANAcalculationviewstoprovide
realtimeoperationalreportingandanalysisofcontentfromSAPBusinessSuiteandother
sources.WhilethecalculationviewsusedbySAPHANALivearesupportedonlyonSAP
HANA,ABAPbasedCDShasbeenengineeredwithcompletetransparencytothe
underlyingdatabase,meaningthatallmajordatabasevendorsaresupportedinadditionto
SAPHANA,whichremainstheoptimaldatabasechoice.
SAPdevelopersarealsousingCDSfornewSAPBusinessSuitedevelopments,especially
innewersoftwarecomponents,althoughitisabitmorechallengingtotakeadvantageofthe
fullbreadthoftheunifyingcharacteristicsofCDSinSAPBusinessSuite,asitsdatamodel
hasevolvedovertime.
EachCDSvariantisproperlyembeddedintotheparticularitiesofthesupported
technologyenvironment.WiththeABAPvariant,theintegrationofCDSartifacts
intotheABAPstackisfairlystraightforward.Theartifactsaremodeledand
editedusingtheDDLeditortoolwithintheEclipsebasedABAPdevelopment
toolsforSAPNetWeaver(knownasABAPinEclipse).CDSartifacts,likeany
otherABAPdevelopmentobject,aresubjecttothetransportsystemwithinSAP
NetWeaverASABAPsothattheycaneasilybetransportedfromadevelopment
systemtoqualityassuranceandproductionsystems.CDSartifactsarestoredin
theDDICandcanbeaccessedinABAPprogramsviaOpenSQLinthesame
mannerasordinaryABAPtablesorviews.
CDSinABAP:AStepbyStepApproach
LetsseeABAPbasedCDSinactioninarealworlddevelopmentscenario.
Here,IllshowyouanexamplethatdemonstrateshowtouseCDSwithSAPs
developmenttoolset.
1.StartABAPinEclipse
First,youneedtostartABAPinEclipse,whichisaplugintoolforABAP
developmentthatyouinstallinyourEclipseworkspace.(Ifyoudonotyethavea
localinstallationofEclipse,simplydownloadthelatestversioncurrentlyMars
toyourdesktop.)SAPsEclipsebasedplugins,includingABAPinEclipse,
areavailablefromitstoolsupdatesite(https://tools.hana.ondemand.com).
TostartABAPinEclipse,opentheEclipseprojectexplorerandswitchtothe
ABAPdevelopmentperspective.Tobegindevelopmentwork,establisha
connectiontotheABAPbackendbycreatinganABAPproject(intheexample,
M36_001_d002831_en).Withthisconnection,youcancreatenewABAP
repositoryartifacts,suchasABAPprograms,classes,and,asinourexample,
CDSartifacts.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
2/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Youcancreatetheserepositoryartifactsaslocalobjectsbelongingtothe$TMP
package,butinthisexampleweuseanexistingpackagecalledZDEV201to
housetheCDSartifact.Simplyrightclickonthepackageicon,andfromthe
contextmenuselectNew>OtherABAPRepositoryObject(seeFigure1).
Figure1Createanewrepositoryobject
2.CreateaNewCDSView
IntheNewABAPRepositoryObjectpopup,searchfortheDDLsourceeditor
andselectittolaunchtheNewDDLSourcewizard(seeFigure2).First,specify
thebasicpropertiesoftheview.Intheexamplewhichisasimplescenario
basedonSAPswellknownEnterpriseProcurementModel(EPM)demomodel
wewanttocountopeninvoicesthathavenotyetbeenpaidbybusiness
partners.Sowespecifythetechnicalname(ZDDLS_E2E_INV_COUNT_201)
andsomeshorttexttodescribetheview(CDSview:openinvoicecount).The
underlyingpackage(ZDEV201)isassignedautomatically.
Figure2Specifythebasicpropertiesoftheview
NotethatoneofthefundamentaldifferencesbetweenCDSinnativeSAP
HANAandCDSinABAPliesintheviewdefinition.InboththeABAPandSAP
HANAscenarios,youbeginyourdevelopmentworkbycreatingviewsontopof
existingdatabasetablesthatarecontainedintheDDIC.WithCDSinnative
SAPHANA,youmustcreatethebasicentitytypesthatcorrespondtotheDDIC
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
3/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
tablesaspartoftheCDSviewdefinition.WithCDSinABAP,youcansimply
refertoanyunderlyingDDICtable,view,ortypefromwithintheCDSview
definition,avoidingtheneedtoduplicatetheDDICtabledefinitionsonthe
CDSlayer.IntheABAPscenario,theCDSdefinitionsareconsideredDDIC
artifactsandneedtobeactivatedlikeanyotherDDICartifact,andwhen
changesaremade,theirimpactispropagatedtodependentartifacts.
3.AssignaTransportRequest
OnthenextscreenoftheNewDDLSourcewizard,assignatransportrequest
fortheview(seeFigure3).AfterassigningtheviewsDDLsourcetoanexisting
ABAPpackage,eitherselectanopentransportrequestorcreateanewone,
whichyoucanusetokeeptrackofthechangesthatmakeupyourdevelopment
tasks.Thistransportrequestcanbebundledwithtasksfromotherdevelopers
andlatertransportedtoasubsequentsystemfortestandthenproduction.
Figure3Assignatransportrequest
Thereisnoneedtogotothelowerlevelsoftheunderlyingdatabase(suchas
SAPHANA)tomanagethetransportofCDSartifacts.Allchangesand
transportsaremanagedintheABAPlayerendtoend.
4.SelectaTemplatefortheCDSView
ThelastscreenoftheNewDDLSourcewizard(Figure4)offersaselectionof
templatesforcreatingaCDSview,includingadisplayofthedefaultsyntax
providedwitheach.Thereisatemplateforabasicviewtemplatesforbuilding
viewswithmoreadvancedfeatures(suchasjoins,associations,and
parameters)andatemplateforextendingaview(byaddingfields,forinstance).
Fortheexample,wechoosethebasicviewtemplate.
Figure4Selectthebasicviewtemplate
Thetemplatesincludeplaceholdersforcodethatyoufillinstepbystep.Ifyou
laterdiscovertheneedtochangeorextendthenatureofyourCDSview,you
canalwayschangethesourcecodedirectlyintheDDLeditorandfreelyeditall
partsofitasneeded.Thisisparticularlyhelpfulifyouwanttocopyportionsof
thesourcecodefromexamplecode,forinstance.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
4/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
5.CompletetheCodingfortheViewDefinition
AfterselectingthetemplateandclickingonFinish,youarereadytofillthe
placeholdersprovidedbythetemplatetocompletethedefinitionofourview
ZDDLS_E2E_INV_COUNT_201(seeFigure5).OpentheDDLeditorwhich
isasourcecodeeditorthatoffersveryrichcontextsensitivecodecompletion
capabilitiesfromtheprojectperspectiveintheEclipseprojectexplorerviathe
contextmenu.
Figure5DefinetheviewintheDDLeditor
First,specifyanABAPrepositorynamefortheviewZV_INVCNT_201inthe
example.Thetextlabelandviewnamearefilledinautomaticallybasedonthe
informationenteredwhenspecifyingthebasicpropertiesoftheview.Then
specifythetargetdatasourcefortheinvoicecount.Theunderlyingbasetableto
beusedasthetargetdatasourceisnamedsepm_sddl_so_invoice_header
(referencedasinv)butwiththecodecompletionfunctionalityincludedwith
CDS,youdonthavetorememberlongnamesliketheseyoucansimplystart
typingaprefix,suchassepm_sddl_so,andallmatchingbasetablesare
displayedinalist,whereyoucanviewthedetailsofeachtable(suchasfields
andtheirtypes)andselectthetableyouwant.
YoucanviewthedetailsofanyofthesyntacticalelementsthatmakeupaCDS
viewdefinitionontheflybypressingtheF2key.Thetooltippopupshowsallthe
attributes,thecorrespondingdataelementsandtypes,andtheassociations
(relationships)betweentheelementandothertablesorviews,includingtheir
cardinality.Forinstance,intheexample,thetooltippopupshowsthatthe
invoiceheadertablecontainsanumberofassociations,includinganassociation
withabuyertable.Withthetooltipfunctionality,thereisnoneedtonavigate
deeplyinsidetheDDICalloftherelevantinformationisvisibleinoneplace.
6.AddAnyAssociations
Fortheviewtocountthenumberofopeninvoices,itneedstocollect
informationaboutthebuyer,suchasthecustomerIDandname.Toenablethis,
navigatealongtheassociationbetweentheviewsunderlyinginvoiceheader
tableandthebuyertable,whichissyntacticallyfacilitatedbyapathexpression
separatedbydots.Toaddtheassociationtotheviewdefinition,youtypea
referencetotheinvoiceheadertable(inv)followedbyadot(seeFigure6).A
listofavailableattributes,includingassociations,appearsonceyouhavetyped
thedot.
Figure6Addanassociationtoatabletocollectinformation
Selectbuyertoaddtheassociationtosepm_sddl_businesspartner,whichisa
viewthatencapsulatesthebuyertable,totheviewdefinition,andthenadd
anotherdottodisplaythecolumnsavailableinthebuyerview(seeFigure7).
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
5/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Addthecolumnsyouneedtocounttheopeninvoices:business_partner_id,
company_name,andaddress_key.Figure8showsthecompletedcode.
Figure7Definetheassociation
Figure8Thecompletedviewdefinition
7.ExecutetheCodeandViewtheResults
WithCDS,youcanactivateandtestyourcoderightawaybypressingtheF8
key,whichimmediatelypreviewstheresultsinthedatabrowser(seeFigure9).
Figure9Theresultsetpreviewedinthedatabrowser
AdditionalOptionsforRefiningCDSViews
LetslookatafewdifferentwaysyoucanfinetuneaCDSviewtogettheresult
setthatbestmeetsyourneeds.
UsingAggregationandGrouping
Intheexamplescenario,theresultsetincludesallbusinesspartners,notjustthe
onesthathavenotyetpaidtheirinvoices.Wecanrefinetheresultsbymanually
addingacounterinthesourcecode(seeFigure10).
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
6/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Figure10Addacountertotheviewtorefinetheresultset
Thecountfunctionrequiresagroupbyclause,however,whichismissingfrom
oursourcecode.UsingthequickfixcapabilitiesofEclipse,wecanaddthe
missinggroupbyclausewithasingleclick.Clickonthehighlightedselect
statementandchooseAddGroupbyClause,whichautomaticallyinsertsthe
groupbyclausecontainingtheelementsyoudefinedforthecount(seeFigure
11).Torestricttheresultset,wemanuallyaddasimplewhereclausethat
returnsresultswithapaymentstatusotherthanPforpaid(seeFigure12).
Figure11Addagroupbyclausetothecounter
Figure12Addasimplewhereclausetorestricttheresults
NowyoucanreruntheCDSviewbypressingtheF8key,whichrevealsthatthe
resultsetoftheviewisstillrawitcontainsaddresskeys,whichareGUIDs
pointingtoaddressrecords,whentheactualcityandstreetnameswouldbe
moreuseful(seeFigure13).
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
7/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Figure13Theresultsetreturnedbythemodifiedviewdefinition
UsingViewHierarchiesandAssociations
Toshowthecityandstreetnamesintheresultset,insteadoftheGUIDs
pointingtoaddressrecords,defineasecondCDSviewthatdeclaresan
associationtotheaddressesofthebusinesspartners.
First,createanotherviewcalledZddls_E2e_Cust_Classify_201intheZDEV201
package,asdescribedpreviously(seeFigure14).Specifythebasicpropertiesof
theviewintheNewDDLSourcewizard,suchasthetechnicalname
(ZDDLS_E2E_CUST_CLASSIFY_201)andsomeshorttexttodescribetheview
(CDSview:customerclassification).
Figure14Createasecondviewtotailortheresultsetdisplay
Onthetransportrequestscreen(Figure15),assignthenewlycreatedviewto
theopendevelopmentrequest,andontheviewtemplatescreen(Figure16),
chooseDefineViewwithAssociation.Thesyntaxforthisisslightlymore
complicatedtheassociationcontainsanoncondition,whichissimilartoa
joinoperation.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
8/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Figure15Assignatransportrequestforthesecondview
Figure16Selecttheviewwithanassociationtemplate
Afterselectingthetemplate,opentheDDLeditortocompletetheview
definition.Aswiththefirstview,specifyanABAPrepositorynameforthe
correspondingABAPview(ZV_CUSTCLSFY_201intheexample).Again,the
textlabelandviewnamearefilledinautomatically.Thenspecifyadatasource
fortheview,whichisthefirstviewcreatedinthisexample
(Zddls_E2e_Inv_Count_201),alongwithatargetdatasourcefortheassociation
createdbythetemplate.Asbefore,pickadatasourcewiththeaidofthecode
completionfunctionalitybytypingtheprefixsepm_sddlandselecting
sepm_sddl_address(referencedas_address)fromthematchingitems(see
Figure17).
Figure17DefinetheviewanditsassociationintheDDLeditor
Next,fillouttheonconditiondefiningthesourceandtargetcolumnsthatare
connectedbytheassociation.Forthesource,specifythefirstview
Zddls_E2e_Inv_Count_201andselectaddress_keyfromthedisplayedlistof
availablecolumns(seeFigure18).Forthetarget,specifythetargetdatasource
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
9/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
(referencedas_address)fortheassociationandselectthecorresponding
address_keyfromthedisplayedlistofavailablecolumns(seeFigure19).
Figure18Definethesourcefortheassociation
Figure19Definethetargetfortheassociation
UsingViewFieldsandExpressions
Thenextstepistodefinetheviewfields.Thesystemtellsyouthatthe
address_keycolumnneedstobepartoftheviewssignature(becauseitisthe
linkbetweenthetwoviews),soquicklyadditbytypingtheprefixadandusing
thecodecompletionfunctionality(seeFigure20).Likewise,addcustomerID
andcustomername.Figure21showsthecompleteddefinitionoftheviewfields
fortheassociation.
Figure20Definetheviewfieldsfortheassociation
Figure21Thecompleteddefinitionoftheviewfieldsfortheassociation
Finally,todemonstratetheversatilityofCDS,letsaddacalculatedfieldthatis
basedonconditionsthatneedtobemet.Todefinethisfield,manuallyadda
caseexpression(seeFigure22).Thecompletedcaseexpressionforthe
example(Figure23)deliversacategoryfieldthatassignsacertainvalue
dependingonthenumberofopeninvoices:Cforlessthan5,000Dfor
between5,000and10,000andSformorethan10,000.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
10/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Figure22Addacaseexpressiontoenableacalculatedfield
Figure23Thecompletedcaseexpression
Lastly,addviewfieldsthatcontainaddressinformationbyspecifyingthetarget
datasource_address(seeFigure24)andthenselectingcountry,street,
city,andpostalcodefromthelistofavailablecolumns(seeFigure25).
Figure24Specifythedatasourcefortheviewfields
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
11/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Figure25Specifytheviewfieldstodisplayintheresultset
Figure26showsthecompletedcode.
Figure26Therefinedviewdefinition
ViewingtheRefinedResults
Activateandruntheview,whichdisplaystheresultsshowninFigure27.Asyou
cansee,alloftherefinementsarereflectedinthedatabrowser.
Figure27Theresultsetreturnedbytherefinedviewdefinition
TheassociationdetailsdefinedintheDDLeditorarealsointegratedintothe
databrowser.AsintheDDLeditor,youcannavigatealongthevarious
associations,meaningthatyoucanselectarowandviewalistofassociations,
suchasaddress(seeFigure28).Selectinganassociationwilldisplaythe
resultingrecordthatisreferredtobytheassociation(seeFigure29),whichcan
beusedfortestingandanalysis.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
12/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
Figure28Navigatingalonganassociationinthedatabrowser
Figure29Displayingtherecordreferredtobytheassociationinthedatabrowser
Figure30showsourcompletedCDSartifactsintheEclipseprojectexplorer.
Figure30ThecompletedCDSartifactsintheEclipseprojectexplorer
Summary
SAPNetWeaver7.4bringstheCDSconceptintroducedfornativeSAPHANA
developmenttotheABAPdevelopmentworld.PowerfulCDSfunctionssuchas
associationsandannotationsarefullyintegratedintoABAPinEclipse,and
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
13/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
assistdevelopersateachstepofthedefinitionprocess.AndsinceCDSis
executedatruntimedirectlyonthedatabaselayer,itfacilitatesthecode
pushdownparadigmpioneeredbySAPHANArightfromthebeginning.With
thesefeaturesonhandalongwiththeCDSenhancementsincludedinthe
upcoming7.5releaseofSAPNetWeaver2developerswillhavethetoolsthey
needtosucceedinamodernbusinesslandscape.
1LearnmoreabouttheSAPHANAimplementationofCDSathttp://bit.ly/1jDYMss.[back]
2LearnmoreaboutCDSenhancementsinSAPNetWeaver7.5inmyarticleAFoundationfortheFuturein
theJulySeptember2015issueofSAPinsider(SAPinsiderOnline.com).[back]
KarlKessler
KarlKessler(karl.kessler@sap.com)joinedSAPSEin1992.
HeistheProductManageroftheSAPNetWeaver
foundationwhichincludesSAPNetWeaverApplication
Server,theABAPWorkbench,andtheEclipsebasedABAP
developmenttoolsforSAPNetWeaverandisresponsible
forallrolloutactivities.
MorefromSAPinsider
AFoundationforthe
Future
SAPFioriApplication
DevelopmentintheCloud
Inthiscolumn,SAPsKarl
Kesslerrevealswhattoexpect
withtheupcomingreleaseof
SAPNetWeaver7.5.He
highlightsthemarketchanges
thathavenecessitatedanew
foundation,details...
Gainacomprehensive
understandingofthenewways
inwhichSAPFioriapplications
canbebuiltusingSAPWeb
IDEonSAPHANACloud
Platform,aswellashowto...
AGuidetoSAP's
Development
EnvironmentsforSAP
HANAandtheCloud
Readthisindepthcolumnfora
comprehensiveunderstandingof
SAPscurrentmaintooling
environmentsforsupporting
SAPHANAandthecloud,
includingbothdesktopand
browserbasedenvironments.
Youwillgain...
COMMENTS
Pleaselogintopostacomment.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
14/15
8/8/2016
EnhancedABAPDevelomentwithCoreDataServices(CDS)
ABOUT US
SAPinsiderispublishedbyWISPublishing,a
divisionofWellesleyInformationServices.
20CarematrixDrive,Dedham,MA02026USA
SalesandCustomerService:1(781)7518799
customer@wispubs.com
2016WellesleyInformationServices.Allrights
reserved.
CONTACT US
PRESS ROOM
MEDIA KIT
FAQ
PRIVACY POLICY
SAPinsider
insiderPROFILES
SAPinsiderConferences&Seminars
insiderRESEARCH
SAPinsiderSeminarsonDemand
SAPexperts
SITEMAP
insiderBOOKS
OnlineISSN#21552444,PrintISSN#1537145X
SAPandtheSAPlogoaretrademarksorregistered
trademarksofSAPSEinGermanyandother
countries.
http://sapinsider.wispubs.com/Assets/Articles/2015/October/SPIenhancedABAPdevelopmentwithCoreDataServices
15/15