[ antonio22 @ 24.02.2015. 18:17 ] @
Pozdrav svima , početnik sam u accesu i koristim 2007. Radim bazu jednu malu al mi je potrebno u toj bazi izračun radnog staža . Al da mi bude napisano GODINA , MJESEC i DAN.
Imam datum unosenja podataka , datum zaposlenja , prethodni radni staž (to sam stavio samo u godinama al bi trebao promjenit godina mjesec i dan) . pa na osnovu toga mi je potrebno da dodjem do RADNOG STAŽA . Pa ako ima tko prijedlog bio bi zahvalan
[ captPicard @ 24.02.2015. 19:30 ] @
Evo ti par starijih tema iz te oblasti, pa ti možda pomogne:

U excelu
Access
[ antonio22 @ 25.02.2015. 06:44 ] @
Hvala na odg al trazim ipak nesto drugo
[ antonio22 @ 25.02.2015. 13:00 ] @
SELECT evidencija.Ime, evidencija.[Ime oca], evidencija.Prezime, evidencija.JMBG, evidencija.Datum, evidencija.[Datum zaposlenja], DateDiff("yyyy",[Datum zaposlenja],[Datum]) AS Years, IIf(Day([Datum zaposlenja])<=Day([Datum]),DateDiff("m",[Datum zaposlenja],[Datum])-[Years]*12,DateDiff("m",[Datum zaposlenja],[Datum])-[Years]*12-1) AS Months, DateDiff("d",DateAdd("m",[Months],DateAdd("yyyy",[Years],[Datum zaposlenja])),[Datum]) AS Days, evidencija.Godina, evidencija.Mjesec, evidencija.Dan, [Days]+[Dan] AS polje1, Int([polje1]/31) AS polje2, IIf([polje1]>31,[polje1]-([polje2]*31),[polje1]) AS UkupnoDana, [Months]+[Mjesec]+[polje2] AS polje4, Int([polje4]/12) AS polje5, IIf([polje4]>12,[polje4]-([polje5]*12),[polje4]) AS UkupnoMjeseci, [Years]+[Godina]+[polje5] AS [Ukupno Godina]
FROM evidencija;


Evo kod koji sam dobio racuna godinu ok al mjesec uvijek u minusu zna li tko sta bi moglo bit ?? uglavnom kod radi sve do kraja al mjesec samo kriv pa moze li tko pomoc ????
[ IKA RISTOVIĆ @ 25.02.2015. 16:30 ] @
Evo ja uvo funkciju koristim, nešto sam na brzaka uradio, nadam se da ce ti koristiti.
Ika
[ antonio22 @ 25.02.2015. 16:59 ] @
Nasao sam ja sve ovo sto mi saljete :) al zaj.... me mjesec samo ostalo je sve ok ... Pa sam mislio ako tko ima vremena i znanja da provjeri ovaj kod koji sam poslao
[ IKA RISTOVIĆ @ 25.02.2015. 18:12 ] @
Sve sam proverio i sve radi, mora da imaš neku grešku.
Proveri u samom postu koji sam ti poslao
ika
[ captPicard @ 25.02.2015. 18:36 ] @
Code:
Function RStaz()
' Funkcija za izračunavanje dužine radnog staža _
uBaci iz polja za godinu mesec ili dan podatak ako ga ima  onda ga sabira _
ako nema podatke unda uzima iz pocetka rada i o odnosu na trenutni datum uzima _
pocetne vrednosti

Dim pocetak1, Kraj1
Dim GS%, MS%, DS%, st

  GS = Year(Date) - Year(poc) + Nz(Me.pocGod)
  MS = Month(Date) - Month(poc) + Nz(Me.pocMes)
  DS = day(Date) - day(poc) + 1 + Nz(Me.pocDan)
   
  If DS < 0 Then
      MS = MS - 1: DS = DS + 30
    End If
    If MS < 0 Then
      GS = GS - 1: MS = MS + 12
    End If
    If GS < 0 Then
      MsgBox ("Greška")
      Exit Function
    End If
    If DS = 30 Then
      MS = MS + 1: DS = 0
    ElseIf DS = 31 Then
      MS = MS + 1: DS = 1
    End If
     ' Me.godstaz = GS
     
 Me.Label533.Caption = "Radni staž: "
 Me.Label534.Caption = "" & GS & "  godine"
 Me.Label535.Caption = "" & MS & "  meseca"
 Me.Label536.Caption = "" & DS & " dana"

End Function
[ antonio22 @ 25.02.2015. 20:22 ] @
Hvala na trudu al pocetnik sam tako da nisam bas skontao sta trebam uradit . Pokusavat cu na drugi nacin napraviti . Ne mogu poslat privatnu poruku jer sam kratko na forumu
[ antonio22 @ 26.02.2015. 06:45 ] @
Citat:
IKA RISTOVIĆ:
Sve sam proverio i sve radi, mora da imaš neku grešku.
Proveri u samom postu koji sam ti poslao
ika


