SAP CAPలో డొమైన్ మోడలింగ్

పరిచయం

SAP CAPలోని డొమైన్ మోడల్ అనేది ఎంటిటీ-రిలేషన్‌షిప్ మోడల్‌ల పరంగా సమస్య డొమైన్ యొక్క స్టాటిక్, డేటా-సంబంధిత అంశాలను వివరించే మోడల్. ఈ కథనంలో మేము SAP CAPలో డొమైన్ మోడలింగ్‌ను వివరంగా అధ్యయనం చేస్తాము.

డొమైన్ మోడలింగ్

సరళంగా చెప్పాలంటే, SAP CAPలోని CDS డొమైన్ మోడల్‌ను ఉత్పత్తి చేస్తుంది, అది కీలు, ఫీల్డ్‌లు మరియు ఉల్లేఖనాల పరంగా వ్యాపార సమస్యను నిర్వచిస్తుంది. డొమైన్ మోడల్‌ను రూపొందించే కోడ్ CDS స్కీమా (db/schema.cds)లో వ్రాయబడింది. ఈ డొమైన్ మోడల్స్ సర్వీస్ డెఫినిషన్స్, పెర్సిస్టెన్స్ మోడల్స్, డేటాబేస్‌లలో ఉపయోగించబడతాయి లేదా మరొక డొమైన్ మోడల్‌లో కూడా తిరిగి ఉపయోగించబడతాయి.

నమూనా ఉదాహరణ:

నేమ్‌స్పేస్ empInfo; '@sap/cds/common' నుండి {కరెన్సీ, నిర్వహించబడుతుంది}ని ఉపయోగించడం; ఎంటిటీ ఉద్యోగులు: నిర్వహించబడే {కీ ID: పూర్ణాంకం; మొదటి పేరు: స్థానికీకరించిన స్ట్రింగ్ (111); చివరి పేరు: స్థానికీకరించిన స్ట్రింగ్ (1111); మేనేజర్: అసోసియేషన్ టు మేనేజర్స్; చేరిన తేదీ: పూర్ణాంకం; జీతం: దశాంశ (9,2); కరెన్సీ: కరెన్సీ; }

 

ఈ ఉదాహరణలో మేము schema.cds ఫైల్‌ని సృష్టించాము, ఇక్కడ మేము ఎంప్లాయీస్ అనే ఎంటిటీని సృష్టించాము, ఇందులో ఉద్యోగి యొక్క ప్రాథమిక వివరాలు ఉంటాయి.

ఈ మొత్తం స్కీమాకు నేమ్‌స్పేస్ అంటే empInfo ఇవ్వబడింది

ఈ స్కీమా ప్రామాణిక డేటా రకాన్ని అంటే కరెన్సీని ఉపయోగిస్తుంది. ఇలాంటి ప్రామాణిక డేటా రకాన్ని ఉపయోగించడం వలన దానికి సంబంధించిన అన్ని ముందే నిర్వచించిన విలువలను తీసుకురావడంలో మాకు సహాయపడుతుంది.

మేము మోడల్‌ను రూపొందించడానికి CDSని ఉపయోగిస్తాము. ఆ CDSలో, మేము ఉపయోగిస్తాము

  1. ప్రత్యేకమైన వస్తువుల సమితిని సూచించే ఎంటిటీలు ఉదా:
    1. ఉద్యోగి ప్రాథమిక సమాచారం
    2. ఉద్యోగి కమ్యూనికేషన్ సమాచారం
    3. ఉద్యోగి జీతం సమాచారం
  2. సంబంధాలను నిర్వచించడానికి సంఘాలు
    1. మొత్తం మేనేజర్‌ల జాబితాను కలిగి ఉండే మరో ఎంటిటీ మేనేజర్‌కి మేనేజర్ అసోసియేషన్

