POVRATAK

Metoda: dohvatiPrivitke

Opis funkcionalnosti https://spihr.sharepoint.com/:w:/r/_layouts/15/Doc.aspx?sourcedoc=%7B6C9A2212-C918-4728-9E19-BF61EEDDBA16%7D&file=Metoda%20dohvatiPrivitke.docx&action=default&mobileredirect=true&DefaultItemOpen=1

1. Kontrola prava pristupa

Za kontrolu prava korištenja metode u 098 se provjerava slijedeća operacija:

Aplikacija Broj operacije Kontrolirana metoda
099 WS099GPri dohvatiPrivitke

2. Opis rada metode

Metoda vrši dohvat privitaka uz pojedini dokument u LC SPI sustavu.

Koraci obrade:

1. Vrši se provjera aktivnosti vanjskog sustava u LC SPI tablici LCZAJ_VanjskiSustavi preko poslanog VsID.

2. Postoje dvije vrste dohvata privitaka ovisno o poslanim tagovima filtera dokumenti ili privitci

Poslan tag dokumenti tada se dohvaćaju i vraćaju privitci za poslane identifikatore dokumenata DokGUID.
Poslan tag privitci tada se dohvaćaju i vraćaju privitci za poslane identifikatore privitaka PrivitakGUID

Poslan tag dokumenti

3a. Prema elementu DokGUID se vrši provjera postojanja dokumenta u LC SPI bazi prema GUID identifikatoru dokumenta (DokGUID = Rowguid u tablicama).
Za DokVrsta = "UGO125" pretražuje se tablica LC127_Ugovori.
Za DokVrsta = "DOK223" pretražuje se tablica LC222_Dokumenti.
Za DokVrsta = "ERA156" pretražuje se tablica LC156_Eracuni.
Za DokVrsta = "INA192" pretražuje se tablica LC192_InterniNalozi.
Za DokVrsta = "SCD192" pretražuje se tablica LC192_UraPocetno i LC192_KnjizniZapisiPocetno.

Ukoliko dokument postoji tada se dohvaća se njegov ID i prelazi na slijedeći korak.
Ukoliko dokument ne postoji tada se za taj dokument niti ne vrši pretraga i vraćanje privitaka i prekida se daljnja obrada tog sloga.

4a. Vrši se dohvat identifikatora privitaka iz LC SPI veznoj tablici LCZAJ_VerzijeDatoteka pomoću dohvaćenog ID dokumenta iz koraka 3. odnosno ID-a datoteke dohvaćenog dokumenta.
Za DokVrsta = "UGO125" pretražuje se kolona LCZAJ_VerzijeDatoteka.LC125_DatotekeUgovoriID.
Za DokVrsta = "DOK223" pretražuje se kolona LCZAJ_VerzijeDatoteka.LC223_DatotekeDokumentiID.
Za DokVrsta = "ERA156" pretražuje se kolona LCZAJ_VerzijeDatoteka.LC156_ERacuniID.
Za DokVrsta = "INA192" pretražuje se kolona LCZAJ_VerzijeDatoteka.LC192_DatotekeInterniNaloziID .
Za DokVrsta = "SCD192" pretražuje se kolona:
Ako je URA tada LCZAJ_VerzijeDatoteka.LC192_UraPocetnoID
Ako je KNZ tada LCZAJ_VerzijeDatoteka.LC192_KnjizniZapisiPocetnoID.

Ukoliko jedan ili više privitaka ne postoji tada se za taj dokument ne vraća ništa u odgovoru metode i prekida se daljnja obrada tog sloga.
Ukoliko jedan ili više privitaka postoji tada se prelazi na slijedeći zajednički korak.

Poslan tag privitci - ignorira se poslani element DokVrsta

3b. Prema elementu PrivitakGUID se vrši provjera postojanja privitaka u LC SPI veznoj tablici LCZAJ_VerzijeDatoteka i tablici mapiranih privitaka LCZAJ_VerzijeDatotekaMapiranje