radi meni sve al mi mjesec izracuna krive na ovom primjeru :

Datum 25.2.2015
Datum zaposlenja 13.10.2000

Pa kad to sve oduzmem dobijem sljedece : 5 godina -2mjeseca i 13 dana
[ antonio22 @ 26.02.2015. 07:54 ] @
Months: IIf(Day([Datum zaposlenja])<=Day([Datum]);DateDiff("m";[Datum zaposlenja];[Datum])-[Years]*12;DateDiff("m";[Datum];[Datum zaposlenja])-[Years]*12-1)


Ovo mi je kod za racunanje datuma koji mi bude u minusu .
[ captPicard @ 26.02.2015. 08:04 ] @
Ako je datum zaposlenja 31.03.2014, a današnji dan je 01.02.2015, onda će ti rezultat biti u mjesecima 11, ti onda od toga oduzimaš 12 i dobiti ćeš -1, ako sam dobro shvatio tvoju funkciju. Ne znam da li access ima funkciju DIV ili MOD, ako ima mislim da samo možeš samo napraviti DIV ili MOD 12, a ako nema samo razliku u mjesecima podijeli sa 12 i uzeti cijeli broj od rezultata. Govorim napamet, isprobaj da li bi tako radilo.
[ antonio22 @ 26.02.2015. 08:20 ] @
Ako nije problem da mi to napises u mom postojecem kodu ovo sto si rekao :)
[ sparc @ 26.02.2015. 09:50 ] @
kolega pogledajte diskusiju

http://www.elitesecurity.org/t448430-0#3090340

ja sam je pisao I ja je koristim u svim poslovima, osnovno je da je covek radio I prvog I zadnjeg dana, dok se
u slucaju obracuna kamata ne racuna zadnji dan. I dovoljno je koristiti funkciju datediff koji izracunava dane
[ antonio22 @ 26.02.2015. 10:03 ] @
Hvala kolega prelistat cu ovo sto si mi poslao al ja sam nekako zapeo da ovo svoje rijesimi da ovaj model osposobim :) jer imam tu vise izračuna npr. Datum rada u trenutnoj firmi , pa broj godina dana i mjeseci iz prethodnih mjesta gdje je radio pa na kraju da sve to zbroji u ukupni radni staž . sve sam ovo uspio rijesit zbrojit i postavit al me mjesec zajebaje pa gledam kako to rijesit
[ antonio22 @ 03.03.2015. 13:07 ] @
jos nista nisam uspio rijesit sto se tice datuma
[ BiloKoje @ 03.03.2015. 13:46 ] @
Ako ja dobro vidim, u tvom izrazu:
Months: IIf(Day([Datum zaposlenja])<=Day([Datum]);DateDiff("m";[Datum zaposlenja];[Datum])-[Years]*12;DateDiff("m";[Datum];[Datum zaposlenja])-[Years]*12-1)
Year predstavlja razliku godina krajnjeg datuma i datuma zaposlenja, u primeru koji si naveo 2000 i 2015, dakle Year=15, ali nema punih 15 godina između tih datuma.
Potom oduzimaš Year*12, zato dobijaš negativan broj.

Imam neku funkciju rađenu u kodu:

puneGodine = IIf(DateAdd("yyyy", DateDiff("yyyy", prviDan, zadnjiDan), prviDan) > zadnjiDan, DateDiff("yyyy", prviDan, zadnjiDan) - 1, DateDiff("yyyy", prviDan, zadnjiDan))

vidim da je struktura ista, samo ti koristiš nazive polja a ja promenjive, prviDan i ZadnjiDan, uporedi, videćeš gde je razlika. Kod daje broj punih godina a ne razliku godišta.



[ antonio22 @ 04.03.2015. 06:47 ] @
koji je tvoj prijedlog sta bi valjalo ovdje odradit ??? ja sam pocetnik a ovo sve sam pomocu neta radioi snalazio se ... pa ako nije problem da mi malo pomognes ovo prilagodit
[ BiloKoje @ 04.03.2015. 09:45 ] @
Evo, uneo sam tvoj SQL iskaz u upit, upit antonio, slično, ali imajući u viduz da DateDiff ne daje pune godine za određeni interval, recimo za interval 25/12/14 do 5/1/15 daće da je DateDiff jedna godina, a jedva je prošlo 10 dana. U Query1 imaš izmenjenu iskaz, da prikazuje stvaran broj godina.
[ antonio22 @ 05.03.2015. 06:41 ] @
Hvala na pomoci :) Vidim napravio si za stvarni broj godina al meni trebaju i MJESECI I DANI
[ BiloKoje @ 05.03.2015. 09:33 ] @
U ovoj bazi imaš primer u Queriju BiloKoje, izračunate pune godine, puni meseci i dani. Može to i nešto elegantnije, ali nemam baš trenutno vremena.
[ antonio22 @ 05.03.2015. 11:38 ] @
Hvala puno na trudu :) al prilikom testiranja mjeseci opet u minusu

