[ zmajd88 @ 23.01.2008. 13:19 ] @
Jel zna neko kako da sabiram i oduzimam vreme?
Imam dva textbox-a i u njima vreme u formatu hh:mm
Kako da sada te vrednosti saberem ili oduzmem?
[ Predrag Glumac @ 23.01.2008. 13:25 ] @
Konvertuj vrednosti i textBox-ova u DateTime. DateTime ima metode AddHours i AddMinutes. Ili drugi textBox konvertuj u timeStamp tip i koristi Add metodu od DateTime.
[ zmajd88 @ 23.01.2008. 15:19 ] @
hvala... problem je samo sto ne znam kako to da uradim.
Ako mozes neki primer da postujes kako da konvertujem...
[ Predrag Glumac @ 23.01.2008. 16:02 ] @
DateTime.Parse(textBox1.Text) ili DateTime.TryParse(textBox1.Text). I zapamti: MSDN je tvoj prijatelj
[ zmajd88 @ 23.01.2008. 16:36 ] @
hvala...
ma ne znam ja msdn da koristim... meni treba samo ovo da zavrsim i toliko, necu se baviti ovim:)
hvala jos jednom.
[ sallle @ 23.01.2008. 17:40 ] @
a moze i vako:

Code:

public string Saberi(String a, string b)
      {
         int ia = System.Convert.ToInt32(a.Split(':')[0]) * 60 + System.Convert.ToInt32(a.Split(':')[1]);
         int ib = System.Convert.ToInt32(b.Split(':')[0]) * 60 + System.Convert.ToInt32(b.Split(':')[1]);
         int c = ia + ib;

         return String.Format("{0:D2}:{1:D2}", c / 60, c % 60);
      }

usput nije lose izvrsiti proveru da li ulazni stringovi zadovoljavaju format (npr regex klasom)
i treba hvatati izuzetke (Convert.ToInt32 ih baca)
[ mmix @ 23.01.2008. 18:24 ] @
DateTime je suvise nezgodan za ovu primenu jer ukljucuje i obavezan datum. Predrag ti je dao deo resenja, preko TimeStampa, sa tim sto mozes komotno da koristis operatore + i - koje timestamp podrzava da sabiras i oduzimas vremena:

Code:


            TimeSpan x1 = TimeSpan.Parse("12:11");
            TimeSpan x2 = TimeSpan.Parse("2:15");

            TimeSpan add = x1 + x2;
            TimeSpan sub = x1 - x2;

            Console.WriteLine(add);
            Console.WriteLine(sub);


Izlaz:
14:26:00
09:56:00
[ zmajd88 @ 23.01.2008. 18:45 ] @
hvala, nisam se nadao na brzim odgovorima;)
[ zmajd88 @ 25.01.2008. 15:29 ] @
... jos jedan problem sa vremenom... tj. datumom.
Imam datetimepicker i hocu da iz njega upisem vreme u .mdb bazu, ali nece da se upise.
Pokusavao sam sledece
datetime vreme = datetime.parse(datetimepicker.text.tostring());
datetime vreme = datetime.parse(datetimepicker.value.toshortdatestring());
datetime vreme = datetime.parse(datetimepicker.value.tostring());

pokusavao sam i samo text iz datetimepicker da stavim u bazu
"insert into datum (vreme) values (" + datetimepicker.text.tostring() + ")";
"insert into datum (vreme) values (" + datetimepicker.text + ")";
"insert into datum (vreme) values (" + datetimepicker.value.tostring() + ")";

pokusavao sam i mnogo drugih gluposti koje su mi padale na pamet... ali bezuspesno.

Moze li neko da mi da konkretno i jednostavno resenje( ako jednostavno postoji)
kao npr. sto je mmix pokazao sa timestamp, samo sto nema datestamp;)

u bazu sam postavio date\time za kolonu vreme, pokusao sam i sa text.
[ sallle @ 25.01.2008. 15:44 ] @
da bi upisivao u bazu, prvo moras da se nakacis (pogledaj malo ado.net, a sigurno ima i po forumu). Otprilike ovako nekako treba da izgleda...

Code:

OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "  "  // vidi na www.connectionstrings.com konekcioni string za access

OleDbCommand komanda = new OleDbCommand();
komanda.CommandText = "insert into ...";
komanda.Connection = conn;

