Professional Documents
Culture Documents
Jovo Simić E-Evidencije
Jovo Simić E-Evidencije
REDOVNE STUDIJE
Predmet
Viši programski jezici i RAD alati
E-evidencije -
Projekat povezivanja baze podataka i
Visual Basic-a
(seminarski rad)
Predmetni nastavnik
Prof. dr Zoran Ž. Avramović, dipl.inž.elek.
Student
Jovo Simić
Klikom na opciju New Database, otvara se prozor u kojem se upisuje ime baze
podataka, veličina, tip podataka i ostalo. Nakon postavke osnovnih podešavanja baze, klikom
na dugme OK kreira se baza.
Kreiranjem baze stvaraju se opcije za kreiranje baznih dijagrama, tabela, bezbjedosna
podešavanja i druge… Desnim klikom na folder Tables otvara nam se prozor opcija u kojem
se nalazi i opcija Table , pomoću koje se kreira tabela u bazi podataka.
SQL (eng. Structured Query Language) je strukturisani jezik upita koji se koristi kao
kompjuterski jezik kojim se uspostavlja komunikacija sa bazom podataka. Prostije rečeno,
SQL je programski jezik namijenjen za rad sa bazama podataka. Koristi se za kreiranje,
izmjenu i pretraživanje konkretnih podataka , koji su obično organizovani u vidu tabela.
Svaka tabela sadrži svoje podatke i svrha SQL-a je da pronađe i izmjeni informacije na koje
korisnik želi. Zove se još i "sequel".
SQL ne služi samo za pisanje upita. SQL posjeduje i funkcije koje omogućavaju
korisniku da definiše strukturu podataka koji se koriste u bazi kao i njihovu međusobnu vezu
sa drugim podacima u bazi. Korisnicima je omogućeno dodavanje, brisanje iz baze i
ažuriranje postojećih podataka unutar baze. SQL takođe zaštitu podataka unutar baze od
strane neovlaštenih pristupa i onemogućavanje izvršavanja upita za određene korisnike baze
koji tim podacima ne mogu pristupati. Pristup jednoj bazi može biti omogućen i većem broju
korisnika, a jedan od zadataka SQL-a je i koordinisanje dijeljenim podacima tako da se
korisnici međusobno ne ometaju.
2.3. Naredbe SQL-a
Microsoft Visual Studio jest integrirano razvojno okruženje (IDE) koga pravi Microsoft.
Koristi se za razvoj računarskih programa za Windows, veb-stranica, aplikacija i usluga.
Koristi Microsoftove platforme za razvoj poput aplikativnih programskih interfejsa (API)
za Windows, Windows Forms, Windows Presentation Foundation, Windows Store i
Microsoft Silverlight. Može proizvesti nativni kôd i upravljani kôd (eng. managed code).
Visual Studio sadrži uređivač izvornog kôda koji podržava IntelliSense (komponenta
koja predlaže ostatak kôda) kao i refaktoriranje kôda. Integrirani program za otklanjanje
grešaka (debugger) radi na nivou izvornog i mašinskog koda. Program također sadrži
alate poput dizajnera oblika koji se koristi za pravljenje aplikacija s grafičkom korisničkim
interfejsom, veb-dizajnera, dizajnera klasa i dizajnera shema baza podataka. Prihvata
proširenja koja poboljšavaju funkcionalost na skoro svakom nivou dodajući podršku
sistema za upravljanje izvornim kôdom (poput softvera subversion) i dodajući nove
nizove alata poput tekstualnih uređivača i vizualnih dizajnera za jezik određenih domena
ili za druge dijelove procesa razvoja softvera (poput klijenta Team Explorer).
Porjekat započinjemo otvaranjem programa Microsoft Visual Studio 2019 I biramo opciju Create
New Project
Dobijamo prozor gdje možemo da biramo kakav projekat želimo. U našem slučaju koristimo
Windows Forms App u programskom jeziku Visual Basic.
U sledećem dijelu dobijamo formu u koju možemo da dodamo alate iz toolboxa koji se nalazi
na lijevoj strain ekrana. Na sledećoj slici možemo vidjet alate kao što su Button, TextBox,
ComboBox i Label.
Nakon klika na opciju Add New Data Source dobijamo prozor u kom biramo opciju Database.
Sledeća opcija nam daje mogućnost da izaberemo način povezivanja na bazu gdje ćemo da
se konektujemo pomoću unosa imena servera i windows autentifikacije.
Nakon spajanja sa serverom i odgovarajućom bazom podataka, potrebno je iskodirati
komande za "dovođenje" u aplikaciju, da bi postupci, koje bi vršili u aplikaciji, mogli
uticati i na bazu podataka.
U sledećem dijelu koda deklarisana je naredba "radi" kao nova SqlCommand koja
prima neki upit-query i informacije, i definisana je sa connection, kako bi se navedeni query
tj. upit izvršio nad definisanom konektovanom bazom. Otvori se konekcija, izvrši se naredba i
nakon toga se konekcija zatvara.
Nakon toga dolazimo do dijela gdje želimo da damo funkcionalnost našim Button-
ima. Dugme Dodaj fakturu otvara novu formu koja ima novi dizajn i zavisi od opcije u
ComboBoxu.
Sledeće dugme na Form1 je Obriši fakturu koje nas takođe zavisno od izbora vodi na
novu formu brišemo fakturu tako što unesemo ID fakture.
Ispis baze podataka nas takođe vodi na novu formu gdje dobijamo DataGridView ispunjen
vrstom formi koje želimo
Kod izgleda ovako za KUF
A ovako za KIF
Poslednje i najbitnije dugme jeste dugme koje generiše CSV fajl koji se šalje na websajt
poreske uprave. I ovako izgleda kod za generisanje fajla.
Next
countline = countline + 1
count = 1
thecsvfile = thecsvfile.TrimEnd(",")
thecsvfile = "1," & PDV & "," & Period & "," & "1," &
numString & "," & vrijeme & ","
End If
Next
Form8.Close()
thecsvfile = thecsvfile.Replace(",,,,,,,,,,,,,,,,,,,,", "")
nazivfajla = "" & PDV & "_" & Period & "_1_" & numString & ".csv"
Form9.Show()
For Each row1 As DataGridViewRow In Form9.DataGridView1.Rows
For Each cell1 As DataGridViewCell In row1.Cells
thirdPart = thirdPart &
cell1.FormattedValue.ToString.Replace(",", ".") & ","
Next
Next
thirdPart = thirdPart.Replace(",,,,,,,,,", "")
End If
If ComboBox1.Text = "Isporuke" Then
PDV = PDVBroj.Text
Period = PoreskiPeriod.Text
Dim thecsvfile As String = "1," & PDV & "," & Period & "," & "2," &
numString & "," & vrijeme & ","
Form11.Show()
For Each row As DataGridViewRow In Form11.DataGridView1.Rows
thecsvfile = thecsvfile & vbCr & vbLf
For Each cell As DataGridViewCell In row.Cells
If count = 22 Then
Continue For
End If
thecsvfile = thecsvfile &
cell.FormattedValue.ToString.Replace(",", ".") & ","
count = count + 1
Next
countline = countline + 1
count = 1
thecsvfile = thecsvfile.TrimEnd(",")
thecsvfile = "1," & PDV & "," & Period & "," & "1," &
numString & "," & vrijeme & ","
End If
Next
Form11.Close()
thecsvfile = thecsvfile.Replace(",,,,,,,,,,,,,,,,,,,,,,", "")
nazivfajla = "" & PDV & "_" & Period & "_2_" & numString & ".csv"
Form10.Show()
For Each row1 As DataGridViewRow In Form10.DataGridView1.Rows
For Each cell1 As DataGridViewCell In row1.Cells
thirdPart = thirdPart &
cell1.FormattedValue.ToString.Replace(",", ".") & ","
Next
Next
thirdPart = thirdPart.Replace(",,,,,,,,,,,", "")
End If
If PoreskiPeriod.Text.Length < 4 Then
MsgBox("Poreski period se dostavlja u YYMM formatu", 0, "Error")
End If
If ComboBox1.Text = "" Then
MsgBox("Izaberite tip datoteke", 0, "Error")
End If
End Sub
4. PRIKAZ RADA APLIKACIJE
Klikom na dugme Ispisi fakture otara se nova forma koja nam ispisuje tabelu KIF ili KUF u
zavisnosti od selektovanog tipa datoteke.
Sa selektovanom opcijom dodaj fakturu otvara se nova forma gdje možemo da unesemo sve
potrebene podatke za fakturu.
Kada pravilno popunimo fakturu i idemo na dugme Unesi ako je sve uredu dobijamo sledeći
MsgBox
Klikom na obrisi fakturu dobijamo prozor u koji možemo da unesemo ID fakture koju želimo
da obrišemo.
Nakon klika na dugme obriši ako je sve uredu dobijamo sledeći MsgBox
Za dugme Gegeneriši CSV fajl unosimo PDV Broj obeznika koji podnosi datoteku u
odgovarajući textbox i Poreski period za koji se podnosi datoteka.
Ako je sve uredu dobijamo sledeći MsgBox.
Kombinovanjem znanja iz programskog jezika Visual Basic i SQL Baza podataka dobija se
aplikacija za sistem E-evidencije. Cilj aplikacije je da generiše jedan ili više csv fajl zavisnosti
od količine faktura i veličine svakog pojedinačnog fajla. Možemo da kažemo da je cilj
uspješno ispunjen.
Dodatnim radom na nekim sitnicama vjerujem da bi se aplikacija mogla koristit za
jednostavno generisanje svih fajlova koji se šalju na websajt porezne uprave BiH.
6. LITERATURA
https://bs.wikipedia.org/wiki/Microsoft_Visual_Studio
https://bs.wikipedia.org/wiki/SQL
https://stackoverflow.com/