[Ovu poruku je menjao antonio22 dana 05.03.2015. u 13:13 GMT+1]
[ BiloKoje @ 05.03.2015. 13:40 ] @
Ne znam šta ti gledaš, Qery BiloKioje pokazuje godine, mesece i dane korektno.
Ja barem tako vidim.
[ sparc @ 05.03.2015. 14:18 ] @
http://www.elitesecurity.org/t448430-0#3090340

evo odgovora
[ antonio22 @ 05.03.2015. 16:00 ] @
Citat:
BiloKoje:
Ne znam šta ti gledaš, Qery BiloKioje pokazuje godine, mesece i dane korektno.
Ja barem tako vidim.



dodam novog radnika datum zaposlenja 14.1.2000 i stavim danasnji datum 5.3.2015 izbaci 15 godina -363 mjeseca i -9 dana
[ BiloKoje @ 05.03.2015. 17:45 ] @
Ups. Izvinjavam se, moja greška. Radim u jednom fajlu, a spakujem drugi.
Rad sa datumima je pipav, ne toliko težak koliko se lako prave greške.
Nadam se da je ovaj primer dobar, odnosno da daje dober rezultat, svakako da formule treba doterati, optimizovati.
[ antonio22 @ 05.03.2015. 18:03 ] @
Hvala ovo cu testirat pa ti odgovorim :) a tko radi taj i grijesi
[ antonio22 @ 06.03.2015. 07:50 ] @
Testirano i opet nije ok uffff
kad unesem datum zaposlenja 13.10.2000 trenutni datum 6.3.2015 broj godina je 14 mjeseci 4 i 21 dan , kad sam provjeravao na internetu tj http://www.elitesecurity.org/t180901-Excel-Racunanje-radnog-staza fali mi 3 dana ...
[ Zoran.Eremija @ 06.03.2015. 08:15 ] @
Pogledajte primer u prilogu.
[ BiloKoje @ 06.03.2015. 08:19 ] @
Pa, ne znam. Na toj temi vidim da ima više postova, ne znam koji si primer uzimao. Ja sam pogledao zadnji post, on daje, za tvoj primer, 14 godina, 4 meseca i 22 dana dodao je jedan dan na rezultat koji dobija formulom DateDiff, to je stoga što uzima pretpostavku da je rađeno i 13.10 i 6.3. Kada uzimamo granice od-do, biramo i da li su obuhaćene te granične vrednosti. Ne vidim kako si dobio razliku od 3 dana?
[ BiloKoje @ 06.03.2015. 08:43 ] @
@ Zoran.Eremija
Bez ulaženja u analizu funkcija, ono što generalno stoji kod rada sa datumima je da nije isto kada računamo na kontinuiranom intervali i kad sabiramo više intervala.
Kod kontinuiranog intervala računamo stvarne godine, bez obzira da li imaju 365 ili 366 dana, stvarne mesece, svejedno da li imaju 28. 29. 30 ili 31 dan i stvaran broj dana kada se uzmu godine i meseci.
Po dvojoj funkciji GMD, ako računamo od 28.2 do 1.3 ima 4 dana.

[Ovu poruku je menjao BiloKoje dana 06.03.2015. u 17:20 GMT+1]
[ antonio22 @ 06.03.2015. 08:43 ] @
Iskreno nasao sam na webu i tu uporedbu vrsio i razlika je u 3 dana ... ovo je bas neka zajebana tema sorry na izrazu
[ Getsbi @ 06.03.2015. 10:06 ] @
Primere su ostavljali oni koji treba da pomognu. Bilo bi dobro da postavljač teme zakači svoj primer tabele sa nešto podataka i upitom ili VBA kodom kojim računa radni staž i za koji tvrdi da ne radi dobro. Ovako tema može ići u nedogled. Tada će se već naći neko raspoložen da pronađe grešku.
[ antonio22 @ 06.03.2015. 10:14 ] @
Pri samom početku ove teme sam postavio kod koji ja koristim , jos sam novi i na forumu i svemu ovome pa ne znam kako dodati svoju bazu ! ili sliku sta sve koristim s toga ne zamjerite na malo losijem snalazenju u nastavku cijeli kod a slike pokazuju sta od podataka koristim .

Zamisljeno je na sljedeci nacin racunanje radnog staža u postojecoj firmi : PRVI KORAK od datuma zaposlenja do trenutnog datuma
DRUGI KORAK : unosenje prethodnog radnog staža GODINA MJESEC I DAN npr ( 1 , 7 , 21)
TRECI KORAK: Zbrajanje prvog i drugog koraka i da mi to sve prikaze u izvjestaju



