PoslovniProstorZahtjev - Malformed reference element.

Nov 10, 2012 at 3:26 PM
Edited Nov 10, 2012 at 4:00 PM

Pozdrav svima,

kod pokušaja slanja prostor.xml datoteke stalno dobivam gore navedenu grešku... Probao sam i copy-paste xml-a iz dokumentacije 1.1 sa stranica porezne uprave, promijenio oib u njihovom xml-u i pokušao poslati, no bezuspješno. Pokušao sam isto poslati i sa wrapperom za dos (sve radim u dosboxu), no isto bez uspjeha. Xml koji sam skinuo uz wrapper, začudo prolazi. Obzirom da ne vidim grešku niti u mom xml-u, da li je još netko naišao na ovaj problem?

 

Evo mog xml-a:

<tns:PoslovniProstorZahtjev xmlns:tns="http://www.apis-it.hr/fin/2012/types/f73">
<tns:Zaglavlje>
<tns:IdPoruke>ed609f33-b5dc-46fd-b190-d826c0623994</tns:IdPoruke>
<tns:DatumVrijeme>10.11.2012T16:04:20</tns:DatumVrijeme>
</tns:Zaglavlje>
<tns:PoslovniProstor>
<tns:Oib>12345678901</tns:Oib>
<tns:OznPoslProstora>Posl1</tns:OznPoslProstora>
<tns:AdresniPodatak>
<tns:Adresa>
<tns:Ulica>Ulica</tns:Ulica>
<tns:KucniBroj>15</tns:KucniBroj>
<tns:KucniBrojDodatak>B</tns:KucniBrojDodatak>
<tns:BrojPoste>10000</tns:BrojPoste>
<tns:Naselje>Zagreb</tns:Naselje>
<tns:Opcina>10000</tns:Opcina>
</tns:Adresa>
</tns:AdresniPodatak>
<tns:RadnoVrijeme>Pon - Pet : 12.00-19.00, Subota od 09.00-13.00</tns:RadnoVrijeme>
<tns:DatumPocetkaPrimjene>01.01.2013</tns:DatumPocetkaPrimjene>
<tns:SpecNamj>012345678901</tns:SpecNamj>
</tns:PoslovniProstor>
</tns:PoslovniProstorZahtjev>

Nov 10, 2012 at 4:31 PM

@Tsokol pogledaj razliku između ova dva reda, gornji je iz primjera za Wrapper a doljnji je tvoj .

 

<tns:PoslovniProstorZahtjev Id="signXmlId" xmlns:tns="http://www.apis-it.hr/fin/2012/types/f73">
<tns:PoslovniProstorZahtjev xmlns:tns="http://www.apis-it.hr/fin/2012/types/f73">

 

Pozdrav , Vlado.

Nov 10, 2012 at 4:44 PM

Ne mogu vjerovati da mi je to promaklo.. Hvala Vlado.

No sada imam drugi problem, kada to ispravim, na istom xml-u (sa drugim oibom) dobijem:

The remote server returned an error: (500) Internal server error....

Imaš ideju?

Nov 10, 2012 at 4:52 PM

Pardon, sve radi super.

Zaboravio sam isključiti node "Dodatak kućnom broju" - koji mi je bio prazan... I normalno da nije prošao prazan nod...

Još jednom hvala na oštrom oku!

Nov 10, 2012 at 4:57 PM

Meni tvoj primjer uredno prolazi, mora da si u njemu nešto naknadno mjenjao.

Do oib_a nije jer Wrapper uspoređuje oib iz datoteke i Certifikata.

Za početak u prvi red stavi :

<?xml version="1.0" encoding="utf-8"?>

Radi kompatibilnosti , mada vjerojatno neće rješiti problem, jer on je negdje među konkretnim dostavljenim podacima ili manjku istih.

Nov 10, 2012 at 4:58 PM

Sory , sad sam vidio da si rješio,problem, kad sam počeo pisati prošlu poruku , tvojeg rješenja još nije bilo.

Nov 10, 2012 at 5:23 PM

Vezano uz prijavu računa, budući da se to ne radi svaki dan, mislim da nema potrebe razvijati kod kroz svoju matičnu aplikaciju.

Po meni je najbolje pričekati kad Primjer Raverus.FiskalizacijaDEV.Sample za prijavu bude uslađen sa potrebama i iskoristiti ga kao prijavu.

Razmišljao sam da primjer forme za prijavu integriram u Wraper, ali moram vidjeti dali je pametno otežavati program koji se često poziva dodavanjem

još jedne forme, kad se to može rješiti kroz zaseban projekat.

Nov 10, 2012 at 6:09 PM

Slažem se sa tvojim razmišljanjem da možda nije najpametnije otežavati program koji se stalno poziva još i dodatnim formama. Ja bi prijavu ipak ostavio u matičnoj aplikaciji, iz više razloga:

1. u aplikaciji se lakše definiraju ekranske forme za unos podataka,

2. u tablicama aplikacije lakše je čuvati unešene podatke za potrebe kasnijeg ažuriranja,

3. najvažnije - Raverus.Fiskalizacija.exe bi trebao ostati što manji, da se što lakše pokreće iz drugih aplikacija i troši manje memorije za pokretanje... Pogotovo ako uzmemo u obzir da ga pokrećemo kod SVAKOG ispisa računa...

