25
Transport i logistika u špediciji Beograd, 2013.

Baze Podataka 2

Embed Size (px)

DESCRIPTION

prikaz baze podataka u spediciji

Citation preview

Page 1: Baze Podataka 2

Transport i logistika u špediciji

Beograd, 2013.

Page 2: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

Sadržaj

SADRŽAJ 2

1 VERBALNI OPIS INFORMACIONOG SISTEMA 3

2 PROŠIRENI MODEL OBJEKTI VEZE (PMOV) 4

2.1 OTPREMNICA..............................................................................................................................................42.2 NALOGZAISKLADISTENJE...............................................................................................................................52.3 NALOGZAUSKLADISTENJE..............................................................................................................................62.4 MEDJUNARODNITOVARNILIST........................................................................................................................72.5 JEDINSTVENACARINSKADEKLARACIJA...............................................................................................................8

3 RELACIONI MODEL 9

4 KORISNIČKI DEFINISANI TIPOVI 10

5 DENORMALIZACIJA 11

5.1 PRE-JOINING (2NF): STAVKAOTPREMNICA.....................................................................................................115.2 PRE-JOINING (3NF): OTPREMNICA...............................................................................................................13

6 OPTIMIZACIJA 15

6.1 KEEPING SINGLE DETAIL WITH MASTER: ARTIKAL..............................................................................................156.2 STORING DERIVATIVE VALUES: OTPREMNICA...................................................................................................186.3 INDEKSI...................................................................................................................................................216.4 VERTIKALNO PARTICIONISANJE.....................................................................................................................21

7 Konačan relacioni model 22

2

Page 3: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

1 Verbalni opis informacionog sistema

Rad obuhvata funkcije prijema i transporta namirnica u špediciji Milšped. Za potrebe rada koristiće se otpremnica, nalog za uskladištenje, nalog za iskladištenje, međunarodni tovarni list i jedinstvena carinska deklaracija.

Tok procesa počinje sa izdavanjem otpremnice po nalogu za transport određenog artikla primaocu. Na otpremnici se nalaze detalji pošiljke (tip robe, količina, težina, podaci pošiljaoca, podaci primaoca itd.).Da bi određeni artikal bio otpremljen primaocu stvara se potrebni nalog za iskladištenje.Isto tako, po prijemu robe u samo skladište se formira nalog za uskladištenje sa relevantnim podacima pošiljke.

Pri transportu robe bilo primaocu ili ka samom skladištu, po prelasku državne granice, potrbna papirologija sadrži međunarodni tovarni list koji sadrži sve podatke pošiljke, preko samih detalja proizvoda (tip rode, naziv artikla, količina, težina itd.) do carinskih taksi, bruto i neto cena pošiljke i podaci o primaocu kao i o službenicima na carini.U ovom slučaju jedinstveni tovarni list se takođe podrazumeva. On se izdaje na osnovu međunarodnog tovarnog lista.

3

Page 4: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

2 Prošireni model objekti veze (PMOV)

1.1 Otpremnica

primalac

sadrzi

(0,M)

(1,1)

(1,M)

(1,1)

(0,M)

iz(1,1) (0,M)

izdao(1,1) (0,M)

PravnoLice

Otpremnica

StavkaOtpremnica

Radnik

Artikal

(1,M)

Zemlja

Grad

transport

TipRobe

isporucilac

#idPravnoLice

naziv

adresa

telefon

fax

#idOtpremnica

datum

napomena

#rb

kolicina

#idRadnik

imePrezime

#idArtikal

naziv

tezina

#idZemlja

#idGrad

#idTipRobe

naziv

4

Page 5: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

1.2 NalogZaIskladistenje

prevozi (0,M)

vozac

nalogodavac

NalogZaIskladistenje

Vozilo

Radnik

marka

(0,M)

(1,1)

MarkaVozilo

tip

TipVozilo

mestoIskladistenja

(0,M)

(1,1)

(1,M) ZemljaGrad

naOsnovu

(0,1)

