[ zormar @ 16.07.2007. 22:29 ] @
U programu koji je instaliran na racunar ne mogu da upisem podatak u bazu u formatu dd/mm/yyyy.
Za upis datuma koristim DTPicker
Code:
txtDatum.Text = Format(DTPicker1.Value, "dd/mm/yyyy")
Maska za upis datuma u bazi je promenjena na ovaj format. U Regional Settingsu takodje.
Da li je dovoljno promeniti format datuma samo u Regional Settingsu, a da na svim drugim mestima ostane tacka kao separator?
Nije mi vazan format samo da mogu da upisem podatak u bazu.
[ NoxX @ 17.07.2007. 04:36 ] @
A zašto ne pokušaš da postaviš format te baze kao tekst (string)? Tako će sigurno da ti radi.
[ Marko_L @ 17.07.2007. 07:02 ] @
http://www.elitesecurity.org/t264335
[ zormar @ 17.07.2007. 16:21 ] @
Mozda nisam dobro objasnio o cemu se radi.
Kad napravim exe fajl u VB projektu (pre pravljenja setupa) sve radi normalno, podatke mogu da upisujem u bazu. Format datuma je (dd.mm.yyyy).
Da bi u P&D Wizardu napravio instalaciju morao sam u RegionalSettingsu da promenim masku za unos datuma (dd/mm/yyyy), i tad nastaje problem.
Kad sam program instalirao nisam mogao da upisem podatke u bazu. Datum unosim pomocu DTPickera.
Da li neko moze da mi objasni zasto to ne radi kako treba?
[ goranvuc @ 17.07.2007. 16:29 ] @
Citat:
zormar:
Da bi u P&D Wizardu napravio instalaciju morao sam u RegionalSettingsu da promenim masku za unos datuma (dd/mm/yyyy)


Zasto si morao, gde to pise, kakve veze ima Setup sa formatom DT Picker-a? Bas me interesuje tvoje obrazlozenje ;)

Inace, osnovni princip koji treba svaka aplikacija da neguje je postovanje regionalnih podesavanja korisnika, a sto se tice datuma to se postize tako sto sve datumske ispise i unosne maske prikazujes u imenovanom formatu "Short date". Sto se DTPicker-a tice, treba da za Format property stavis isto "1-dtpShortDate" i neces imati nikakvih problema.

P.S. Cudio sam se sto si napisao te * za DT Pi... komponentu, a sad vidim da to ES skript sakriva, bas sam se nasmejao! Samo da vidim da li smem da pisem zabranjenu rec: D T P i c k e r

Prolazi!
[ zormar @ 17.07.2007. 16:44 ] @
Nisam ni rekao da imaju neku vezu setup i DTPicker.
Prilikom pravljenja setupa dok nisam u Regional Settingsu promenio separator datuma u (/) prijavljivao mi je gresku Invalid line in setup information file!
Samo mi reci da li u bazi polje Datum moze da bude text ili treba staviti Date s odgovarajucim formatom?
[ Marko_L @ 17.07.2007. 16:48 ] @
Polje u bazi uvek treba da bude onog tipa kakav se podatak očekuje. Dakle, za datum koristiti Date/Time.
[ goranvuc @ 17.07.2007. 16:49 ] @
Eto sta se desava kada ne citam pazljivo ;) Verovatno nemas neki od novijih SP pa ti zato Setup pravi standardne probleme sa datumima?

Sto se tice tipa podatka za polje u bazi, ako je nesto datum, onda stavi da je tip Date/Time (ne znam koju bazu koristis), i DTPicker.Value onda moze da uzima vrednost tog polja iz baze:
Code:

DTPicker1.Value = rstSample("Datum")

ili mozes direktno da ga povezes za to polje (preko DataField svojstva).

P.S. Kao i obicno, pisemo ti komentare 2 dana, dok se konacno ne razumemo, umesto da stavis deo koda ili projekta koji ti pravi problem, pa da odmah zavrsimo.

Pozdrav!
[ zormar @ 26.07.2007. 22:59 ] @
Koristim bazu u Accessu gde je polje Datum podeseno na Date/Time, i datum se u bazu upisuje preko DTPickera u formatu "dd/MM/yyyy".
Za prikazivanje podataka na formi koristim FlexGrid u kojem se u koloni Datum isti pojavljuje u formatu "MM/dd/yyyy".
Sta treba uraditi da se datum prikazuje u formatu "dd/MM/yyyy"?
[ goranvuc @ 26.07.2007. 23:12 ] @
Pa, flexgrid uvek datumske vrednosti prikazuje u "Short date" formatu, sto je OK, tako da svako sebi moze da namesti kako mu se svidja. Napravi da ti je "Short date" format u regionalnim podesavanjima "dd/MM/yyyy" i flexgrid "ce te slusati".
[ zormar @ 26.07.2007. 23:39 ] @
U Regional Settingsu je short date namesten na Serbian (latin) i "dd/MM/yyyy" ali ipak se taj format ne prikazuje na gridu.
Ne znam sta je vise u pitanju, imam instaliran sp6, a ipak me muci upisivanje podataka u bazu.
Ako mozes da mi pomognes reci koji deo koda da postujem, ali tek sutra jer sad ne mogu.
[ goranvuc @ 26.07.2007. 23:42 ] @
Vazi, ali pripremi se da posaljes i bazu podataka (obrisi osetljive podatke ako ih ima) da bih imao kompletnu sliku. Resicemo to, verovatno je neka banalna sitnica (obicno je to u pitanju).