SELECT evidencija.Ime, evidencija.[Ime oca], evidencija.Prezime, evidencija.JMBG, evidencija.Datum, evidencija.[Datum zaposlenja], IIf(DateAdd("yyyy",DateDiff("yyyy",[Datum Zaposlenja],[datum]),[datum zaposlenja])>[datum],DateDiff("yyyy",[Datum Zaposlenja],[datum])-1,DateDiff("yyyy",[Datum Zaposlenja],[datum])) AS Years, IIf(Day([Datum zaposlenja])<=Day([Datum]),DateDiff("m",[Datum zaposlenja],[Datum])-[Years]*12,DateDiff("m",[Datum zaposlenja],[Datum])-[Years]*12-1) AS Months, DateDiff("d",DateAdd("m",[years]*12+[Months],[datum zaposlenja]),[datum]) AS Days, evidencija.Godina, evidencija.Mjesec, evidencija.Dan, [Days]+[Dan] AS polje1, Int([polje1]/31) AS polje2, IIf([polje1]>31,[polje1]-([polje2]*31),[polje1]) AS UkupnoDana, [Months]+[Mjesec]+[polje2] AS polje4, Int([polje4]/12) AS polje5, IIf([polje4]>12,[polje4]-([polje5]*12),[polje4]) AS UkupnoMjeseci, [Years]+[Godina]+[polje5] AS [Ukupno Godina]
FROM evidencija;


[Ovu poruku je menjao antonio22 dana 06.03.2015. u 13:23 GMT+1]

[Ovu poruku je menjao antonio22 dana 06.03.2015. u 13:51 GMT+1]
[ Getsbi @ 06.03.2015. 11:56 ] @
Pročitaj FAQ iz menija na vrhu strane. Posebno tačku 22. Upload fajla uz poruku.
[ Getsbi @ 06.03.2015. 17:56 ] @
E sad kad si naučio kalo da zakačiš fajlove, okači Access-ov po mogućnosti .mdb fajl, onako kako sam savetovao u prethodnom postu.
Uzgred proveri u Regional setings šta ti piše u First day of the week. Moguće je da ti je greška tu, ako nije odabran ponedeljak.

Potom proveri svoja očekivanja o rezultatu. Način kako se obračunava radni staž u PIO fondu. Moguće je da su pravila takva da se svaki mesec unutar prvog i poslednjeg računa po 30 dana bez obzira na realno trajanje meseca ili prestupne godine. Jedino ako radiš samo februar (1-28), onda ti računaju 28 dana, a ne 1 mesec. Pročitaj zakon u svojoj zemlji.