(1,1)

Otpremnica

PravnoLiceisporucilac (0,M)

tip (0,M) TipRobe

#idNalogZaIskladistenje

datum

tezinaRobe

adresaIskladistenja

#idVozilo

naziv

kapacitet

#idRadnik

#idMarkaVozilo

naziv

#idTipVozilo

naziv

#idZemlja#idGrad

napomena

#idOtpremnica

#idPravnoLice

#idTipRobe

5

Page 6: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

1.3 NalogZaUskladistenje

prevozi(0,M)

vozac

nalogodavac

NalogZaUskladistenje

Vozilo

Radnik

mestoUskladistenja

(0,M)

(1,1)

(1,M)Zemlja Grad

naOsnovu

(0,1)

(1,1)

NalogZaIskladistenje

PravnoLice primalac(0,M)

tip(0,M)TipRobe

#idNalogZaUskladistenje

datum

tezinaRobe

adresaUskladistenja

#idVozilo

#idRadnik

#idZemlja #idGrad

napomena

#idNalogZaIskladistenje

#idPravnoLice

#idTipRobe

6

Page 7: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

1.4 MedjunarodniTovarniList

primalac

(0,M)

(1,1)

mestoIsporuke

tip(1,1) (0,M)

vozac (0,M)

PravnoLice

MedjunarodniTovarniList

TipRobe

Radnik

(1,M)

Zemlja

GradmestoPreuzimanja (0,M)

prevozi

(0,M)

(1,1)

Vozilo

isporucilac

naOsnovu (0,M) Otpremnica

#idPravnoLice

datum

adresaPreuzimanja

adresaIsporuke

ukupnaTezina

#idMedjunarodniTovarniList

#idTipRobe

#idRadnik

#idZemlja

#idGrad

#idVozilo #idOtpremnica

7

Page 8: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

1.5 JedinstvenaCarinskaDeklaracija

isporucilac

(0,M)

(1,1)

(1,M)

prelaz

naOsnovu(1,1) (0,1)

tip

PravnoLice

JedinstvenaCarinskaDeklaracija

StavkaJedinstvenaCarinskaDeklaracija

Carina

MedjunarodniTovarniList

TipRobe

primalac

#idPravnoLice

datum

ukupnaTezina

cenaRobe

#idJedinstvenaCarinskaDeklaracija

#rb

vrsta

osnovica

stopa

#idCarina

naziv

#idMedjunarodniTovarniList

#idTipRobe

8

Page 9: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

3 Relacioni model

Artikal (idArtikal, naziv, tezina);Radnik (idRadnik, imePrezime);TipRobe (idTipRobe, naziv);Zemlja (idZemlja, naziv);Grad (idZemlja, idGrad, naziv);PravnoLice (idPravnoLice, naziv, adresa, telefon, fax, idZemlja, idGrad);Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal);MarkaVozilo (idMarkaVozilo, naziv);TipVozilo (idTipVozilo, naziv)Vozilo (idVozilo, naziv, kapacitet, idMarkaVozilo, idTipVozilo);NalogZaIskladistenje (idNalogZaIskladistenje, datum, tezinaRobe, adresaIskladistenja, napomena, idZemlja, idGrad, idOtpremnica, idVozilo, idPravnoLice, idRadnik, idRadnik, idTipRobe);NalogZaUskladistenje (idNalogZaUskladistenje, datum, tezinaRobe, adresaIskladistenja, napomena, idZemlja, idGrad, idOtpremnica, idVozilo, idPravnoLice, idRadnik, idRadnik, idTipRobe);MedjunarodniTovarniList (idMedjunarodniTovarniList, datum, adresaPreuzimanja, adresaIsporuke, ukupnaTezina, idVozilo, idOtpremnica, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, idZemlja, idGrad, idZemlja, idGrad);Carina (idCarina, naziv);JedinstvenaCarinskaDeklaracija (idJedinstvenaCarinskaDeklaracija, datum, ukupnaTezina, cenaRobe, idPravnoLice, idPravnoLice, idCarina, idMedjunarodniTovarniList, idTipRobe);StavkaJedinstvenaCarinskaDeklaracija (idJedinstvenaCarinskaDeklaracija, rb, vrsta, osnovica, stopa)