Pozdrav!
[ zormar @ 28.07.2007. 15:21 ] @
@goranvuc
Izvini malo sam zakasnio s ovim. Saljem ti program koji je ranije prikacio degojs, s tim sto sam ja dodao DTPicker i flexgrid. U ovom programu se javlja ista greska kao i u mom programu, pa ako mozes da vidis gde je problem bicu ti veoma zahvalan.
S exe fajlom nema problema, podaci se mogu upisati u bazu.
Kad sam napravio setup i instalirao program podatke ne mogu upisati u bazu. Format datuma na gridu je i dalje "MM/dd/yyyy".
Uz ovo sam prikacio bazu i setup.lst
[ goranvuc @ 28.07.2007. 16:33 ] @
Za pocetak, trebao si da posaljes i "ADODB.frx" - frm i frx idu u paru, ali nema veze ;)

Kao drugo, dao si mi lazne informacije, ne koristis FlexGrid za koji sam ti rekao da ne bi trebalo da bude tih problema, vec Hijerarhijski Flex Grid koji ima problema sa prikazom datuma, tj. ne prikazuje u sistemskom "Short date" formatu datume, tako da ako nemas neki specijalan razlog da koristis Hijerarhijski Flex grid nemoj ga koristiti, a u suprotnom mozes iskoristiti malu "caku":

Za RecordSource postavi upit "SELECT tbl_korisnici.*, Format(DatumRodjenja, 'Short date') AS DatumZaFlex FROM tbl_korisnici" pa na gridu stavi da ti se prikazuje DatumZaFlex umesto polja DatumRodjenja.

Srecno!

P.S. Nisam bas shvatio to sa setup-om, tj. sto si mi poslao Setup.lst ? Kad kazes "podatke ne mogu upisati u bazu" sta pod tim mislis. Sve u svemu, tvoj najveci problem je da precizno predstavis svoj problem.

[Ovu poruku je menjao goranvuc dana 28.07.2007. u 17:43 GMT+1]
[ zormar @ 28.07.2007. 18:39 ] @
Najveci problem je sto ne mogu da upisujem podatke u bazu kad instaliram program, a format datuma u gridu i nije toliko bitan vec je to vise zbog estetike.
Setup.lst sam uploadovao zato sto ne znam da li nedostaje neki fajl koji bi trebalo ukljuciti u instalaciju, jer s exe fajlom je sve u redu, podaci se normalno upisuju u bazu.
[ goranvuc @ 28.07.2007. 19:07 ] @
Izvini, ali stvarno te nista ne razumem. Pitao sam te sta mislis kad kazes "ne mogu da upisujem podatke u bazu", a ti nista. Dajes protivrecne izjave jer prvo kazes: "ne mogu da upisujem podatke u bazu kad instaliram program", a zatim "s exe fajlom je sve u redu, podaci se normalno upisuju u bazu". Kao sto rekoh, ne umes da dobro predstavis svoj problem, pa tesko da ti mogu pomoci i pored dobre namere, uporno dajes neke opste opise bez detalja.

Ajde po stoti put, sta mislis pod izjavom "ne mogu da upisujem podatke u bazu", kakve podatke, na koji nacin upisujes, koju poruku ti izbacuje program ...

Evo citam po stoti put tvoje komentare od prvog do poslednjeg i pokusavam da shvatim sta je tvoj problem, ali nemam nameru vise da se trudim kad se ti nimalo ne potrudis da te ljudi razumeju.

P.S. moguce je da je problem u tome sto imas FlexGrid vezan za ADODC1, a ADO Data Controli nisi definisao da preuzima Connection string, vec je to "hardkodirano" u projekat, pa treba samo u "cmdOpenConnection_Click()" na kraju dodati sledecu liniju koda (govorim o primeru koji si poslao).
Code:

Private Sub cmdOpenConnection_Click()
    
    ...
    
   Adodc1.ConnectionString = strConnect
   Adodc1.RecordSource = rsRecordSet.Source
   Adodc1.Refresh

End Sub