[Ovu poruku je menjao Getsbi dana 06.03.2015. u 19:25 GMT+1]
[ antonio22 @ 09.03.2015. 10:08 ] @
Evo u prilogu je izgled moje baze pa ako tko misli da bi mogao pomoc vezano za radni staž ZAHVALAN BI BIO .
[ BiloKoje @ 10.03.2015. 19:34 ] @
Dosad smo saznali da želiš u nekoj bazi da izračunavaš radni staž. Ne znamo jeli to jedina namena baze ili treba i još nešto da radi. Kako god, tabela koju si uradio u priloženoj bazi nikako nije dobra, teško je preći preko toga i posvetiti se proračunu. Valjalo bi prvo osmisliti koji su nam podaci potrebni, kako da se najbolje organizuju, zatim šta želimo da dobijemo, koje dokumente ili podatke i kojoj formi.
Drugo, dobio si nekoliko odgovora, predloga kako može da se računa staž, jedan moj predlog je imao grešku, OK, ali preko drugih jednostavno prelaziš, ne kažeš da li j edobro i ako nije šta ne valja.
Na ovom forumu nekoliko puta je obrađivana ista tema, dato je dosta primera, komentara, ne sporim da postoji mogućnost de se nešto utadi još bolje, ali šta, šta tražiš a da već nemaš u ponuđenim rešenjima?
Ja vidim u jednoj tvojoj formuli da deliš broj dana sa 31, zašto, u opštem slučaju mesec ima 30 dana, to se koristi kod pretvaranja dana u mesece i meseca u dane, nikako 31. Baza se ne pravi za jednu priliku, treba da se koristi i dalje.
[ antonio22 @ 11.03.2015. 07:10 ] @
Imam osjecaj kao da mi profesor drzi predavanje i bas se neugodno osjecam . PONAVLJAM početnik sam i radim malu običnu bazu tek kad sam objavio ovdje pitanje vidio sam 100 propusta koje sam napravio i za koje se nisam ranije raspitao . A pregledao sam sve prijedloge i nisam našao potrebe da komentiram jer MISLIM da mi ne mogu koristiti pa ako sam nekoga uvrijedio ISPRICAVAM SE . Hvala puno na savjetima koje mi dajte i ni na jedan se nisam oglusio . Bazu radim za osobne potrebe googlam trazim riješenja zapeo sam kod računanja radnog staža a ovo ostalo sve može proci bar po meni .
[ BiloKoje @ 11.03.2015. 19:07 ] @
Možda je "zvučalo" kao profesorska pridika, naravno, cilj mi je samo da što preciznije obradimo temu.
Antonio i ja smo razmenili nekoliko poruka, nema nesporazuma, ja ću pokušati da podatke u bazi organizujem malo bolje, mislim da je neophodno, a i da u izračunavanju u upitu otklonim neke očigledne greške. To ću postaviti ovde čim bude dobilo upotrebljiv oblik, nadam se najkasnije ujutro.
Voleo bih da drugi učesninišemi pokušao sam da ga defci prokomentarišu princim obračuna staža. Pokušavam da ga definišem ovako. Za svaki neprekidni interval uzima se stvarni, kalendarski broj godina, meseci i dana, a pri sabiranju više intervala koristi se pravilo 30 dana daju jedan mesec, 12 meseci jednu godinu.
[ antonio22 @ 12.03.2015. 06:50 ] @
Nisam ovo smatrao toliko lose nego da se malo trznem zato sam napisao kao profesorsko predavanje . I da moja je greska bila sto nisam javljao o bazama koje sam testirao sta i kako bi trebalo promjeniti da bi sebi prilagodio ... Obecavam više ažurnosti i više informacija
[ BiloKoje @ 13.03.2015. 20:22 ] @
Nešto sam radio, pokušao sam da dam neku upotrebljiu organizaciju podataka pa sam početnu tabelu, koju sam ostavio i u izvornom obliku, razbio na više manjih, postavio neke veze i uradio formu za obračun staža. Staž se može sastojati iz više itervala unutar firme i više donetih vrednosti.
[ antonio22 @ 15.03.2015. 18:43 ] @
Gledao sam ovu bazu al kao pocetniku mi je bila malo komplicirana al s vremenom gledanja i istrazivanja je dosta dobra i ima smisla :) hvala kolegi koji se trudi da bi mi olaksao
[ BiloKoje @ 12.06.2015. 20:02 ] @
Ovu temu smo Antonio22 i ja nastavili u privatnoj prepisci. Zbog priličnog nerazumevanja u startu mislio sam da nema mnogo smisla da se rad odvija javnoo, na forumu.
Bili smo uporni, otklanjali nerazumevanja, radili obojica, naizmenično. Po samom dizajnu objekata vidi se da nismo imali jasnu viziju od početka, nešto je rađeno pomoću vizarda, nešto je pozajmljeno iz drugig baza, sve u svemu, možda i dobar primer kako ne treba raditi, ali ipak sam želeo da rezultat prezentujem ovde. Mislim da ima zanimljivih rešenja, da se može korisno upotrebiti, a i da se mogu očekivati konstruktivne kritike.
Još nešto, u početku, ja sam radio u Accesu XP, Antonio22 u Accesu 2007, kako neke objekte nisam mogao da pokrenem, koristio sam Access 2010, sedmicu nisam imao, pa sam zaključio da tako ne ide, instalirao sam Access 2007. Koliko sam testirao, čini mi se da sve radi, to je valjda i najveće čudo, jer je tokom rada više puta dolazilo do pucanja, moralo se dosta toga raditi od početka, konflikt verzija je naplatio svoj danak.
[ antonio22 @ 15.06.2015. 07:16 ] @
Nakon par mjeseci rada s kolegom BILOKOJE dobili smo Extra rezultat . Iskreno nisam očekivao da cemo uspjeti napraviti ovako aplikaciju koja će me zadovoljiti u potpunosti . Ovom prilikm mu se javno Zahvaljivam na odvojenom vrmenu i trudu koje je izdvojio da bi ovo napravil . Ostaje nam zadnji dio aplikacije a to je zaštita pa ako tko ima ideju kako to odraditi bio bih mu vrlo zahvalan ...
[ Getsbi @ 15.06.2015. 13:21 ] @
Ukucaj reč zaštita u polje Pretraga Ovog foruma i dobićeš nekoliko zanimljivih ideja.
[ antonio22 @ 02.09.2015. 20:02 ] @
Molim da se zaključa ova tema !
[ Getsbi @ 03.09.2015. 05:15 ] @
Teme zaključavamo ukoliko dođe do konflikta. Prethodno obrišemo sve nepristojne poruke i ostavimo ono što je korisno za članove foruma. Mislim da to ovde nije slučaj.
[ antonio22 @ 03.09.2015. 07:53 ] @
OK nema problema
[ antonio22 @ 15.09.2015. 11:53 ] @
Ekipa pomoć bi mi trebala pa ako ima tko ,
Trebam napraviti izvještaj koji bi mi prikazao podatke od datuma (datum zaposlenja ) do datuma (trenutnog datuma il datuma koji želimo). Gledao sam po forumu al ne mogu da nađem nesto sto bi mi odgovaralo ....
[ Getsbi @ 16.09.2015. 17:59 ] @
Probaj ovde:
http://www.elitesecurity.org/t277029-0#1649103
http://www.elitesecurity.org/t410710-0#2703003
[ antonio22 @ 17.09.2015. 07:03 ] @
Hvala na odgovoru sve sam ovo čitao i gledao al nije to nesto sto mi treba :)
[ Getsbi @ 17.09.2015. 12:46 ] @
Onda probaj sledeće. Imaš u temi Gotovi programi članova foruma link ka
18) Program za pogonsko knjigovodstvo
http://www.elitesecurity.org/t404201-0#2643384