2 Korisnički definisani tipovi

9

Page 10: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

GOCREATE TYPE DatumVreme FROM DATETIME;END

public struct Adresa {public string zemlja;public int opstina;public string grad;public string adresa;public string broj;

public string getAdresa(){return string.Format(“{0}, {1} {2}, {3} {4}”,zemlja, opstina, grad, adresa, broj);

}}

3 Denormalizacija

10

Page 11: Baze Podataka 2

(1,M)

(1,M)

BAZE PODATAKA 2 Seminarski rad

3.1 Pre-joining (2NF): StavkaOtpremnica

3.1.1 Pre denormalizacije

#idOtpremnica #idStavkaOtpremnica

Otpremnica StavkaOtpremnica

datum

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal);

3.1.2 Nakon denormalizacije

#idOtpremnica #idStavkaOtpremnica

Otpremnica StavkaOtpremnica

datum datumOtpremnica

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal, datumOtpremnica);

3.1.3 Tabela trigera

TABELA OPERACIJA KOLONA POTREBAN OPIS

Otpremnica

INSERT NE

UPDATE datum DA

Triger vrši izmenu kolone datumOtpremnica u tabeli StavkaOtpremnica na osnovu kolone datum u tabeli Otpremnica.

DELETE NE

StavkaOtpremnica

INSERT DATriger vrši izmenu kolone datumOtpremnica na osnovu kolone idOtpremnica.

UPDATEidOtpremnica

DA

Triger ne dozvoljava direktnu izmenu kolone idOtpremnica.

datumOtpremnica

Triger ne dozvoljava direktnu izmenu kolone datumOtpremnica.

DELETE NE

11

Page 12: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

3.1.4 Definicija trigera

Update: Triger vrši izmenu kolone datumOtpremnica u tabeli StavkaOtpremnica na osnovu kolone datum u tabeli Otpremnica.

GOCREATE TRIGGER UpdateOtpremnicaON OtpremnicaAFTER UPDATEASDECLARE @idOtpremnica INTEGER = (SELECT idOtpremnica FROM inserted)DECLARE @datumOtpremnica DATETIME = (SELECT datum FROM inserted)BEGIN

ALTER TABLE StavkaOtpremnica DISABLE TRIGGER ALLUPDATE StavkaOtpremnicaSET datumOtpremnica = @datumOtpremnicaWHERE idOtpremnica = @idOtpremnicaALTER TABLE StavkaOtpremnica ENABLE TRIGGER ALL

END

Insert: Triger vrši izmenu kolone datumOtpremnica na osnovu kolone idOtpremnica.Update: Triger ne dozvoljava direktnu izmenu kolone idOtpremnica. Triger ne dozvoljava direktnu izmenu kolone idOtpremnica.

GOCREATE TRIGGER InsertUpdateStavkaOtpremnicaON StavkaOtpremnicaAFTER INSERT, UPDATEASDECLARE @idOtpremnica INTEGER = (SELECT idOtpremnica FROM inserted)DECLARE @idStavkaOtpremnica INTEGER = (SELECT idStavkaOtpremnica FROM inserted)DECLARE @datumOtpremnica DATETIME = (SELECT datum FROM Otpremnica WHERE idOtpremnica = @idOtpremnica)BEGIN

UPDATE StavkaOtpremnicaSET datumOtpremnica = @datumOtpremnicaWHERE idOtpremnica = @idOtpremnica AND idStavkaOtpremnica = @idStavkaOtpremnica

END

12

Page 13: Baze Podataka 2

(0,M) (1,1)

(0,M) (1,1)

BAZE PODATAKA 2 Seminarski rad

3.2 Pre-joining (3NF): Otpremnica

3.2.1 Pre denormalizacije