Ukoliko privitak postoji u tablici LCZAJ_VerzijeDatoteka tada se uzima originalni GUID privitka i prelazi na slijedeći korak.
Ukoliko privitak postoji u tablici LCZAJ_VerzijeDatotekaMapiranje tada se uzima mapirani GUID privitka iz LCZAJ_VerzijeDatotekaMapiranje.VerzijeDatotekaGUID i prelazi na slijedeći korak.
Ukoliko privitak ne postoji tada se za isti ne vraća ništa u odgovoru metode i prekida se daljnja obrada tog sloga.

4b. Vrši se dohvat GUID identifikatora dokumenta iz LC SPI veznoj tablici LCZAJ_VerzijeDatoteka preko dohvaćenog ID dokumenta odnosno ID-a datoteke dohvaćenog dokumenta.
Za DokVrsta = "UGO125" LC127_Ugovori.rowguid preko LCZAJ_VerzijeDatoteka.LC125_DatotekeUgovoriID.
Za DokVrsta = "DOK223" LC222_Dokumenti.RowGUID preko LCZAJ_VerzijeDatoteka.LC223_DatotekeDokumentiID.
Za DokVrsta = "ERA156" LC156_Eracuni.rowguid preko LCZAJ_VerzijeDatoteka.LC156_ERacuniID.
Za DokVrsta = "INA192" LC192_InterniNalozi.rowguid preko LCZAJ_VerzijeDatoteka.LC192_DatotekeInterniNaloziID .
Za DokVrsta = "SCD192" :
Ako je URA tada LC192_UraPocetno.rowguid preko LCZAJ_VerzijeDatoteka.LC192_UraPocetnoID
Ako je KNZ tada LC192_KnjizniZapisiPocetno.rowguid preko LCZAJ_VerzijeDatoteka.LC192_KnjizniZapisiPocetnoID.

5. Pomoću identifikatora privitka dohvaća se isti iz LC ARH tablice LCZaj_Datoteke

6. Za mapirane GUID-e privitaka u LCZAJ_VerzijeDatotekaMapiranje.VerzijeDatotekaGUID dovaća se originalni GUID iz tablice LCZAJ_VerzijeDatotekaMapiranje.DatotekaGUIDOriginalni radi punjenje u odgovor metode.

7. Vrši se punjenje odgovora metode prema specifikaciji.

3. Punjenje odgovora metode:

Opis Tip podatka Uvjet O
dohvatiPrivitkeResponse
VsIDVraća se poslani VsID u zahtjevustring(36)1..1
DokVrstaVraća se odgovarajuća DokVrsta prema dohvaćenom dokumentu
Enumeracija:
„UGO125“ – ugovori
„DOK223“ – dokument urudžbenog zapisnika
„ERA156“ – izlazni eRačun
„INA192“ – ulazni eRačun
„SCD192“ – salda konti dokument (ulazni račun ili knjižni zapis)
string(40)1..1
dokumenti0..1
dokument1..n
DokGUID Kada je DokVrsta
„UGO125" vraća se LC127_Ugovori.rowguid
„DOK223" vraća se LC222_Dokumenti.RowGUID
„ERA156" vraća se LC156_Eracuni.rowguid
„INA192" vraća se LC192_InterniNalozi.rowguid
„SCD192" vraća se LC192_UraPocetno.rowguid ili LC192_KnjizniZapisiPocetno.rowguid
string(36)1..1
privitci1..1
privitak1..n
PrivitakGUIDVraća se globalni jedinstveni identifikator privitka i to na slijedeći način:
Ako dohvaćeni GUID privitka postoji u LCZAJ_VerzijeDatotekaMapiranje.VerzijeDatotekaGUID tada se vraća LCZAJ_VerzijeDatotekaMapiranje.DatotekaGUIDOriginalni
Ako dohvaćeni GUID privitka ne postoji u LCZAJ_VerzijeDatotekaMapiranje.VerzijeDatotekaGUID tada se vraća taj GUID
string(36)1..1
PrivitakNazivLCARH.LCZaj_Datoteke.Ime
string(30)1..1
PrivitakMimeCodeLCARH.LCZaj_Datoteke.Tipstring(20)1..1
PrivitakSadrzajLCARH.LCZaj_Datoteke.DatotekaBase64Binary1..1
/privitak
/privitci
/dokument
/dokumenti
greska0..1
Greska1 – greškatinyint1..1
OpisGreskeOpis greške prilikom dohvata podatkastring(300)1..1
/greska
/dohvatiPrivitkeResponse

*