Files
cloud-cap-samples/media-store/db/schema.cds
Dzmitry_Tamashevich@epam.com 7a0e8fdba6 remove redundantt folder
2021-01-04 14:37:01 +01:00

117 lines
3.1 KiB
Plaintext

namespace sap.capire.media.store;
aspect NamedEntityAspect {
key ID : Integer;
name : String(120);
}
aspect ContactInfoAspect {
key ID : Integer;
lastName : String(20);
firstName : String(40);
city : String(40);
state : String(40);
adress : String(70);
country : String(40);
postalCode : String(10);
phone : String(24);
fax : String(24);
email : String(60);
}
entity MediaTypes : NamedEntityAspect {}
entity Genres : NamedEntityAspect {}
entity Playlists : NamedEntityAspect {}
entity PlaylistTrack {
key playlist : Association to Playlists;
key track : Association to Tracks;
}
entity Artists : NamedEntityAspect {}
entity Albums {
key ID : Integer;
title : String(120);
artist : Association to Artists;
}
entity Employees : ContactInfoAspect {
reportsTo : Association to Employees;
title : String(20);
birthDate : DateTime;
hireDate : DateTime;
}
entity Customers : ContactInfoAspect {
company : String(80);
supportRep : Association to Employees;
}
// keep columns order for importing data
// entity Employees {
// key ID : Integer;
// lastName : String(20);
// firstName : String(40);
// title : String(20);
// reportsTo : Association to Employees;
// birthDate : DateTime;
// hireDate : DateTime;
// adress : String(70);
// city : String(40);
// state : String(40);
// country : String(40);
// postalCode : String(10);
// phone : String(24);
// fax : String(24);
// email : String(60);
// }
// entity Customers {
// key ID : Integer;
// firstName : String(40);
// lastName : String(20);
// company : String(80);
// adress : String(70);
// city : String(40);
// state : String(40);
// country : String(40);
// postalCode : String(10);
// phone : String(24);
// fax : String(24);
// email : String(60);
// supportRep : Association to Employees;
// }
entity Invoices {
key ID : Integer;
customer : Association to Customers;
invoiceDate : DateTime;
billingAdress : String(70);
billingCity : String(40);
billingState : String(40);
bilingCountry : String(40);
billingPostalCode : String(40);
total : Decimal(10, 2);
}
entity InvoiceItems {
key ID : Integer;
invoice : Association to Invoices;
track : Association to Tracks;
unitPrice : Decimal(10, 2);
quantity : Integer;
}
entity Tracks {
key ID : Integer;
name : String(200);
album : Association to Albums;
mediaType : Association to MediaTypes;
genre : Association to Genres;
composer : String(220);
milliseconds : Integer;
bytes : Integer;
unitPrice : Decimal(10, 2);
}