4D Wand IMC - Internet/Mobile Connector •Datum kreiranja: 06.05.2011. •Datum zadnje izmjene: 19.08.2024 - Dodano poglavlje "Popunjavanje tablice [Grupas]" Općenito o 4D Wand IMC - Web aplikacija 4D Wand IMC je razvijen kao vlastito rješenje za korisnike 4D Wand-a koji žele nad 4D Wandom imati web shop. Modul 4D Wand IMC je neophodan i obvezan kao temelj izrade web shop-a i ako to rade druge programerske tvrtke. Za potrebe 4D Wand IMC-a razvili smo određene mehanizme razmjene podataka. Naše rješenje je univerzalno i nije predviđeno za posebno krojenje od korisnika do korisnika (zato i je financijski povoljno). Nekim našim korisnicima isto neće biti dovoljno. Iz tog razloga smo odlučili naše metode razmjene podataka nadograditi i u smjeru da se iste koriste i za druga web rješenja. Time je svima olakšana izrada web shopa, a korisnik je siguran da će se sve odrađivati u 4D Wandu na odgovarajući način (tu svakako treba uzeti u obzir da podaci trebaju biti obrađeni po Zakonu). Redovito održavamo mehanizme razmjene, a ako nam netko javi da mu treba nešto dodatno i procijenimo da je isto mudro tj. vrijedno da bude sadržano u razmjeni, rado ćemo traženo dodati u mehanizme samog 4D Wand IMC-a, te revidirati upute. Nad 4D Wand-om ne postoje web servisi (API-i), podaci se šalju i primaju isključivo iz 4D Wand-a. Mogućnosti korištenja 4D Wand IMC-a 4D Wand šalje na Internet SQL skriptu kojom puni MS SQL bazu. Nad kreiranim tablicama u MS SQL-u moguće su tri opcije: 1.Koristiti našu web aplikaciju i dizajn 2.Promijeniti dizajn nad našim web shopom 3.Kreirati vlastiti web shop VAŽNA NAPOMENA: 4D Wand je jedini izvor istine! Podaci koje smije popunjavati treća strana su jedino podaci u tablicama [Narudbas] i [Kosaras]. Svi ostali podaci se dobivaju jedino i isključivo iz 4D Wand-a. Preduvjeti Web server IIS koji se izvršava na Microsoft .NET platformi na Windows OS. Na web serveru mora biti instaliran ASP.NET 4.0 i MVC 3.0 (www.asp.net) i imati mogućnost pristupa MS SQL Server 2012 ili novije verzije. Nakon toga potrebno je: •Kreirati praznu bazu (npr. WandIMC, ime je proizvoljno) u SQL-u •Kreirati korisnika koji ima sva prava nad tom bazom (ime i šifra proizvoljni) •Kreirati e-mail account (npr. katalog@4d.hr, narudzba@4d.hr) s kojeg će se slati e-mail narudžbe •Otvoriti site kao poddomenu (npr: katalog.4d.hr, katalog.domena.hr, nazivtvrtke.domena.hr i sl.). Naravno, aplikaciju je moguće instalirati i na domenu. •Iz 4D Wanda pozvati „Slanje 4D Wand IMC-a na web server“. Napomena: Internet aplikacija se NE smije nalaziti u poddirektorijima domene/poddomene, već u glavnom direktoriju na koji "gleda" domena/poddomena. Ako korisniku web aplikaciju radi treća strana, nužno je što detaljnije pročitati Upute za korisnika, Ažuriranje kataloga, Popunjavanje tablica Narudzbas i Kosaras, Potvrda učitavanja narudžbe u 4D Wand. Setiranje •Sve slike idu u folder: /content/slike. •Korisnik svoju ikonicu stavlja kao: /favicon.ico •Na web lokaciji iz roota treba otvoriti folder wand i u njega kopirati cshtml i js datoteke iz instalacije. •[Za sve verzije prije 18.08.31.1] - U datoteci wand.korisnik.js nalazi se funkcija koja kreira tabelu s detaljima artikla. Web.config Ako koristite 4D Wand i 4D Wand IMC od verzije 17.10.19.1, sljedeća setiranja (osim "SessionState" i "JsonDeserializer") se podešavaju u modulu Internet unutar 4D Wand-a. •WandCatalogEntites je naziv konekcije na SQL bazu. Ovisno o postavkama web servera potrebno je isti ispravno posetirati, jer je moguće je da su potrebne i neke druge postavke u web.config koji se koristi za 4D Wand IMC (npr <trust level="Full" />, i sl.). •Na Connection string obavezno dodati “MultipleActiveResultSets=true“ •WebID dodjeljuje 4D i isti će Vam biti poslan prilikom kupnje/instalacije •WandSifra služi 4D Wandu za pristup funkcijama i treba biti upisano i u parametre IMC - Internet/Mobile Connector modula u polje „4D Wand IMC šifra“. upišite šifru (password) po želji. •Podaci za e-mail su jasni sami po sebi. •U polje naslov upišite tekst koji će se naći u naslovu preglednika web stranica, a time i u bookmarcima kod vaših korisnika. •Polje VP određuje da li se na web komponenti 4D Wand IMC-a prikazuju VP ili MP cijene. upišite 0 za MP cijene, 1 za VP cijene. •Polje Sort (SortHomePage) može biti bilo koje polje iz tablice Robas. Default je Roba.Naziv. Ako se želi opadajući sort potrebno je dodati " DESC" (paziti na razmak prije DESC) nakon naziva polja. Npr: <add key="Sort" value="Roba.Sifra DESC"> •ForceLogin - parametar se pali ako se želi onemogućiti da se može odraditi narudžba unutar kataloga bez prijave korisnika. •ItemsPerPage - u parametar se upisuje koliko će se artikala prikazivati po pojedinoj stranici. •CodePage - Encoding na web komponenti 4D Wand IMC-a. •Zaliha - Da li se na web komponenti 4D Wand IMC-a prikazuje zaliha artikla. •Oznaka zalihe - Da li se prikazuje oznaka da je artikl raspoloživ ili ga je potrebno naručiti •Rezervacija - Parametar se uključuje ako se želi da dokument ponude ili pretponude rezervira količinu po stavkama. •IzgledTabeleArtikala - 0 je tabelarni prikaz, 1 je prikaz u tile-ovima •Ako se želi postaviti duži timout sesije može se isti dodati u system.web sekciju (vidi niže). |
|
<connectionStrings>
...
(Primjer 1)
<add name="WandCatalogEntities"
connectionString="data source=.\MSSQLSERVER2012;Database=WandWeb_Katalog;User ID=wandweb_katalog;Password=xxxxxxxxx;MultipleActiveResultSets=true" />
providerName="System.Data.SqlClient"
(Primjer 2)
<add name="WandCatalogEntities"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;Database=WandWeb;MultipleActiveResultSets=true"
providerName="System.Data.SqlClient" />
...
</connectionStrings>
<appSettings>
...
<!-- 4D Wand IMC Settings-->
<add key="WebID" value="XX"/>
<add key="WandSifra" value="XXXXX"/>
<add key="VP" value="0|1"/>
<add key="Naslov" value="4D Wand Web Katalog"/>
<add key="ItemsPerPage" value="30"/>
<add key="CodePage" value="0|1250"/>
<add key="ForceLogin" value="false|true"/>
<add key="Zaliha" value="false|true"/>
<add key="OznakaZalihe" value="false|true" />
<add key="SortHomePage" value="Roba.Naziv"/>
<add key="Sort" value="Roba.Naziv"/>
<add key="SortKlasifikacije" value="Naziv" />
<add key="Rezervacija" value="0|1"/>
<add key="Placanje" value="false|true"/>
<add key="Narucivanje" value="false|true"/>
<add key="IzgledTabeleArtikala" value="0|1"/>
<!-- 4D Wand IMC E-mail settings -->
<add key="WandEmail_SMTP" value="mail.smtp.hr"/>
<add key="WandEmail_SmtpPort" value=""/>
<add key="WandEmail_EnableSsl" value=""/>
<add key="WandEmail_UserName" value="username "/>
<add key="WandEmail_Password" value="password"/>
<add key="WandEmail_To" value="korisnik@firma.hr"/>
<add key="WandEmail_Subject" value="4D Wand Web narudžba"/>
<add key="WandEmail_From" value="katalog@4d.hr"/>
...
(Ako se slike šalju na web ili se koristi mobilna aplikacija)
<add key="aspnet:MaxJsonDeserializerMembers" value="1500000" />
...
</appSettings>
(Postavljanje dužeg session timeouta [u minutama])
<system.web>
<sessionState mode="InProc" timeout="600"/>
</system.web>
Na strani 4D Wanda potrebno je unutar foldera firme za koju se setira 4D Wand IMC, kreirati folder gdje će se snimati export podataka i *.cshtml datoteke (npr. „web“ unutar firme). Taj path treba u modulu IMC - Internet/Mobile Connector u parametrima programa upisati u „Direktorij u kome se kreiraju datoteke:“. U njega treba kopirati „default“ datoteke koje se mogu snimiti s https://www.4d.hr/rest/4DWandKatalogDefaults.zip . Ako se web nalazi lokalno kod korisnika ovdje se može upisati path do web stranica (npr: \\Internet\WandCatalog\wand\). Podatak Web ID dodjeljuje 4D. Funkcije za komunikaciju Funkcije se mogu staviti u scheduler. Predlažemo da se Export, slanje i import 4D Wand IMC rade po potrebi (jednom dnevno), a Ažuriranje zaliha na 4D Wand IMC novih narudžbi da se poziva u nekim intervalima. Export, slanje i import 4D Wand IMC-a: C:\4D\Wand\Sys\W_exe.exe WEB=1;7 moguć je pojedinačni poziv procedura: Napomena: Ako je upogonjen 4D Komunikator, moguće je koristiti i ugraditi funkcije na web stranicu. Za pregled dostupnih API-ja pogledajte ovdje. Završetak setiranja Da bi site proradio, potrebno je iz 4D Wanda -> IMC - Internet/Mobile Connector pokrenuti opciju „Učitaj 4D Wand IMC“ i nakon toga bi se na stranicama trebali pojaviti demo artikli. Ako su se demo artikli uspješno učitali i pojavili na Internetu, tada je moguće artikle označene u kolonama cjenika za web shop, poslati na Internet pozivom opcije „Kreiraj i pošalji 4D Wand IMC“. Dodatna pojašnjenja Slike artikala je moguće slati pomoću opcije "Slanje datoteka artikala na 4D Wand IMC". Ova opcija, korištenjem https POST metode, šalje slike (ili datoteke vezane na artikle) na web komponentu 4D Wand IMC-a u folder Content/Slike (ili folder definiran u Vrstama dokumenata vezani s diska). Proces slanja slika provjerava slike povezane na Artiklima (datoteke povezane na artikle,a koje su označene da se upload-aju na 4D Wand IMC) sa slikama (datotekama) koje se nalaze na web komponenti 4D Wand IMC-a i šalje slike (datoteke) koje nedostaju ili su se promijenile naspram web komponente 4D Wand IMC-a. Da bi https POST metoda mogla ispravno raditi potrebno je aplikaciji dodjeliti prava pisanja nad direktorijem /content, u suprotnom se može dogoditi greška 403 prilikom slanja slika prema 4D Wand IMC-u. Parametri programa Ako se želi omogućiti prijavu kupaca u web aplikaciju, nakon uključivanja parametra programa "Eksport osoba i rabatne politike", potrebno je u adresaru na osobama kojima se želi omogućiti pristup katalogu, uključiti opciju "Web kupac" i upisati pristupnu šifru za web. Istu je naravno potrebno javiti kupcu. Za eksport posebno definiranih cijena u Planskoj kalkulaciji (WEB VPC i WEB MPC) za 4D Wand IMC, potrebno je u modulu IMC-Internet/Mobile Connector odabrati Setiranje parametara, zatim na kartici Osnovne postavke u polje Web skladište na kojem se upisuju cijene upisati šifru skladišta na kojem se navedene cijene definiraju. U tom slučaju će se u poljima VPCijena i MPCijena tablice Robas nalaziti novodefinirane cijene u planskoj kalkulaciji, dok će se u poljima OriginalnaVPCijena i OriginalnaMPCijena nalaziti VPC-PDV, odnosno MPC+PDV iz planske kalkulacije artikala 4D Wanda. Da bi se omogućilo slanje Načina plaćanja prema 4D Wand IMC-u potrebno je u 4D Wand-u -> Maloprodaja -> Registri -> Načini plaćanja po dokumentima odabrati način plaćanja i uključiti opciju Sredstvo plaćanja za web dućan. Kreiranje poddomene na IIS Kreirati novi site (npr. Wand IMC). Dati mu neki port (81, 82,... i sl). Rad s 4D Wand IMC-om 4D Wand IMC API pristupna šifra Napomena: Navedene promjene vrijede od verzije objavljene 17.12.2019. Za sve verzije prije navedenog datuma, u https zahtjevima kao parametar "s=" koristi se šifra iz web.config-a •Šifra definirana u web.config-u (polje 4D Wand IMC šifra u parametrima programa) se encode-a sa SHA-256 hash algoritmom, zajedno s proizvoljnim salt-om •SHA-256("sifraIzWebConfiga" + "salt") •Generira se JSON sa sljedećom strukturom { •JSON se encode-a u Base64 •Base64 se encode-a pomoću UrlEncode-a •Rezultat UrlEncode-a se smatra <4D Wand IMC šifra> i koristi se za popunjavanje parametara "s", npr. /Update/UpdateKatalog?s=<4D Wand IMC šifra> •4D Wand IMC kod svakog zahtjeva generira hash pomoću šifre upisane u web.config-u i proizvoljnog salt-a definiranog u JSON-u, te ga uspoređuje s poslanim hash-om iz JSON-a Ažuriranje podataka 4D Wand IMC-a Kreiraj 4D Wand IMC Pošalji 4D Wand IMC na Internet •WandKatalog.txt •HomePage.cshtml •Kontakt.cshtml •Logo.cshtml •NarudzbaForma.cshtml •NarudzbaPoslana.cshtml •NarudzbaPrazna.cshtml •wand.korisnik.js •email.txt •DetaljArtikla.cshtml •TabelaNaslovArtikla.cshtml •LoginGornjiTekst.cshtml •LoginDonjiTekst.cshtml •NapomenaDostave.txt •OpciUvjeti.pdf •ReklamacijskiZapisnik.pdf •UvjetiPlacanja.pdf •RaskidUgovora.pdf •PravilaPrivatnosti.pdf •NapomenaNaruci.cshtml •NapomenaPlati.cshtml •NajnizaCijena.cshtml •HeadGoogleAnalytics.cshtml •BodyGoogleAnalytics.cshtml •logo.png Sve datoteke, osim WandKatalog.txt, se mogu uređivati u 4D Wandu u parametrima IMC-a. Sve datoteke se šalju POST metodom u Wand poddirektorij web servera. Nakon ovog koraka provjerite da li se datoteke nalaze na web serveru. Slanje datoteka se vrši POST metodom u MIME multipart/form-data formatu pozivom na API /Update/UploadDatoteke?s=<4D Wand IMC šifra>&folder=Wand. Učitaj 4D Wand IMC Kreiraj i pošalji dokumente na 4D Wand IMC •Polje DokumentRoditeljID će biti popunjeno s ID-em prethodnog dokumenta, ako postoji prethodni/roditeljski dokument. Ako ne postoji roditeljski dokument, tada će polje biti popunjeno s nulom (0).
•Polje DokumentDijeteID će biti popunjeno ako je od više dokumenata kreiran jedan dokument. Ako se šalju klase dokumenata RAD, RNL ili RNU i dokument je nastao kopiranjem iz prethodnih godina, u tablici Dokuments se popunjavaju sljedeća polja: •Polje OriginalniDokId će biti popunjeno s ID-em originalnog dokumenta iz kojeg je dokument nastao.
•Polje OriginalniBrojId će biti popunjeno s brojem originalnog dokumenta iz kojeg je dokument nastao. Popunjavanje tablica Narudzbas i Kosaras Upozorenje: Ako za maloprodaju na Internetu koristite web shop koji vam je isporučila treća strana, besplatni maloprodajni web shop se više neće moći koristiti zbog zakonskih obaveza. Naravno, sve funkcije u 4D Wandu, za maloprodajni web treće strane, će i dalje biti dostupne. Također, veleprodajni web shop će i dalje uredno raditi. Oprez: Prilikom upisa u tablice, niti jedno numeričko polje (integer, decimal...) u tablicama [Narudbas] i [Kosaras] NE smiju imati vrijednost NULL (prazno). Ako ne želite poslati vrijednost upišite nulu (0). •U polju BrojNarudzbe može se upisati ID narudžbe. Program po polju BrojNarudzbe provjerava da li je ista već importirana u 4D Wand. Posebno napominjemo da polje BrojNarudzbe MORA biti u rastućem redoslijedu.
•Polje "Poslano" treba biti popunjeno s "1" jer označava da je poslana obavijest kupcu i korisniku o novoj narudžbi s web-a, inače "0".
•Polje "Rezervacija" treba biti popunjeno s "1" ako dokument ponude ili pretponude automatski rezervira količine odobravanjem, inače "0".
•Polje "OIB" treba biti popunjeno s OIB-om tvrtke koja je odradila narudžbu. Ako se radi o maloprodajnom kupcu, polje treba ostaviti prazno.
•Polje "DateCreated" u tablici Narudbas se MORA popuniti u formatu [yyyy-MM-dd hh:mm:ss.ms] i obavezno popuniti u trenutku kreiranja zapisa narudžbe.
•U stavke košare ne trebaju se upisivati nikakvi iznosi, osim ako se koristi program vjernosti ili izračun Internet popusta. U tom slučaju potrebno je ispravno popuniti sva polja. oAko se radi o veleprodaji potrebno je upisati VP i Bruto iznos, dok će se ostali iznosi (MP, porez...) izračunati u 4D Wandu. oAko se radi o maloprodaji potrebno je upisati barem MP iznos. oAko se šalje narudžba u devizi potrebno je popuniti polje Valuta (međunarodna numerička oznaka valute 978, 840, 191,...) ili Oznaka valute (međunarodna troslovna oznaka valute EUR, USD, HRK,...). Preko kojih će se prepoznati Valuta u 4D Wand-u (u registru Valuta je potrebno imati ispravno definirane oznake ili šifre Valuta).- Da bi se iznosi ispravno importirali potrebno je u tablici [Kosaras] upisati iznose stavke u devizama u polja bruto iznos (VP iznos prije rabata), VP Iznos (VP iznos nakon rabata) i MP Iznos (MP iznos nakon rabata).- Ako se popuni polje Tečaj tada će se taj iznos koristiti za preračun prilikom importa, a ako se ostavi prazno tada će se za preračun prilikom imorta učitati iz tečajne liste upisane u 4D Wand-u. Bitne napomene kod (ne)popunjavanja iznosa u bazama: oDa bi se izbjegle ili smanjile greške u zaokruživanju, potrebno je znati kako se vrši obračun PDV-a nad dokumentima u 4D Wandu. Prilikom razvoja/testiranja najbolje je ručno napraviti u 4D Wandu dokument koji se želi poslati s 4D Wand IMC-a i uporediti/analizirati. oAko se upiše samo količina, obaveza je korisnika da cijene budu identične i u 4D Wandu i na 4D Wand IMC-u. oU web komponenti 4D Wand IMC-a se rabati izračunavaju na ukupni iznos: kolicina * cijena * (1 - rabat/100). oPolje Narudzba->MPIznos je ukupni iznos narudžbe s porezom i može biti izmijenjen nakon obrade u 4D Wandu radi zaokruživanja ili načina obračuna poreza. oPorezna tarifa na artiklu u 4D Wandu MORA odgovarati upisanoj tarifi u tablicu Kosaras. Upozorenje: Cijene koje se upisuju na stavku moraju biti pozitivne, da bi se stavka ispravno učitala u 4D Wand.
•Polje narudzbe "Skladiste" određuje na koje skladište se treba importirati narudžba. Ako se ne upiše, učitat će se skladište iz parametara programa ovisno o tipu (veleprodaja ili maloprodaja).
•Polje narudžbe "KlasaDokumenta" određuje u koju klasu dokumenta će se importirati narudžba. Ako se ne upiše klasa dokumenta, učitat će se klasa iz parametara programa. oULN (za ulazne narudžbe) oPON (za pretponude) oIZP (za ponude) oOTP (za otpremnice)
•Ako na Internet katalogu kojeg razvija treća strana postoji mogućnost registracije, potrebno je uvijek u tablici [Narudzbas] popunjavati polje OsobaPassword, kako bi se podatak mogao importirati u 4D Wand, a kasnije vratiti u tablici Osobas. U 4D Wand se uvijek importira sadržaj polja OsobaPassword iz tablice Narudzbas pa i u slučaju da je sadržaj polja prazan. Naglašavamo da se polje mora uvijek popunjavati važećim passwordom, a kada se on promjeni, potrebno je polje popunjavati novim passwordom.
•Ako na Internet katalogu, kojeg razvija treća strana, postoji mogućnost odabira načina plaćanja, potrebno je koristiti načine plaćanja koji su poslani iz 4D Wand-a u, tablici [NaciniPlacanjas].
•Ako na Internet katalogu, kojeg razvija treća strana, postoji mogućnost odabira načina otpreme, moguće je koristiti isključivo one načine otpreme koji su poslani iz 4D Wand-a, tablica [NaciniOtpremas].
•Ako drugi web programeri nad 4D Wand IMC-om rade svoj Internet dućan, a žele koristiti uslugu dostave kao stavka košare, potrebno je definirati uslugu u 4D Wand-u s pripadajućim cijenama. Kada je odgovarajuća usluga definirana, pozovite formu izmjene takve usluge gdje u naslovu prozora u zagradi možete pročitati ID usluge. Pročitani ID usluge treba dati web programerima. Kada web programeri imaju navedenu informaciju, moraju u stavku košare popuniti barem sljedeće podatke: SifraKosare (poveznica stavke košare s narudžbom po polju BrojNarudzbe tablice Narudbas i u ovom polju mora biti upisana vrijednost polja BrojNarudzbe iz tablice Narudzbas), NarudzbaID (ID narudžbe), RobaID (ID ranije spomenute usluge dostave) i Kolicina (količinu treba popuniti vrijednošću 1) kako bi se importom narudžbe u 4D Wand ispravno učitala stavka prethodno definirane usluge.
•Ako web komponenta 4D Wand IMC-a radi s uključenijm Programom vjernosti, potrebno je u skladu s mehanizmom kojeg korisnik koristi, popunjavati polja (uz pomoć metoda iz WandKatalog.dll): oBrojOstvarenihBodovaProgramaVjernosti (u polje se upisuju bodovi koje je Osoba ostvarila kupovinom na Internet katalogu kojeg razvija treća strana, a popunjava se pomoću metode ObracunajBodoveProgramaVjernosti) oBrojPotrosenihBodovaProgramaVjernosti (ako je potrebno polje se popunjava s vrijednosti potrošenih bodova u ovisnosti o mehanizmu) oPostotakPopustaProgramaVjernosti (polje se koristi kada se ostvaruje popust na narudžbi Internet kataloga kojeg radi treća strana, a sadržaj polja se dobiva pomoću metode OsnovniPopustProgramaVjernost
oKolicina – Odabrana kolicina oBrutoIznos – VP iznos prije rabata (prije dodjeljenog popusta programa vjernosti) oVPIznos – VP iznos nakon rabata (nakon dodjeljenog popusta programa vjernosti) oMPIznos – MP iznos nakon rabata (nakon dodjeljenog popusta programa vjernosti)
oBrojOstvarenihBodovaProgramaVjernosti oBrojPotrosenihBodovaProgramaVjernosti oPostotakPopustaProgramaVjernosti
•Polje [Drzava] u tablici [Narudzbas] obavezno treba puniti. Puni se dvoslovnom oznakom države iz polja [MedunarodnaOznaka] koje se nalazi u tablici [Drzavas]. To znači da korisnik 4D Wanda, prethodno MORA pravilno u registrima 4D Wanda svakoj državi iz koje prima web narudžbe, upisati ispravnu međunarodnu dvoslovnu oznaku. Tek u tom slučaju će se ispravno popuniti tablica [Drzavas] iz koje se zatim uzima potrebno polje [MedunarodnaOznaka]. Sve prethodno navedeno je potrebno da bi se osoba i komitent na narudžbi pravilno importirali u 4D Wand. Npr. ako se u [PostBroj] upiše 21000, a kupac je iz Srbije, u polju [Drzava] u tablici [Narudzbas] mora pisati RS.
U parametrima programa na kartici "Dodatne postavke IMC-a" obavezno je posetirati naziv metode za učitavanje sljedeće narudžbe. https://katalog.4d.hr/Narudzba/SlijedecaNarudzbaJson?s=<4D Wand IMC šifra>šifra&z=130707-123433-5000 Također, moguće je uključiti i koristiti učitavanje web narudžbi po ID-u "/Narudzba/SlijedecaNarudzbaID", ako se želi omogućiti sukcesivno učitavanje narudžbi po ID-u. https://katalog.4d.hr/Narudzba/SlijedecaNarudzbaID?s=<4D Wand IMC šifra>šifra&z=167 Sukcesivnim pozivom metode učitavaju se jedna po jedna narudžba, ovisno o broju narudžbe ili ID-u, sve dok web aplikacija ne vrati prazan objekt. Važno: Tablice [Narudbas] i [Kosaras] su relacijski povezane poljima BrojNarudzbe/SifraKosare i NarudzbaID/NarudzbaID. Spomenutih polja definiraju vezu narudžbe i njenih stavki, neovisno o načinu učitavanja narudžbi u 4D Wand-u. Relacijska polja su: NarudzbaID - u tablici Narudbas primarni ključ, dok je u [Kosaras] strani ključ U parametrima programa na kartici "Dodatne postavke IMC-a" može se omogućiti dodavanje novog komitenta prilikom importa. Ako program ne pronađe komitenta po OIB-u dodaje se novi komitent (moguće greške su radi dupliranja polja naziv+adresa, na što treba paziti).
|
Izmjenama Zakona o PDV-u od 01.07.2021. uvode se promjene u oporezivanju prilikom isporuka usluga i dobara na daljinu osobama koje nisu porezni obveznici unutar EU (fizičke osobe i pravne osobe koje nisu u sustavu PDV-a). U 4D Wand IMC smo dodali nove sadržaje u razmjeni podataka za treće strane koje korisnicima implementiraju web dućane s mogućnošću prodaje roba i usluga u inozemstvu. Svi podaci se i dalje pripremaju u 4D Wand-u i tako pripremljeni šalju prema 4D Wand IMC u standardnoj razmjeni podataka. Novi podaci se nalaze u slijedećim tablicama: •tablica Drzavas registar država s dvoslovnim međunarodnim oznakama (Standard: ISO 3166 - Alpha-2 code) i troznamenkastim šiframa državama (Standard: ISO 3166 - Numeric code) •tablica RobaDrzavaTarifas - veze između roba, država i odgovarajućih poreznih stopa Primjenjujući podatke koje je korisnik poslao iz 4D Wand-a, na web stranici je nužno postaviti upit za državu isporuke i izračunavajući porez sukladno učitanim podacima i državi u koju se radi isporuka dobara ili usluga. •[OznakaDrzavePoreza] - u [Narudzbas] dvoslovna međunarodna oznaka države (Standard: ISO 3166 - Alpha-2 code) •[StopaPDV] - u [Kosaras] vrijednost stope po kojoj je obračunat PDV Jedino na ovaj način se naružba može ispravno importirati, obraditi, odobriti i knjižiti sukladno važećim propisima. Napomena: Podatke [OznakaDrzavePoreza] i [StopaPDV] je NUŽNO dodati u slučaju kada se radi o prodaji na daljinu osobama iz zemalja Europske unije koje nisu porezni obveznici, inače ih se ne smije popunjavati.
|
Popunjavanje tablice AdreseDostaves Prilikom kreiranja narudžbi moguće je uz svaku narudžbu definirati adresu dostave. Navedeno se može odraditi dadavanjem zapisa u tablicu AdreseDostaves. Obavezna polja: •AdresaID - primarni ključ auto-increment •NarudzbaID - Upisati ID narudžbe uz koju je vezana adresa dostave •GUID - Upisati BROJ narudžbe uz koju je vezana adresa dostave •NazivPrimatelja1 - Upisati naziv primatelja (Ime i Prezime, Naziv firme...) •AdresaPrimatelja1 - Upisati adresu dostave •Grad - Upisati grad adrese dostave •PostanskiBroj - Upisati poštanski broj grada dostave Opcionalna polja: •NazivPrimatelja2 - Dodatno polje za naziv primatelja •AdresaPrimatelja2 - Dodatno polje za adresu primatelja •Drzava - Polje za unos naziva države adrese dostave •KontaktTelefon - Ako postoji kontakt telefon vezan uz adresu dostave •KontaktEmail - Ako postoji kontakt e-mail vezan uz adresu dostave Ako su ispravno popunjeni podaci za adresu dostave, prilikom učitavanja narudžbe vezat će se objekt adrese dostave uz pripadajuću narudžbu te učitati u 4D Wand. |
U tablici [Grupas] izmijenjeno polje Šifra, sad polje prikazuje sort order definiran u 4D Wandu pojedine web klasifikacije (po 2 znaka), npr 010101 znači da je to treća razina klasifikacije te da je prva po poretku u prikazu. Stablo web klasifikacije je potrebno puniti kao i do sada, u tablici [Robas], unutar polja GrupaID šalje se ID web klasifikacije. U tablici [Grupas] je na tom slogu, u polju [Roditelj] upisan ID roditelja i tako do početka stabla. |
Zbog potrebe za dodatnim napomenama na artiklima koji se šalju na web (npr. zbog više jezika), u 4D Wandu je moguće upisivati dodatne napomene i slati ih na 4D Wand IMC. Više o definiranju samih dodatnih napomena u 4D Wandu je dostupno na sljedećoj poveznici. @foreach (string napomena in Page.RobaViewModel.DodatneNapomene) Što se tiče trećih strana, oni mogu dohvatiti podatke iz tablice DodatnaNapomenas te ih vizualizirati na proizvoljan način. |
Metode dostupne kroz WandKatalog DLL Metode pomoću kojih se može doći do pojedinih informacije, a moguće ih je pozvati iz WandKatalog.dll. Metode se nalaze u WandCatalog.Models.API namespace-u, a sama pojašnjenja istih se nalaze ispod (primjeri u MS Visual Basicu). Napomena: Tablica Parameters dodana je za potrebe metoda ObracunajBodoveProgramaVjernosti i OsnovniPopustProgramaVjernosti kaklo bi iste na temelju parametara "ProgramVjernostiMehanizam", "ProgramVjernostiSakupljanjeFaktor" i "ProgramVjernostiOsnovniRabat" mogle raditi. Potvrda učitavanja narudžbe u 4D Wand Nakon učitavanja svake pojedinačne narudžbe program poziva metodu /Narudzba/NarudzbaUcitana. Metodi se šalju šifra (s - polje <4D Wand IMC šifra>) i broj narudžbe koja je učitana (z): https://katalog.4d.hr/Narudzba/NarudzbaUcitana?s=<4D Wand IMC šifra>&z=110513-120317-6514 koja upisuje status [Ucitana] u tablicu narudžbi. Metoda nije obavezna. Napomena: Ako je upogonjen 4D Komunikator, moguće je koristiti API za dohvat željenih artikla direktno iz 4D Wand-a. Postoje dvije metode pomoću kojih 4D Wand može Ažurirati zalihe u web aplikaciji: VAŽNO: 4D Wand prepoznaje POST metodu ako naziv metode sadrži tekst "JSON" inače se šalje kao GET metoda. •GET (/Update/UpdateZaliha) Za sve artikle kojima se promijenila količina program može pozvati GET metodu /Update/UpdateZaliha. Metoda će ažurirati stanje zaliha po artiklima. https://katalog.4d.hr/Update/UpdateZaliha?s=<4D Wand IMC šifra>&id=2016&ras=23.00&rez=2.00 Metoda upisuje količinu Zaliha u polje [Zaliha] koju izračunava iz sume količina Rezervirano i Raspoloživo, količinu Rezervirano u polje [Rezervirano] i količinu Raspoloživo u polje [Raspolozivo] u bazi Robas. •POST (/Update/UpdateZalihaJSON) Za sve artikle kojima se promijenila količina program može pozvati POST metodu /Update/UpdateZalihaJSON. Metoda će ažurirati stanje zaliha po artiklima i stanja po pojedinim skladištima. https://katalog.4d.hr/Update/UpdateZalihaJSON?s=<4D Wand IMC šifra> U sadržaj (eng. Body) zahtjeva se šalje Json objekt s podacima o stanjima zaliha artikala. Primjer Json objekta: [ Struktura tablica Tablice koje kreira 4D Wand Internet katalog. CREATE TABLE [dbo].[Robas]( CREATE TABLE [dbo].[AdreseDostaves] CREATE TABLE [dbo].[Partners] CREATE TABLE [dbo].[Drzavas]( CREATE TABLE [dbo].[RobaDrzavaTarifas]( CREATE TABLE [dbo].[DodatnaNapomenas]( Niže navedene tablice se kreiraju samo jednom i služe isključivo za rad 4D Wand IMC web komponente i nemaju dodirnih točki s 4D Wand-om. (Favoriti, Plaćanje, itd.) [dbo].[Favorites] Napomene Tablice (osim Kosaras, Narudzbas, Favorites, Placanjes, KeyValues i RobaCijenaDatums) se periodično dropaju.
|
|
|