నామకరణ సమావేశం & సిఫార్సులు

  1. ఎంటిటీ పేరు పెద్ద అక్షరంతో ప్రారంభం కావాలి మరియు అది మానవులు చదవగలిగేలా మరియు స్వీయ వివరణాత్మకంగా ఉండాలి - ఉదాహరణకు, ఉద్యోగులు
  2. చిన్న అక్షరంతో మూలకాలను ప్రారంభించండి - ఉదాహరణకు, మొదటి పేరు
  3. ఎంటిటీల యొక్క బహువచన రూపాన్ని ఉపయోగించమని సిఫార్సు చేయబడింది - ఉదాహరణకు, ఉద్యోగులు
  4. రకాల ఏకవచన రూపాన్ని ఉపయోగించమని సిఫార్సు చేయబడింది - ఉదాహరణకు, కరెన్సీ
  5. సందర్భాలను పునరావృతం చేయవద్దు – ఉదాహరణకు, Employees.EmployeeNameకి బదులుగా Employees.name
  6. ఒక పదం పేర్లను ఇష్టపడండి - ఉదాహరణకు, జీతం బదులుగా జీతం
  7. సాంకేతిక ప్రాథమిక కీల కోసం IDని ఉపయోగించండి - ఉదాహరణకు, ఉద్యోగి ID కోసం ID
  8. మీరు మీ ఎంటిటీలను ప్రత్యేకంగా చేయడానికి నేమ్‌స్పేస్‌ని ఉపయోగించవచ్చు. ఇది SAPలో క్లయింట్ కాన్సెప్ట్ లాగా ఉంటుంది, ఇక్కడ మీరు వాటిని వేరు చేయడానికి ప్రత్యేకమైన నేమ్‌స్పేస్‌తో నకిలీ స్కీమాలను (cds ఫైల్‌లు) కలిగి ఉండవచ్చు. నేమ్‌స్పేస్‌లు ఐచ్ఛికం, మీ మోడల్‌లు ఇతర ప్రాజెక్ట్‌లలో మళ్లీ ఉపయోగించబడితే నేమ్‌స్పేస్‌లను ఉపయోగించండి. రోజు చివరిలో అవి కేవలం ఉపసర్గలు మాత్రమే, ఇవి ఫైల్‌లోని అన్ని సంబంధిత పేర్లకు స్వయంచాలకంగా వర్తించబడతాయి. - ఉదాహరణకి,

నేమ్‌స్పేస్ ల్యాప్‌టాప్;ఎంటిటీ డెల్ {}

..… దీనికి సమానం:

ఎంటిటీ ల్యాప్‌టాప్.డెల్ {}

  1. మీరు సమూహ నేమ్‌స్పేస్ విభాగాల కోసం సందర్భాలను ఉపయోగించవచ్చు. - ఉదాహరణకి,

నేమ్‌స్పేస్ ల్యాప్‌టాప్;ఎంటిటీ డెల్ {}           //> laptop.Dellసందర్భం Apple { entity MacBookPro {}       //> laptop.Apple.MacBookPro     ఎంటిటీ MacBookAir {} }

 

ఎంటిటీలు

ఎంటిటీలు ప్రాథమిక కీలతో కూడిన పట్టికల వంటివి. మేము ఈ ఎంటిటీలను ఉపయోగించి CRUD ఆపరేషన్ చేయవచ్చు. వీలైనంత ఫ్లాట్‌గా ఉంచండి. దానిని సాధారణీకరించవద్దు. పునర్వినియోగపరచలేని రకాలను ఉపయోగించవద్దు. ఈ విభాగం మోడలింగ్ కోసం మాత్రమే, వ్యక్తిగత ఫీల్డ్‌లకు సంబంధించిన ఉల్లేఖనాన్ని మాత్రమే జోడించాలి మరియు సాంకేతిక వివరాలు (లాజిక్స్) జోడించకూడదు.

రకాలు

రకాలు SAP ABAPలో డొమైన్ లాగా ఉంటాయి, ఇది టైప్ చేసిన డేటా ఎలిమెంట్‌లను నిర్వచించడానికి ఉపయోగించబడుతుంది.

అంశాలను

అంశాలు మోడల్‌ల పొడిగింపులు మరియు ప్రస్తుతం ఉన్న నిర్వచనాలు మరియు ఉల్లేఖనాలను విస్తరించడానికి ప్రధానంగా ఉపయోగించబడతాయి. మోడల్‌ని నిర్వచించిన తర్వాత, నిర్దిష్ట పని కోసం వాటి పైన ఉల్లేఖనాలను జోడించడానికి మేము వివిధ cds ఫైల్‌లను (Aspect) ఉపయోగించవచ్చు.

ఉదాహరణకి-

  • CD లు- మీ కోర్ డొమైన్ మోడల్, శుభ్రంగా, సరళంగా మరియు అర్థమయ్యేలా ఉంచబడుతుంది
  • audit-model.cds- ఫైల్‌లో ఆడిటింగ్ కోసం అవసరమైన అదనపు ఫీల్డ్‌లను జోడిస్తుంది
  • auth-model.cds- అధికారం కోసం ఉల్లేఖనాలను జోడిస్తుంది.

ప్రాథమిక కీలు

SAP ABAPలో పట్టికలు & CDS లాగా, మేము కీవర్డ్‌ని ఉపయోగించి ఎంటిటీ కోసం ప్రాథమిక కీలను నిర్వహిస్తాము కీ.

సాధారణ నిర్వచనాల మెథడాలజీని ఉపయోగించడం ద్వారా ఒక ప్రాథమిక కీని మోడల్‌లో మళ్లీ ఉపయోగించుకోవచ్చు.

మేము ఒక common.cds మోడల్‌ని సృష్టించవచ్చు, ఇక్కడ అన్ని సాధారణ నిర్వచనాలు నిల్వ చేయబడతాయి.

// సాధారణ నిర్వచనాలు

entity StandardEntity {కీ ID : UUID; } ఇప్పుడు ఈ సాధారణ నిర్వచనాలను క్రింది విధంగా తిరిగి ఉపయోగించవచ్చు: './common' నుండి { StandardEntity }ని ఉపయోగించడం; సంస్థ ఉద్యోగి : StandardEntity {పేరు : స్ట్రింగ్; ... } entity Manager : StandardEntity {name : String; ...}

 