Pogledaj u meniju Analiza podataka; Izveštaji za menadžment. To su sve periodični izveštaji. Temelje se na VBA kodu u kojima se formiraju SQL iskazi. Isti taj VBA kod na kraju pokreće adekvatan Report.
Možda će ti trebati adekvatna MSCAL.OCX kontrola, jer je to pisano davno u veziji Access 2003. Ako ne ide tako onda uđi u Pogonsko knjigovodstvo.mdb držeći šift taster. Pokreni recimo formu PR_Periodjedan. Ostalo će ti se samo kazati, šta se na čega oslanja.
[ antonio22 @ 17.09.2015. 13:11 ] @
Ok hvala puno na pomoci :) citat cu pa vidjet sta mi moze koristit ...
[ antonio22 @ 07.10.2015. 07:55 ] @
Pozdarv ekipa , skinuo sam sa foruma jednu malu bazu koju sam prilagođavao prema sebi odnosi se za evidenciju lijekova . sve radi kako treba međutim nikako ne mogu da promjenim unos novog artikla da ide na samonumeriranje , ulaz lijeka samonumeriranje , izlaz lijeka samonumeriranje meni stoji tekst ako neko može da mi promjeni to na brzinu zahvalan bi bio . To mi pravi problem kad idem pregled izlaza po datumima ....
Greska mi se pojavi nakon svega sto sam izbrisao odnose promjenuo u tabelama samonumeriranje , te ponovo odradio nove odnose među tabelama i kad sam išao sa unosom ili izlazom lijekova ova se greska pojavi ..

Ako tko zna o cemu se radi bio bih zahvalan

[Ovu poruku je menjao antonio22 dana 07.10.2015. u 09:41 GMT+1]
[ antonio22 @ 10.10.2015. 15:11 ] @
Šta je ovo nitko nema vremena il želje da pomogne rijesit ovaj slucaj ?
[ nenadmarkoni @ 10.10.2015. 19:37 ] @
Svojevremeno sam i ja obrađivao i prilagođavao @Zidar-evu bazu Magacin u temi http://www.elitesecurity.org/t...mana-prodaje-robe-lancu-butika
Tek sam kasnije shvatio šta su pokušavali da mi kažu iskusniji forumaši. I Vi ste trenutno u sličnoj poziciji... ne odustajte, ali morate mnogo više da se potrudite da dođete makar do osnovnog nivoa, jer ovo kako je ne valja. Zato niko ne odgovara
[ Getsbi @ 10.10.2015. 19:44 ] @
Ako si se već upustio u prilagođavanje tuđe aplikacije svojim potrebama, predpostavljam da imaš neku stariju verziju koja radi. Kod mene pokretanje aplikacije izaziva problem sa OLE serverom ili ActiveX Control.

Raskidanje veza i brisanje podataka bez reda uz očekivanje da će nakon ponovnog povezivanja sve da radi je kockanje. Uzmi kopiju koja radi, ne raskidaj veze, već uoči šta se prazni od podataka prvo (zavisne tabele), a potom nezavisne. Otvaraj redom tabele po prioritetu i tako ih prazni od podataka. Očigledno je da si nešto propustio. Tvoja slika Greska.jpg je indikativna jer je moguće da fali neki objekat.
[ nenadmarkoni @ 10.10.2015. 19:59 ] @
Ono što sam ja primjetio "na prvu loptu" nakon otvaranja baze sa Shift-om npr. Za unos novog artikla u kodu Vam stoji:
DoCmd.OpenForm stDocName,,,stLinkCriteria
Što bi u prevodu značilo Otvori formu koju sam imenovao u stDocName po kriterijumu koji sam imenovao u stLinkCriteria

Ono što ustvari treba da stoji je
DoCmd.OpenForm stDocName,,,,acFormAdd
Što u prevodu znači Otvori formu koju sam imenova u obliku za dodavanje novog zapisa

Ovo implicira da ne poznajete osnovne pojmove. Najprije mora malo edukacije kroz čitanje par knjiga ili makar ispratite Školu Access-a http://www.praktikum.rs/skola/Access/default.asp da bi shvatili osnovno. Niko se naučen nije rodio ali sve je stvar rada i truda
[ antonio22 @ 11.10.2015. 09:51 ] @
Pratim forum dosta često i čitam odgovore rješenja i sve vezano za neki problem . Tako sam naišao na bazu od Zidara te sam vidio da je ona najsličnija onomu što je meni potrebno ... Znaci meni je potrebno Ulaz , izlaz i stanje .. To sam sve dobio u toj bazi , al jedino sto mi nije odgovaralo je ručno unošenje rednog broja Ulaza , Izlaza i novog artikla . Zato sam ja postavio bazu i tražio rješenje .