Mislim da je i ovaj posao koji je do sada odrađen odličan i sasvim dovoljan (naravno uvijek ima mjesta za poboljšanja), no ne bi trpao u "link" program i nešto što mislim da spada u aplikacijski dio...

btw, imao sam problema i sa pokretanjem sadašnjeg .exe programa, "Out of memory", što sam riješio (FoxPro Dos) sa

RUN cmd.exe /c program_koji_želim.bat

Nov 10, 2012 at 9:55 PM

Nisam našao podatke pa molim pomoć

Kada se šalje PoslovniProstorZahtijev?

Nov 10, 2012 at 10:24 PM
Edited Nov 10, 2012 at 10:26 PM

Dostavljanje podataka o poslovnim prostorima
Članak 19.
(1) Obveznik fiskalizacije iz članka 15. stavka 2. ovoga Zakona, dužan je Ministarstvu financija, Poreznoj upravi dostaviti podatke o svim poslovnim prostorima u kojima se obavlja djelatnost.
(2) Za potrebe provedbe postupka fiskalizacije izdavanja računa, podatak o poslovnim prostorima iz stavka 1. ovoga članka mora sadržavati ove podatke:
1. OIB,
2. oznaku poslovnog prostora,
3. adresu poslovnog prostora,
4. tip poslovnog prostora,
5. radno vrijeme i radne dane te
6. datum početka primjene važenja podataka koji se dostavljaju.


(5) Podatke iz stavka 2. ovoga članka, obveznik fiskalizacije dostavlja po pojedinom poslovnom prostoru. Podaci se potpisuju ispravnim digitalnim certifikatom te dostavljaju putem uspostavljene elektroničke veze s početkom obveze fiskalizacije, a prije početka dostave računa za promet u gotovini.

Nov 10, 2012 at 10:28 PM

Hvala Sokole :)

Coordinator
Nov 11, 2012 at 6:49 AM

FiskalizacijaDEV.Sample je, kako mu i ime kaže - primjer i ne bi ga trebalo koristiti u produkciji. .NET DLL, COM i EXE - da u produkciji, ali Sample - ne.

Naša je sugestija da se ovaj dio riješi kroz matičnu aplikaciju, da korisnik popuni podatke vi kreirate XML i zatim ga potpišete i pošaljete koristeći FiskalizacijaDEV.DLL (EXE, COM). Još jedan argument da se to napravi u matičnoj aplikaciji je taj da je ipak potrebna neka minimalna kontrola oko svega, na primjer, kada ste poslali inicijalni zahtjev, kako je on izgledao, kada ste slali naknadne zahtjeve jer je, npr., došlo do promjene radnog vremena i sl. Znači - spremajte to sve u bazu koju koristite unutar vaše matične aplikacije.

Coordinator
Nov 11, 2012 at 6:57 AM
vvrbane wrote:

@Tsokol pogledaj razliku između ova dva reda, gornji je iz primjera za Wrapper a doljnji je tvoj .

 

<tns:PoslovniProstorZahtjev Id="signXmlId" xmlns:tns="http://www.apis-it.hr/fin/2012/types/f73">
<tns:PoslovniProstorZahtjev xmlns:tns="http://www.apis-it.hr/fin/2012/types/f73">

 

Pozdrav , Vlado.

Samo da još, kada je već prilika, kratko komentiramo i Id="signXmlId", s obzirom da ponekad dolazi do zabune. Naime, Porezna je u Tehničkoj specifikaciji propisala da se ne potpisuje cijeli XML dokument, što je svakako dobra praksa i što je uobičajena stvar. Dakle, potpisuje se samo određeni dio poruke, ostatak (npr. SOAP envelope) nije potpisan.

E, sad, kako bi rutina za potpisivanje znala što (koji dio XML poruke) treba potpisati, nekako je toj rutini to potrebno "reći". Za to se koristi spomenuti Id="...". Mi smo odlučili napraviti hard-code i reći da se onaj element koji ima Id "signXmlId" digitalno potpisuje. Odlučili smo se za ovaj pristup jer bi inače naziv elementa (Id) trebalo dostavljati kao parametar, što bi, smatramo, samo otežalo situaciju a, vrlo vjerojatno, ne bi riješilo problem sa činjenicom da ljudi koji nisu upoznati sa potpisivanjem XML poruka svejedno ne bi ignorirali taj isti Id.

Nov 25, 2012 at 6:50 PM

Nikako da nađem XML specifikaciju za upis OIBa proizvođača softa, i ostalog vezanog uz to, pri slanju poslovnog prostora:

Nov 25, 2012 at 9:22 PM
Edited Nov 25, 2012 at 9:22 PM

vvrbane,

 

<tns:SpecNamj>08765432498</tns:SpecNamj>

http://www.porezna-uprava.hr/fiskalizacija/dokumenti/Fiskalizacija%20-%20Tehnicka%20specifikacija%20za%20korisnike_v1.1.pdf

stranica 20/52, detalji u http://www.porezna-uprava.hr/fiskalizacija/dokumenti/Fiskalizacija-WSDL_v1.1.2.zip

Nov 25, 2012 at 9:24 PM

Hvala sokole, pronašao sam.