Ako je to problem, onda da ti objasnim u cemu je stvar: DataSorce za tvoj FlexGrid je ADO data control "ADODC1" koji je upotrebljen da bi se generisale kolone FlexGrida u dizajn modu i dalje on nema nikakvu svrhu. U njemu je fiksno upisana putanja do tvoje baze na razvojnom racunaru, pa kada pokrenes tvoj program na korisnickom racunaru, a tamo se baza nalazi na razlicitoj putanji od one kod tebe - dolazi do greske.

Ako nije to, onda pogledaj komentar iznad P.S.

[Ovu poruku je menjao goranvuc dana 28.07.2007. u 20:28 GMT+1]
[ zormar @ 29.07.2007. 22:48 ] @
Pri pokretanju programa instalaliranog na racunar na kome nema VB6 javlja mi poruku:
ADODC
'C:\Adodb\db1.mdb' is a not valid path. Make sure that the path name is spelled corretly and that you are connected to the server on which the file resides.
@goranvuc, ovo sto si ti predlozio ne ide jer daje poruku: Method Refresh of object Adodc failed.
[ goranvuc @ 29.07.2007. 23:26 ] @
Ako ti OS na kom instaliras nije Win XP, onda verovatno treba da se instalira i ADO tj. MDAC (neka od novijih verzija), a evo ti i link: http://www.microsoft.com/downl...85d0506396c&displaylang=en

Ako ti ni to ne resi problem, onda mozda treba i JET, evo ti link pa izaberi instalaciju za ciljni OS http://support.microsoft.com/kb/829558

Inace, ako instaliram program za rad sa bazama podataka na nekim sistemima koji nisu XP, ove instalacije uvek nosim sa sobom
[ BinLaden @ 30.07.2007. 00:53 ] @
Microsoft sranja...., al nije sve ni do njih....
Skini InstallShield sa neta, nije besplatan al mi uvijek imamo rjesenje za to...., zapakuj program s njim i to
tvoje cudo od problema ce nestati....
[ MarkoBalkan @ 31.07.2007. 15:31 ] @
ja koristim bazu MySql.format datuma u sql-u je yy/mm/dd.
u datatimepiker-u je dd/mm/yy.
ja sam rastavio posebno dan, posebno mjesec i posebno godinu!
definira se jedan string kao sve!

Dim dan As String
Dim mjesec As String
Dim godina As String
Dim sve As String



godina = DateTimePicker1.Value.Year.ToString
mjesec = DateTimePicker1.Value.Month.ToString
dan = DateTimePicker1.Value.Day.ToString

If mjesec > 9 Then
sve = godina & mjesec & dan
Else
sve = godina & 0 & mjesec & dan

End If

nula ide zbog formata!


st2 = ("update a set adresa ='" & sve & "' where ID=1")

taj string "sve" mora biti u formatu u onakvom, kakv je u bazi.i on dalje sam razdvoji.
bez puno filozofija.
[ goranvuc @ 31.07.2007. 15:40 ] @
@MarkoBalkan, covece, kada ces prestati da dajes komentare koji se odnose na VB.NET a ne na VB 6.0 i time zbunjujes sve nas, a ponajvise sebe, jer sam ti vise puta vec premestao pitanja na .NET forum, a ti se stalno vracas.

Ako imas nesto da kazes vezano za ovaj forum samo napred, u suprotnom imas .NET forum.
[ MarkoBalkan @ 31.07.2007. 16:03 ] @
ja mislio da je sve jedno vb, vb.net itd..

vb 6.0 treba izbaciti jer je zastario ima vec barem 5 godina!
[ goranvuc @ 31.07.2007. 16:22 ] @
Citat:
MarkoBalkan: ja mislio da je sve jedno vb, vb.net itd..

Pa da je svejedno ne bi se pravila 2 posebna foruma. Da li si probao kod koji se objavljuje ovde? Ti ko pcelica Maja - malo koji topik na .NET, malo ovde Mozda je tebi i svejedno, mogu ti reci da je i meni svejedno, ali ima ljudi koje zbunjujes svojim komentarima.

Sto se tice zastarelosti, bilo je puno rasprave na tu temu, ovde je offtopic.
[ zormar @ 04.08.2007. 11:27 ] @
Pri pokretanju programa, koji koristi bazu u Accessu i ADO kontrolu, na racunaru gde nije instaliran VB6 prijavljuje mi gresku
Run-time error 68:
Device unavailable.
Na tom racunaru je instaliran Win XP sa SP2, MDAC 2.5, JET 4.0
Da li neko zna sta je uzrok ove greske?
[ MarkoBalkan @ 05.08.2007. 13:46 ] @
programi pisani u VB6 i starijem trebaju runtime biblioteke.!
mozes ih skinuti sa neta.
[ Marko_L @ 05.08.2007. 13:52 ] @
Windows XP već sadrži runtime po defaultu.