try
{
conn.Open();
komanda.ExecuteNonQuery();
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
finaly
{
conn.Close();
}
[ zmajd88 @ 25.01.2008. 15:50 ] @
konektujem se ja na bazu, sve je to ok.
mogu da upisujem iz textbox ili listbox u bazu ali nemogu da upisem iz datetimepicker

mogu ja da napravim i tri comboboxa, jedan za dan, drugi za mesec treci za godinu ali ja bih hteo preko
datetimepicker.
[ sallle @ 25.01.2008. 16:05 ] @
datetimepicker.Value.Date (pored Date imas jos varijanti: Day, Hour, Year...)
[ zmajd88 @ 25.01.2008. 16:44 ] @
nece...
gresku sam uploadovao uz poruku

string komStringOdmor = "insert into Odmor (JMBG, Od, Do) values (" + comboBox1.Text + "," + dateTimePicker1.Value.Date + "," + dateTimePicker2.Value.Date + ")";


ovu gresku mi pokazuje i na prethodne pokusaje.
[ Predrag Glumac @ 25.01.2008. 16:56 ] @
Datume u queryu ogradi sa tarabama (#). Mozda ce ti praviti problem zbog formata datuma (dd.MM.yyyy). Najbolje je da stavis parametre i nema glava da te boli
[ zmajd88 @ 25.01.2008. 17:04 ] @
mozes li malo to jasnije, molim te... ja sam glup za ove stvari.
kakvi parametri?
[ aleksandarpopov @ 25.01.2008. 20:07 ] @
http://www.csharp-station.com/Tutorials/AdoDotNet/lesson06.aspx
[ zmajd88 @ 25.01.2008. 20:50 ] @
Hvala aleksandre, ovo mi je bas pomoglo.
Samo sam stavio navodnike(') na pocetku i na kraju i sad radi:)
[ zmajd88 @ 26.01.2008. 15:05 ] @
Hoce li neko da mi pomogne da resim ovaj zadnji problem?

imam 4 tabele, login, logof, ulaz i izlaz. Login i log of se uvek popunjavaju a ulaz i izlaz samo
kada neko privatno napusti firmu, znaci upisuje se vreme kad izadje i udje.

e sad ja trebam da napravim da iz aplikacije, koju ste mi pomogli da napravim, vidim radno vreme radnika
za 1 dan i za mesec dana.

u sve 4 tabele se upisuje vreme u formatu hh:mm, u pitanju je .mdb baza.

znaci logof - login - ulaz + izlaz ili ako ne moze sa + onda (logof - login) - (ulaz - izlaz)

Ako moze neko da mi objasni kako to da uradim konkretno jer ne kapiram bas ovaj C#...
nije to za mene.
Unapred hvala.
[ zmajd88 @ 27.01.2008. 14:40 ] @
izgleda da nema niko ko to zna i hoce da pomogne...
u svakom slucaju hvala.
[ zmajd88 @ 29.01.2008. 19:01 ] @
Ako neko ume da uradi sta mi treba a nece besplatno neka mi se javi na mejl da se dogovorimo za cenu.
[ dalibors27 @ 31.01.2008. 11:54 ] @
to lako mozes da uradis na sledeci nacin:

prvo napravi datareader i komandu pomocu koje ce da cita bazu,
zatim iskoristi "if" da izvuces redove koji ti trebaju sa datumom (vremenom),
posle toga datume konvertujes DateTime dt1 = DateTime.Parse((...).ToShortDateString());
Da bi sabirao ili oduzimao vremena konvertuj ih u TimeSpan na slican nacin kao sto ti je objasnio mmix.

Ako ti i dalje nije jasno kontaktiraj me mejlom.
[ sallle @ 31.01.2008. 18:24 ] @
ja bih vozio 3 tabele za evidenciju.
1. tabela - vodi evidenciju o ljudima trenutno u firmi
2. tabela - arhiva svih intervala
3. tabela - arhiva svih eventova (ulaz/izlaz - stavis neki bit da govori jel ulaz ili izlaz)

ulazak osobe u firmu:
-insert into tabela1 values...
-insert into tabela3 values...

izlazak osobe iz firme:
-select * from tabela1 where @osoba = osoba_id
-insert into tabela2 (podaci iz gornjeg selecta, datetime.now, duzina_intervala...)
-insert into tabela3
-delete from tabela1

i koristio bih neki sql server i stored procedure...