#idTipRobe #idOtpremnica

TipRobe sadrzi Otpremnica

naziv

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice);TipRobe (idTipRobe, naziv);

3.2.2 Nakon denormalizacije

#idTipRobe #idOtpremnica

TipRobe sadrzi Otpremnica

naziv nazivTipRobe

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, nazivTipRobe);TipRobe (idTipRobe, naziv);

3.2.3 Tabela trigera

TABELA OPERACIJA KOLONA POTREBA

N OPIS

TipRobe

INSERT NE

UPDATE naziv DATriger vrši izmenu kolone nazivTipRobe u tabeli Otpremnica na osnovu kolone naziv u tabeli TipRobe.

DELETE NE

Otpremnica

INSERT DA Triger vrši izmenu kolone nazivTipRobe na osnovu kolone idTipRobe.

UPDATE

idNacinTransport

DA

Triger vrši izmenu kolone nazivTipRobe na osnovu kolone idTipRobe.

nazivTipRobe

Triger ne dozvoljava direktnu izmenu kolone nazivTipRobe.

DELETE NE

13

Page 14: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

3.2.4 Definicija trigera

Update: Triger vrši izmenu kolone nazivTipRobe u tabeli Otpremnica na osnovu kolone naziv u tabeli TipRobe.

GOCREATE TRIGGER UpdateTipRobeON TipRobeAFTER UPDATEASDECLARE @idTipRobe INTEGER = (SELECT idTipRobe FROM inserted)DECLARE @nazivTipRobe VARCHAR (100) = (SELECT naziv FROM inserted)BEGIN

ALTER TABLE Otpremnica DISABLE TRIGGER ALLUPDATE OtpremnicaSET nazivTipRobe = @nazivTipRobeWHERE idTipRobe = @idTipRobeALTER TABLE Otpremnica ENABLE TRIGGER ALL

END

Insert: Triger vrši izmenu kolone nazivTipRobe na osnovu kolone idTipRobe.Update: Triger vrši izmenu kolone nazivTipRobe na osnovu kolone idTipRobe. Triger ne dozvoljava direktnu izmenu kolone nazivTipRobe.

GOCREATE TRIGGER InsertUpdateOtpremnicaON OtpremnicaAFTER INSERT, UPDATEASDECLARE @idTipRobe INTEGER = (SELECT idTipRobe FROM inserted)DECLARE @idOtpremnica INTEGER = (SELECT idOtpremnica FROM inserted)DECLARE @nazivTipRobe VARCHAR (100) = (SELECT naziv FROM TipRobe WHERE idTipRobe = @idTipRobe)BEGIN

UPDATE OtpremnicaSET nazivTipRobe = @nazivTipRobeWHERE idOtpremnica = @idOtpremnica

END

14

Page 15: Baze Podataka 2

(1,M)

(1,M)

BAZE PODATAKA 2 Seminarski rad

4 Optimizacija

4.1 Keeping single detail with master: Artikal

4.1.1 Pre optimizacije

#idOtpremnica

Otpremnica

#idStavkaOtpremnica #idArtikal

StavkaOtpremnica sadrzi Artikal

kolicina

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, nazivTipRobe);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal, datumOtpremnica);Artikal (idArtikal, naziv, tezina);

4.1.2 Nakon optimizacije

#idOtpremnica

Otpremnica

#idStavkaOtpremnica #idArtikal

StavkaOtpremnica sadrzi Artikal

kolicina ukupnoIsporuceno

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, nazivTipRobe);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal, datumOtpremnica);Artikal (idArtikal, naziv, tezina, ukupnoIsporuceno);

15

Page 16: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

4.1.3 Tabela trigera i procedura

TABELA OPERACIJA

KOLONA POTREBAN

OPIS

Otpremnica

INSERT DA Triger ne dozvoljava direktan unos kolone ukupnaTezina.

UPDATEukupnaTezina DA

Triger ne dozvoljava direktnu izmenu kolone ukupnaTezina.

DELETE NE