Hvala Vam svima na dobronamjernim savjetima !
[ nenadmarkoni @ 11.10.2015. 10:33 ] @
Ako mislite da je samo to problem u prilogu imate rješenje sa programerskim autonumber-om.
[ antonio22 @ 11.10.2015. 11:10 ] @
Citat:
Getsbi:
Ako si se već upustio u prilagođavanje tuđe aplikacije svojim potrebama, predpostavljam da imaš neku stariju verziju koja radi. Kod mene pokretanje aplikacije izaziva problem sa OLE serverom ili ActiveX Control.

Raskidanje veza i brisanje podataka bez reda uz očekivanje da će nakon ponovnog povezivanja sve da radi je kockanje. Uzmi kopiju koja radi, ne raskidaj veze, već uoči šta se prazni od podataka prvo (zavisne tabele), a potom nezavisne. Otvaraj redom tabele po prioritetu i tako ih prazni od podataka. Očigledno je da si nešto propustio. Tvoja slika Greska.jpg je indikativna jer je moguće da fali neki objekat.



Imam staru verziju koju sam skinuo od kolege Zidara
[ Getsbi @ 11.10.2015. 17:29 ] @
Ispraznio sam ti tabele bez raskidanja veza. Sad pogledaj primer koji ti je dao kolega Nenad i napravi automatsku numeraciju.
[ nenadmarkoni @ 11.10.2015. 22:35 ] @
Za antonia i druge da uoče razliku između Autonumber-a i programerski dobijenog autonumbera. U prilogu su dvije baze. Pokušajte da dodate nekoliko slogova u obje tabele preko formi u obje baze. Zatim izbrišite neki slog pa probajte opet da dodate taj slog.
[ antonio22 @ 14.10.2015. 09:59 ] @
Ekipa trebala bi mi pomoc , napravio sam Upit za stanje lijekova ulaz i izlaz sve na izvjestaju, međutim želio bi da mi ne prikazuje one lijekove koji nisu ni usli ni izasli znaci one kojima je stanje 0 da ih nema na izvjestaju ... kako to napravit ??? U nastavku je kod :
Želim ako unesem 5 artikala samo da mi ti 5 artikala prikaze na ulazu tako i za izlaz ??



SELECT Artikl.ArtiklID, Artikl.NazivArtikla, Nz([UkupanUlaz],0) AS Ulaz, Nz([UkupanIzlaz],0) AS Izlaz, [Ulaz]-[Izlaz] AS Stanje, JedinicaMjere.NazivJediniceMjere
FROM JedinicaMjere INNER JOIN ((Artikl LEFT JOIN QArtikalUlaz ON Artikl.ArtiklID = QArtikalUlaz.ArtiklID) LEFT JOIN QArtikalIzlaz ON Artikl.ArtiklID = QArtikalIzlaz.ArtiklID) ON JedinicaMjere.JedinicaMjereID = Artikl.JedinicaMjereID;
[ Getsbi @ 14.10.2015. 10:11 ] @
Dodaj na kraju upita nešto ovako:
WHER ulaz-izlaz != 0 ili WHER ulaz-izlaz <> 0
[ antonio22 @ 15.10.2015. 06:56 ] @
Kad pokusam jedan ili drugi izraz izbaci mi gresku kao na slici .
[ nenadmarkoni @ 15.10.2015. 07:13 ] @
WHERE [Ulaz]-[Izlaz]=0
[ Getsbi @ 15.10.2015. 10:01 ] @
Nenade, ja sam razumeo da želi, da tamo gde je stanje 0, da mu se ne prikazuje na izveštaju. Odnosno da SQL upit koji je izvor izveštaja sadrži samo one koji imaju neko stanje.

Uostalom najbolje je da zakači fajl sa sve tabelom, upitom i izveštajem, kao i formom odakle izveštaj pokreće. Verovatno je greška u sintaksi, jer sam pisao napamet.
[ nenadmarkoni @ 15.10.2015. 10:11 ] @
@Getsbi, nisam ispravio Vas vec @antonio22. Vi ste mu dali smjernicu,ali on ocigledno nije shvatio poentu vec je doslovno prepisao Vasu slucajnu gresku. Napisao sam prema onome sto je naznaceno u zakacenoj slici.
[ antonio22 @ 15.10.2015. 10:12 ] @
Ja cu malo preko vikend jos gledat citat pa cu okaciti bazu da vidite sta i kako . naravno prijedloge i sugestije da pisete ako tko ima vremena
[ antonio22 @ 28.10.2015. 07:20 ] @
Ako tko ima vremena i zelje neka malo baci pogled na bazu i da svoju sugestiju ... Kasno odgovaram na teme jer sam poslovno pretrpan kad stignem pokusam sta odradit . jos jednom Hvala svima na Vaćemu vremenu
[ antonio22 @ 04.11.2015. 13:05 ] @
Kreirao sam izvjestaj za izlazni dokument , u formi Izlaz sam dodao dugme naredba8 i kad unesem sljedeći kod izbaci mi gresku , zna li netko o cemu se radi :

