Prikazi cijelu temu 26.08.2016 13:52
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Lokacija:Tuzla


Predmet:Re: Ado command i progrsbar
Tesko ce ti ovdje pomoci progres bar jer nemas napr. ucitavanje recordsetova ili nesto slicno gdje bi stavio progresiju odnosno napredovanje.

Tvoje svo vrijeme cekanja odnosno vrijeme izvrsenja je ovdje vjerovatno.
Set rsLager = cmd.Execute()
Sto znaci da ti cekas da se jedna cjelina posla izvrsi u bazi van vb coda.

Pozes to provjeriti gdje dolazi do zastoja ako pokrenes kod sa F8 pa ces vidjeti na kojim redovima vise ceka.
Ja mislim da ceka samo
cmd.ActiveConnection = cn-----> mozda ovdje malo i
Set rsLager = cmd.Execute()-----> ovdje

Ukoliko staje na vis redova onda nesto bi i mogao napraviti.
Svaki progres bar radi na principu:
Vrijednost pri po cetku (obicno 0)
Vrijednost Pri zavrsetku (napr. 100) i progresija.
Progresija je napr. 1.
E sad ako imas petlju onda u petlji negdje stavis da ti se povecava progresija za 1.

Posto ti nemas onda bi mogao staviti na pocetak te negdje u sredini koda i na kraju gdje si rekao da se zavrsava.

Progres+1
Set rsLager = New ADODB.Recordset
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
cmd.ActiveConnection = cn
Progres+50
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "spLagerVoziloKorisnik"
cmd.Parameters.Refresh
cmd.Parameters("@Korisnik") = rsKorisnici.Fields("ID_Korisnik")
cmd.Parameters("@OdData") = txtDataOD
cmd.Parameters("@DoData") = txtDataDO
Progres+29
Set rsLager = cmd.Execute()
Progres+30
Set cmd = Nothing

Znaci rasporedis do 100
Samo sto time neces bas bog zna sta dobiti.
Kako vidis tvoja progresija bi isla 1% pa odma
51%
pa onda malo stojalo na 80% i zavrsilo.

Bila mi je namjera da objasnim kako radi mada nisam gledao direktno ovaj progres na koji sam dao link.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.