సాధారణ ఫైల్ ఇప్పటికే డిఫాల్ట్‌గా ముందే నిర్వచించబడిన ఎంటిటీ పేరుతో సృష్టించబడింది క్యూడ్.

UUIDలను ODataకి మ్యాపింగ్ చేస్తోంది

CDS UUIDలను Edm.Guidకి డిఫాల్ట్‌గా అన్ని OData మోడల్‌లలో మ్యాప్ చేస్తుంది. అయినప్పటికీ, OData ప్రమాణం Edm.Guid విలువల కోసం నిర్బంధ నియమాలను ఉంచుతుంది - ఉదాహరణకు, హైఫనేటెడ్ స్ట్రింగ్‌లు మాత్రమే అనుమతించబడతాయి - ఇది ఇప్పటికే ఉన్న డేటాతో విభేదించవచ్చు. కాబట్టి, మేము ఈ క్రింది విధంగా డిఫాల్ట్ మ్యాపింగ్‌ను భర్తీ చేయడానికి అనుమతిస్తాము:

ఎంటిటీ పుస్తకాలు {

కీ ID: UUID @odata.రకం:'Edm.String';

...

}

అవసరమైతే, సంబంధిత ఆస్తిని భర్తీ చేయడానికి మీరు @odata.MaxLength ఉల్లేఖనాన్ని కూడా జోడించవచ్చు.

అసోసియేషన్

ఇది రెండు ఎంటిటీల మధ్య సంబంధాన్ని నిర్వచించడానికి ఉపయోగించబడుతుంది. ABAP CDS లాగా, ఇక్కడ కూడా మనం పదాన్ని ఉపయోగిస్తాము అసోసియేషన్. ఇక్కడ, కీవర్డ్ అనేక సూచిస్తుంది a 0..* కార్డినాలిటీ. కార్డినాలిటీకి సంబంధించిన పరిమితులను పరిమితిగా జోడించవచ్చు (ఇక్కడ పరిస్థితి) - ఉదాహరణకు, ఉపయోగించడం శూన్యం కాదు.

కూర్పులను

మేము మొత్తం ఎంటిటీ యొక్క ఆబ్జెక్ట్‌లతో ఎంటిటీ ఫీల్డ్‌ని అనుబంధించే అసోసియేషన్ కాకుండా, కంపోజిషన్‌లు కేవలం మరొక ఎంటిటీ యొక్క నిర్దిష్ట ఫీల్డ్‌ను సూచిస్తాయి. ఇది స్వీయ-నిర్వహణ లోతైన కార్యకలాపాలు (ఇన్సర్ట్/అప్‌డేట్) మరియు క్యాస్కేడ్ తొలగింపు (మల్టీ డిపెండెంట్ టేబుల్ తొలగింపు) యొక్క అదనపు ప్రయోజనాన్ని కలిగి ఉంది.

// కలిగి ఉన్న ఆర్డర్ ఐటెమ్‌లతో ఆర్డర్‌లను నిర్వచించండిఎంటిటీ ఆర్డర్‌లు {కీ ID : UUID; అంశాలు : Items.parent=$self;}ఎంటిటీ Order_Itemsలో అనేక ఆర్డర్_ఐటెమ్‌ల కూర్పు // ఆర్డర్‌ల ద్వారా మాత్రమే యాక్సెస్ చేయబడుతుంది  కీ పేరెంట్: ఆర్డర్స్ అసోసియేషన్; కీ పుస్తకం : అసోసియేషన్ టు బుక్స్; పరిమాణం : పూర్ణాంకం;}

ఉత్తమ పద్ధతులు

  1. మోడల్‌లలో సాంకేతిక వివరాలను జోడించవద్దు, మేము ఉపయోగిస్తాము అంశాలనుదాని కోసం
  2. ఉపయోగించండి చిన్న పేర్లు మరియు సాధారణ ఫ్లాట్ నమూనాలు
  3. మోడల్స్‌లోని ఎంటిటీలను సాధారణీకరించవద్దు
  4. మీరు నిజంగా అధిక లోడ్‌లు మరియు వాల్యూమ్‌లతో వ్యవహరిస్తే స్థానిక పూర్ణాంక శ్రేణులను ఉపయోగించండి. లేకపోతే, UUIDలకు ప్రాధాన్యత ఇవ్వండి

ఇప్పటి వరకు మనం నేర్చుకున్నది: దాని పైన మోడల్ మరియు అంశాల సృష్టి .

SAP CAPలో డొమైన్ మోడలింగ్

అభిప్రాయము ఇవ్వగలరు

స్పామ్ తగ్గించడానికి ఈ సైట్ Akismet ను ఉపయోగిస్తుంది. మీ వ్యాఖ్య డేటా ఎలా ప్రాసెస్ చేయబడిందో తెలుసుకోండి.