Private Sub Naredba8_Click()
On Error GoTo Err_Naredba8_Click

Dim stDocName As String

stDocName = "Izlaz"

stLinkCriteria = "[DokumentID]=" & "'" & Me![DokumentID] & "'"
DoCmd.OpenReport stDocName, acViewPreview, , stLinkCriteria
DoCmd.Close acForm, "Dokument"
Exit_Stampa_Click:
Exit Sub

Err_Naredba8_Click:
MsgBox Err.Description
Resume Exit_Stampa_Click
End Sub
[ Getsbi @ 05.11.2015. 05:30 ] @
Nedostaje dimenzionisanje promenljive stLinkCriteria.
Dim stLinkCriteria As String
Bez toga neće da iskompajlira VBA kôd.
[ antonio22 @ 09.11.2015. 06:53 ] @
Hvala puno sad mi radi :) to je to za sad
[ antonio22 @ 09.11.2015. 13:14 ] @
Evo sad imam novu po meni problematicnu situaciju .... Imam formu na kojoj se nalaze ulaz i izlaz (prikazano na slici u prilogu) , kada idem na izlaz unesem lijek i kolicinu , ako je kolicina koju sam unio od veca od stanja lijekova onda mi izbaci upozorenje . Međutim kako su mi na istoj formi nalazi ulaz i izlaz, kod koji sam napisao stoji i kod ulaza pa kad unosim kolicinu on izbaci upozorenje , kako da to razdvojim ..

Dim provera As Double
provjera = DLookup("STANJE", "qArtikalStanje", "ArtiklID=" & Me.ArtiklID)
If provera < Me.Kolicina Then
MsgBox "Nema dovoljno na stanju. Imas samo: " & provjera, vbCritical, "STOP"
Me.Kolicina.Undo
Cancel = True
Else
End If
[ Getsbi @ 09.11.2015. 21:10 ] @
Iz tog što si napisao i slika ne mogu sa sigurnošću da ti dam odgovor. Pogledaj moj primer Ulaz-Izlaz na istoj formi pa uradi nešto analogno tome.
[ antonio22 @ 10.11.2015. 07:08 ] @
Hm pokusavam al ne ide , poredim s ovim tvojim primjerom koji si mi poslao . Moji podatci idu iz Tabele DokumentStavka ( prikazano na slici ispod ) Forma koju koristim je takodjer prikazana na slici ispod .

Napravio sam komandu knjizi i umetnuo sljedeci kod :

Dim Baza As Database
Dim Sl_Tabela1 As Recordset

Set Baza = CurrentDb()
Set Sl_Tabela1 = Baza.OpenRecordset("DokumentStavka", dbOpenDynaset)

If Me.ArtiklID > 0 Then

If Me.ArtiklID > Me.Kolicina Then
MsgBox "Nema dovoljno kolicine. Proverite stanje", vbCritical, "Paznja !"
GoTo Kraj
ElseIf Me.ArtiklID <= Me.Kolicina Then
With Sl_Tabela1
.AddNew
![DokumentStavkaID] = Me![FrmIDroba]
![ArtiklID] = Me![ArtiklID]
![Ulaz] = 0
.Update
End With
MsgBox "Izlaz je uknjizen", vbInformation, "Obavestenje"
GoTo Kraj
End If


End If


If Me.ArtiklID > 0 Then
With Sl_Tabela1
.AddNew
![DokumentStavkaID] = Me![FrmIDroba]
![ArtiklID] = Me![ArtiklID]
![Izlaz] = 0
.Update
End With
MsgBox "Ulaz je uknjizen", vbInformation, "Obavestenje"
GoTo Kraj
End If

Kraj:
Set Baza = Nothing
End Sub
[ nenadmarkoni @ 10.11.2015. 08:06 ] @
Nema potrebe za tolikim kodiranjem, mogli ste samo da u onaj predjasni kod dodate If Me.VrstaDokumentaID=2(ako je 2 izlaz) i nastavite sa ElseIf i vasim kodom za provjeru stanja. Znaci da provjeri ako je dokument izlaz, a ako je ulaz da preskoci provjeru i nema potrebe za dugmetom knjizi.
Odnosno posto je taj podatak na nadredjenoj formi Me.Parent.VrstaDokumentaID=2....
[ antonio22 @ 11.11.2015. 12:28 ] @
Pokusao sam sa sljedecim kodom , al isto mi pokazuje i na ulazu i izlazu mi daje upozorenje da nema dovoljno lijekova :

Private Sub kolicina_BeforeUpdate(Cancel As Integer)
Dim provjera As Double
Me.Parent.VrstaDokumentaID = 2
provjera = DLookup("STANJE", "qArtikalStanje", "ArtiklID=" & Me.ArtiklID)
If provjera < Me.Kolicina Then
MsgBox "Nema dovoljno na stanju. Imas samo: " & provjera, vbCritical, "STOP"
Me.Kolicina.Undo
Cancel = True

Else
End If
End Sub