StavkaOtpremnica

INSERT DA Triger vrši izmenu kolone ukupnaTezina u tabeli Otpremnica pozivom procedure.

UPDATE kolicina DATriger vrši izmenu kolone ukupnaTezina u tabeli Otpremnica pozivom procedure.

DELETE DA Triger vrši izmenu kolone ukupnaTezina u tabeli Otpremnica pozivom procedure.

16

Page 17: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

4.1.4 Definicija trigera i procedura

GOCREATE PROCEDURE ProcedureDodaj @idArtikal INTEGER, @kolicina INTEGERASBEGIN

UPDATE Artikal SET ukupnoIsporuceno = ukupnoIsporuceno + @kolicina WHERE idArtikal = @idArtikal

END

GOCREATE PROCEDURE ProcedureOduzmi @idArtikal INTEGER, @kolicina INTEGERASBEGIN

UPDATE Artikal SET ukupnoIsporuceno = ukupnoIsporuceno - @kolicina WHERE idArtikal = @idArtikal

END

GOCREATE TRIGGER InsertStavkaOtpremnicaON StavkaOtpremnicaAFTER INSERTASDECLARE @idArtikal INTEGER = (SELECT idArtikal FROM inserted)DECLARE @kolicina INTEGER = (SELECT kolicina FROM inserted)BEGIN

EXEC ProcedureDodaj @idArtikal, @kolicinaEND

GOCREATE TRIGGER DeleteStavkaOtpremnicaON StavkaOtpremnicaAFTER DELETEASDECLARE @idArtikal INTEGER = (SELECT idArtikal FROM deleted)DECLARE @kolicina INTEGER = (SELECT kolicina FROM deleted)BEGIN

EXEC ProcedureOduzmi @idAritkal, @kolicinaEND

17

Page 18: Baze Podataka 2

(1,M)

(1,M)

BAZE PODATAKA 2 Seminarski rad

4.2 Storing derivative values: Otpremnica

4.2.1 Pre optimizacije

#idOtpremnica

Otpremnica

#idStavkaOtpremnica #idArtikal

StavkaOtpremnica sadrzi Artikal

kolicina tezina

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, nazivTipRobe);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal, datumOtpremnica);Artikal (idArtikal, naziv, tezina, ukupnoIsporuceno);

4.2.2 Nakon optimizacije

#idOtpremnica

Otpremnica

ukupnaTezina

#idStavkaOtpremnica #idArtikal

StavkaOtpremnica sadrzi Artikal

kolicina tezina

Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, nazivTipRobe, ukupnaTezina);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal, datumOtpremnica);Artikal (idArtikal, naziv, tezina, ukupnoIsporuceno);

18

Page 19: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

4.2.3 Tabela trigera i procedura

TABELA OPERACIJA

KOLONA POTREBAN

OPIS

Otpremnica

INSERT DA Triger ne dozvoljava direktan unos kolone ukupnaTezina.

UPDATEukupnaTezina DA

Triger ne dozvoljava direktnu izmenu kolone ukupnaTezina.

DELETE NE

StavkaOtpremnica

INSERT DA Triger vrši izmenu kolone ukupnaTezina u tabeli Otpremnica pozivom procedure.

UPDATE kolicina DATriger vrši izmenu kolone ukupnaTezina u tabeli Otpremnica pozivom procedure.

DELETE DA Triger vrši izmenu kolone ukupnaTezina u tabeli Otpremnica pozivom procedure.

19

Page 20: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

4.2.4 Definicija trigera i procedura

GOCREATE PROCEDURE ProcedureOtpremnica @idOtpremnica INTEGERASDECLARE @ukupnaTezina REAL = (SELECT SUM (StavkaOtpremnica.kolicina * Artikal.tezina) FROM StavkaOtpremnica INNER JOIN Artikal ON (StavkaOtpremnica.idArtikal = Artikal.idArtikal) WHERE idOtpremnica = @idOtpremnica)BEGIN

UPDATE Otpremnica SET ukupnaTezina = @ukupnaTezina WHERE idOtpremnica = @idOtpremnica

END

GOCREATE TRIGGER InsertUpdateOtpremnicaON OtpremnicaAFTER INSERT, UPDATEASDECLARE @idOtpremnica INTEGER = (SELECT idOtpremnica FROM inserted)BEGIN

EXEC ProcedureOtpremnica @idOtpremnicaEND

GOCREATE TRIGGER InsertUpdateStavkaOtpremnicaON StavkaOtpremnicaAFTER INSERT, UPDATEASDECLARE @idOtpremnica INTEGER = (SELECT idOtpremnica FROM inserted)BEGIN

EXEC ProcedureOtpremnica @idOtpremnicaEND

GOCREATE TRIGGER DeleteStavkaOtpremnicaON StavkaOtpremnicaAFTER DELETEASDECLARE @idOtpremnica INTEGER = (SELECT idOtpremnica FROM deleted)BEGIN

EXEC ProcedureOtpremnica @idOtpremnicaEND

20

Page 21: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

4.3 Indeksi

CREATE INDEX indArtikal ON StavkaOtpremnica (idArtikal)

4.4 Vertikalno particionisanje

4.4.1 Pre particionisanja

Artikal (idArtikal, naziv, tezina, ukupnoIsporuceno);

4.4.2 Nakon particionisanja

Artikal (idArtikal, naziv, tezina);ArtikalDetalji (idArtikal, ukupnoIsporuceno);

4.4.3 Spajanje particionisanih tabela

CREATE VIEW ArtikalViewASSELECT a.idArtikal, a.naziv, a.tezina, d.ukupnoIsporucenoFROM Artikal a, ArtikalDetalji dWHERE a.idArtikal = d.idArtikal

21

Page 22: Baze Podataka 2

BAZE PODATAKA 2 Seminarski rad

5 Konačan relacioni model

Artikal (idArtikal, naziv, tezina);ArtikalDetalji (idArtikal, ukupnoIsporuceno);Radnik (idRadnik, imePrezime);TipRobe (idTipRobe, naziv);Zemlja (idZemlja, naziv);Grad (idZemlja, idGrad, naziv);PravnoLice (idPravnoLice, naziv, adresa, telefon, fax, idZemlja, idGrad);Otpremnica (idOtpremnica, datum, napomena, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, nazivTipRobe, ukupnaTezina);StavkaOtpremnica (idOtpremnica, idStavkaOtpremnica, kolicina, idArtikal, datumOtpremnica);MarkaVozilo (idMarkaVozilo, naziv);TipVozilo (idTipVozilo, naziv)Vozilo (idVozilo, naziv, kapacitet, idMarkaVozilo, idTipVozilo);NalogZaIskladistenje (idNalogZaIskladistenje, datum, tezinaRobe, adresaIskladistenja, napomena, idZemlja, idGrad, idOtpremnica, idVozilo, idPravnoLice, idRadnik, idRadnik, idTipRobe);NalogZaUskladistenje (idNalogZaUskladistenje, datum, tezinaRobe, adresaIskladistenja, napomena, idZemlja, idGrad, idOtpremnica, idVozilo, idPravnoLice, idRadnik, idRadnik, idTipRobe);MedjunarodniTovarniList (idMedjunarodniTovarniList, datum, adresaPreuzimanja, adresaIsporuke, ukupnaTezina, idVozilo, idOtpremnica, idRadnik, idTipRobe, idPravnoLice, idPravnoLice, idZemlja, idGrad, idZemlja, idGrad);Carina (idCarina, naziv);JedinstvenaCarinskaDeklaracija (idJedinstvenaCarinskaDeklaracija, datum, ukupnaTezina, cenaRobe, idPravnoLice, idPravnoLice, idCarina, idMedjunarodniTovarniList, idTipRobe);StavkaJedinstvenaCarinskaDeklaracija (idJedinstvenaCarinskaDeklaracija, rb, vrsta, osnovica, stopa)

22