Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

provjera Dali postoji uneseni redni broj.

[es] :: Access :: provjera Dali postoji uneseni redni broj.

[ Pregleda: 3416 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.t-com.hr.



Profil

icon provjera Dali postoji uneseni redni broj.15.10.2004. u 17:29 - pre 236 meseci
Kod dodjeljivanja rednog broja koristim ovu proceduru(code) –koju sam našao na ovom forumu.
Zidar je preporučuje i jako sam zadovoljan s njome.Riješila mi je puno problema.

Function NextClan() As Long
Dim lngBroj As Long
lngBroj = 1 + Nz(DMax("Rednog_broja", "karton"), 0)
NextClan = lngBroj
End Function

Međutim imam problema kad napravim "Edit"-pregled unesene stranke i kad želim promijeniti redni broj-iz nekog rzloga....!
Dali bi mi tko mogao pomoć s nekim savjetom ili kodom kako da nakon unosa rednog broja procedura provjeri dali taj novi broj već postoji u bazi(dali imamao klijenta pod tim rednim brojem).I da ostavi fokus na tom polju(Rednog_broja).
Help please!


romano
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: provjera Dali postoji uneseni redni broj.18.10.2004. u 14:08 - pre 236 meseci
Izgleda mi da je tvoj problem malo siri nego upotreba ove ili one funkcije za generisanje clanskih brojeva. Funkcija koju upotrebljavas za generisanje clanskih brojeva radi isto sto i Autonumber, samo malo sporije. Prema tome, ako ce ti svaki novi clanski broj biti za jedan veci od postojeceg maksimalnog, upotrebi brate Autonumber, a ne ovu funkciju.

Pretpostavljam da je clanski broj koji generises ujedno i Primary key za tabelu Clanovi. pitanje je sada - zasto ti zelis da menjas PK za postojeci rekord? Pa jos upotrebis neki koji vec postoji. Nesto je tu naopako postavljeno u samoj strukturi ili baze ili aplikacije. Pod bazom podrazumevam skup tabela koje koristis, a pod aplikacijom sve ostalo - forme, kverije, reporte. Nadam se da je baza odvojena od aplikacije (dva posebna fajla) i tabele iz baze linkovane na aplikaciju. Zatim, ako imas vise korisnika, nadam se da oni ne otvaraju jednu istu kopiju aplikacije (aplikacije negde na networku a korisnci imaju shortcuts na aplikaciju). Ako se ja nesto ovde pogresno nadam, imaces problema sa savim i svacim. Iz tvojih dosadasnjih pitanja, izgleda da semas previse iskustva sa Accessom, ali imas ambicije da napravis mnogo jaku aplikaciju. sve ono o cemu si nas pitao u poslednje vreme - not in list event za kombo box, utvrdjivanje psotojanja PK u tabei i slicno, ukazuje da je nesto veoma pogresno u nacinu unosa podataka. cim je unos toliko komplikovan, nesto je pogresno i bolje je ispraviti sada, kasnije ce biti suvise kasno.

Lepo ti nama opisi STA u stavri tvoja baza radi i KAO si zamislio da se to radi. Onda cemo mozi da ti pravo pomognemo. Pazi, STA i KAKO nisu iste stvari.

:-)
 
Odgovor na temu

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.htnet.hr.



Profil

icon Re: provjera Dali postoji uneseni redni broj.18.10.2004. u 17:16 - pre 236 meseci
E da!
Nemam puno iskustva s accessom.Sve sam pomalo iz knjige i na primjerima koje sam skinuo s net.A zadnje vrijeme najviše putem ovog foruma-koji je za mene pun pogodak jer u knjigama nemogu naći konkretna riješanja..Što da kažem u petom mjesecu nisam znao pozvat iz forme niti određeni rekord .
Fali mi terorijskog dijela to priznajem.Tako da mi je i informatička terminologija loša.

1.Radio sam program za obračun kamata.Program funkcionira.Ali sad bi ga još ja malo dotjerao.Inače program nije za komercijalu već za mene osobno(radim kako knjigovođa).
Napravio sdam formu za unos elemenata putnog naloga.I to redom:
U tabeli StranaA
Red_Broj,mjesto,Sifra_radnika,Datum_putovanja,Mjesato_putovanja,Predujam,Izvjesce , ,....
U tabeli StranaB
Sat_odlaska,Sat_dolaska,Datum_povratka,Dnevnica,Sifra_relacije,Cijena_pokm,,Ostali_troškovi .....
U bazi mi se još nalazi (dvije tabele)sifrarnik za relacije i sifrarnik za radnike(sifrarnik_radnici)

Prvi problem combobox:Napravio sam combobox "cboime" za unos šifre radnika("sifra_radnika").A pored toga commandbutton za unos ako nepostoji radnik ili ako hoću dodat novog radnika!
Recimo kad stavim broj koji se ne nalazi u tabeli(bazi)radnici javlja mi da not in list izbacuje tabelicu s tim upozorenjem.
Moja želja je bila da ako ja unesem broj recimo 99 u combobox "cboime"(krećem iz fome "putniA") i ako ga nema u kombo boxu da aplikacija ponudi informaciju da traženog broja(sifre radnika nema) i da pita «zelite li novi unos?».To sam radio s ovom procedurom not in list.

Private Sub cboime_NotInList(NewData As String, Response As Integer)
On Error Resume Next
Dim NewId As Integer, MsgTitle As String, MsgDialog As Integer
......
If NewId = IDNO Then
Response = acDataErrContinue
Else
DoCmd.OpenForm " radnici ", acNormal, , , acFormAdd, acDialog
Response = acDataErrAdded
End If

Nakon odabira YES otvara se forma radnici i dozvoljava se novi unos.
Nakon unosa i potvrde unosa(potvrdi) zovem code:

Public Function fpotvrdi()
Dim CurrentForm As Form
Set CurrentForm = Screen.ActiveForm
DoCmd.Close acForm, CurrentForm.Name, acSaveYes
[Forms]![putniA].Refresh
End Function


Kad se vrati na početnu formu PutniA-zelio bi da mi automatski upise redni broj zadnjeg unesenog(za kojeg sam tražio novi unos) i krene dalje.To jest iz tog comboxa (posto je to sifra).U unbound polje povlači ime i prezime djelatnika putem =[cboime].column(1) ->cboime ima Rowsource iz tabele Sifrarnik_radnici.
Ja sam u ovoj drugoj proceduri uvrstio Forms!putniA!cboime = Me!rb dobio sam zadnji redni broj unosa radnika ali kad kliknem na enter javlja mi opet da taj redni broj nije na listi i otvara mi listu a ja ga tada odaberem iz liste i pretisnem enter i on ga prijavi dalje normalno.
Kako da premostim to da odmah nakon unosa pritiskom na enter program krene dalje!
Nadam se da sam bio malo precizniji.
Volio bih znat i kako da prevedem ovu orginal poruku s engleskog i da se prikazuje na našem.
Ako te ne mrzi mogu ti poslat taj dio aplikacije pa da malo probaš pomoć.

Isto želim napravit i kod unosa sifre_relacije jer ni svih relacija nema u list.
Znači taj bi combobox ujedno služio i kao filter.

2.Ovo s rednim brojem mi treba iz tog razloga u tabeli radnici postoje polja ID(primary key),Red_broj,Ime,Prezime,God_rodjenja ....
Mislio sam napravit pregled (edit )tog sifrarnika,Da mogu izbacit pojedninog radnika i na njegovo mjesto upisat novog (ili iz bilo kojeg drugog razloga promijenit redni broj).
Prvo dam koristio onu opciju da sam otvorio tablicu parametri i iz nje izvlačio sljedeći redni broj i uvijek ga uvećavao za jedan(to mi je tražilo uvijek puno koda i radilo mi zapekljancije iako su me savijetovali da je taj način dobar za rad više korisnika.:
Code za brojač:
Dim db3 As DAO.Database, tb3 As DAO.Recordset, br As Integer
Set db3 = CurrentDb
Set tb3 = db3.OpenRecordset("parametri")
tb3.MoveFirst
br = tb3!rbrelacije
tb3.Edit
tb3!rbrelacije = br + 1
tb3.Update
tb3.Close
db3.Close

Nakon toga sam uzeo ovaj tvoj(Od zidara )code i puno mi je olakšao ali bih sad volio još napravit da se može editirat redni broj a da ukoliko već postoji da ga se neda zamijenit .Zanči da ako after_update nije zadovoljen da ga fokusira nazad na to polje(Red_broj).Dali je to moguće i koji je najlakši način.Dali moram s set tb=db.openrecordset(" radnici") ili ima druga caka!Ovaj način mi se čini nezgrapan.I nikad me ne fokusira nazad na to polje unosa nego prvo sljedeće.
Zašto i kako?


3. Ono s pretraživanjem list boxa i pozicioniranje na traženi tecord sam riješio i nečini mi se loše(za manju bazu).Ali se baza jako brzo povećava ,tako da je tu malo nezahvalno.A u nekim slučajevima je i sporo!

4.Ko što je zidar rekorder u davanju odgovora na ovom forumu tako sam i ja rekorder u postavljanju pitanja na ovom forumu!!!!:- )

Hvala!
Romano

romano
 
Odgovor na temu

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.htnet.hr.



Profil

icon Re: provjera Dali postoji uneseni redni broj.18.10.2004. u 17:21 - pre 236 meseci
Pardon !Nije obračun kamata nego obračun putnih naloga!
romano
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: provjera Dali postoji uneseni redni broj.18.10.2004. u 21:09 - pre 236 meseci
Tako je vec bolje :-)

Ti imas dakle u bazi podataka tabele Sifranik_Radnici, Sifranik_Relacije, StranaA, StranaB. Pretpostavlja da su stranaA i stranaB u relaciji 1:1, to jest za svaki rekord u StranaA potoji tacno jedan rekord u StranaB (ne vise, ne manje). Dalje se moze reci da svaki radnik iz tabele Sifranik_Radnici moze da se pojavi u tabeli StranaA (i B) vise puta. Isto tako, svaki rekord is tabele Sifranik_Relacije moze da se pojavi u tabeli StranaA (B) vise puta. Tvoja tabela StranaA na neki nacin povezuje Radnike i Relacije - tu se vid gde (sifranik_relacije) je koji radnik (sifranik_radnici) i kada putovao. Nadam se da psotoje relacije (enforced data integritu) iz sifranika prema tabelama StranaA i StranaB. I naravno, sto nije u sifraniku ne moze se uneti u StranaA/B tabele. (Ovo A i B meni lici na dva dela iste tabele, ali neka ostane tako, ne smeta)

Dalje vidimo da ti unosis podatke u tabelu StranaA i StranaB, preko neke forme i radnike unosis tako sto ih biras iz combo boksa. Sad kad uneses sifru radnika koji ne postoji u tabeli Sifranik_Radnici, combo box ti kaze "Not in the list"="Nema ga u listi". Dovde je sve dobro. E, kad ne postoji radnik ili relacija, hteo bi da na trenutak iskocis u formu Radnici ili formuRelaciej, uneses sto treba, i vratis se gde si stao, i program tacno zna sta si ti to uneo. E, tu se ne slazemo. To je moguce uraditi, ali ima puno posla i prljevih trikova. Zasto jednostavno ne odlozis taj nalog na stranu, kad ne postoji sifra radnika, i nastavis sa nalozima koji su OK? Isto za relacije. Onda se lepo vratis pa uneses radnike koji nedostaju, relacije isto tako. Pa ponovo otvoris formu za unos naloga i odradis ove koji nisu bii u listi a sada jesu? Posao je otprilike isti, radnike moras uneti pa moras, relaciej isto tako. Samo je ovako cistije, unos radnika je unos radnika, unos putnih naloga je unos putnih naloga.

Ono sto ne smes absolutno da radis jeste
Citat:
Mislio sam napravit pregled (edit )tog sifrarnika,Da mogu izbacit pojedninog radnika i na njegovo mjesto upisat novog (ili iz bilo kojeg drugog razloga promijenit redni broj).
Absolutno se NE SME izbaciti jedan radnik i na njegovo mesto upisati drugi. recimo, radnik Pera ima sifru 150 i posle nekog vremena ode iz firme. Za to vreme ima pet naloga za njega. Onda dodelis nekome drugome taj broj 150, recimo novi radnik se zove Marko. marko je dobio 5 perinih naloga istog momenta kad si mu dodelio broj koji je pripadao Peri. Ako opet Pera ostane u firmi, i ima broj 150, i ima neke naloge, a ti odlucis da mu promenis broj u 270. Izgubio si vezu izmedju Pere i njegovih naloga dok je bio broj 150. U oba slucaja, tvoji podaci postaju bezvredni, jer se ne zna sta je tacno a sta netacno, sta pripada kome, a sta je nekad pripadalo nekom drugom.

Ja sam mislio da se neki omladinac uci i hoce da proba egzoticne programerske trikove, inace bih se pobunio mnogo ranije. Tvoj cilj je da imas ciste podatke, stoga sto jednostavnije, to bolje.

Ako ti odredjujes sifre radnika, predji na Autonumber, i indeksiraj to polje kao UNIQUE. Imas negde na forumu kako se Autonumber zapocinje od zadatog broja i bice sve u redu. Popunjavaj tabele po staresinstvu - roditelji prvo pa onda deca, i sve ce biti u redu. Kombo je dobar da te upozori da nemas tog broja u sifraniku i to je sve. Ako u tabeli StranaA/B imas Autonumber, neces imati duplikate i gotovo.

Srecno

:-)
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: provjera Dali postoji uneseni redni broj.19.10.2004. u 14:10 - pre 236 meseci
OK, dosta sam se pravio pametan, ajde sad malo da pomognemo ;-)

Tvoj kod kaze:
Code:

Public Function fpotvrdi()
Dim CurrentForm As Form
Set CurrentForm = Screen.ActiveForm
DoCmd.Close acForm, CurrentForm.Name, acSaveYes
[Forms]![putniA].Refresh
End Function


To moze i ovako:
Code:

Public Function fpotvrdi()
'Dim CurrentForm As Form
Dim frmPutni As Form

' ovo ti ne treba, Me.name u DoCmd zavrsava posao
'Set CurrentForm = Screen.ActiveForm 

'Osvezi frmu putniA:
set frmPutni=Forms![putniA]
With frmPutni
   .Refresh
   !cboime.requery   'ovo osvezi SELECT za cboime
   !cboime=Me!sifra_radnika   'ovo mu postavi vrednost
'me!sifra_radnika je ime kontrole na tvojoj formi SifraRadnika
End With

'Ovo nisam siguran da li ce da radi, ali probaj:
frmPutni!cboime.setfocus
'Ako ne radi, prebaci ovu frmPutni!cboime.setfocus liniju koda u OnActivate za formu putniA

'i na kraju zatvori svoju formu SifraRadnika
DoCmd.Close acForm, Me.Name, acSaveYes

End Function


 
Odgovor na temu

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.htnet.hr.



Profil

icon Re: provjera Dali postoji uneseni redni broj.19.10.2004. u 19:40 - pre 236 meseci
Taman sam napisao odgovor kad ono novo riješenje.Sad ću to proučit pa se javim kad to obavim.Hvala ti puno!
Idem se ulovit posla!

romano
 
Odgovor na temu

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.htnet.hr.



Profil

icon Re: provjera Dali postoji uneseni redni broj.19.10.2004. u 21:15 - pre 236 meseci
Uspio sam s ovim zadnjim codom napravit "not in list" ,pa to radi upravo ono što sam htio!
Presretan sam!Kako je ljepo kad ti se neka ideja realizira.
Malo sam ga još prilagodio vlastitoj bazi i radi!!!!!!!

Zidar Hvala na iscrpnim odgovorima i nesebičnij pomoći.Stvarno si se potrudio-i pomogao mi da otklonim neke čudne situacije!.Prihvaćam da editiranje rednog broja nije najbolje riješenje.

Baza je 1:1.Podijelio sam je zbog toga što mi olakšava obradu podataka i smanjuje duplanje podataka u tablicama.Iako je primarni ključ U tabeli stranaA i kasnije ga kod unosa prosljeđujem u tabelu stranab-gdje nije primarni ključ.(otvorio sam jedno polje gdje ga upisujem).To me jedino malo još muči kod ovog programa.
Jer volio bi napravit da ako se ID bilo kojim slučajem obriše da to OBAVEZNO vuče i brisanje tog ID u drugoj tabeli.Ja sam to unutar coda sredio ali me interesira dalibazu mogu drugačioje postavit tako da nemam komplikaciju s kodom!
A i font mi ne odgovara-ne znam kako da prijevim č,ć,š,ž javljaju mi se hijeroglifi.


CITAT:
Ako ti odredjujes sifre radnika, predji na Autonumber, i indeksiraj to polje kao UNIQUE. Imas negde na forumu kako se Autonumber zapocinje od zadatog broja i bice sve u redu. Popunjavaj tabele po staresinstvu - roditelji prvo pa onda deca, i sve ce biti u redu. Kombo je dobar da te upozori da nemas tog broja u sifraniku i to je sve. Ako u tabeli StranaA/B imas Autonumber, neces imati duplikate i gotovo.


Nije mi jasno jedino ovaj UNIQUE(to do sad nisam koristio) I kako da popunavam tabele po starješinstvu roditelji pa deca(što su roditelji a što su dijeca).Tu malo kiksam-valjda teoretsko znanje.
Imaš li kakav primjer za to!

I na kraju baš sam sretan s not in list!!!!
Hvala!!


romano
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: provjera Dali postoji uneseni redni broj.21.10.2004. u 14:22 - pre 236 meseci
Izvinjavam se za pauzu. Sta ces, ponekad i ja moram nesto da radim na poslu. ;-)

Ovako stvari stoje. Access je relacion baza podataka. to znaci da su podaci smesteni u tabele koje su medjusobno povezane (u vezi, u relaciji) na nacin koji garantuje integritet podataka i laku manipulaciju. integritet podataka znaci u stvari kvalitet, a svodi se na tri stvari:
1) nema duplikata, svaki rekord je jedinstveno (UNIQUE) odredjen;
2) ne moze da postoji dete rekord bez roditelja ;
3) roditelj rekord ne moze da se obrise ili promeni njegova identifikacija ako postoji barem jedno dete rekord.

Sta su "deca" i "roditelji"? U tvom slucaju tabele Sifranik_Radnici i Sifranik_Relacije su tebele roditelji. Tabele NalogA i NalogB su deca. Zasto? Bilo koji radnik moze da ima vise putnih naloga, tokom vremena. Bilo koji ranik moze da putuje na bilo kojoj relaciji, na vise njih, kroz vreme. Na primer, radnik Br 17 u januaru putovao u Zagreb. Onda u februaru putovao u Split. Onda u maju putovao u Beograd (godina je 1975, i zemlja je jos uvek jedna ;-). Eto tri rekorda u tabeli NalogA i NalogB.

Tvoje tabele Sifranik_Radnici i Sifranik_Relacije treba da imaju po jedno polje ili grupu polja, koje jedinstveno odredjuju svaki rekord. Za radnike se obicno koristi maticni broj, ili neki broj koji firma odredjuje. U nedostatku istog, moze se kompjuterom generisati broj, kao sto ti radis onom funkcijom. Za relacije (mesta gde se putuje), obicno se koristi neki broj, a naziv grada i ostalo je opis. Naravno, nema smisla da uneses relaciju "Zagreb" pod brojem 3 i pod brojem 7. Isto tako, radnik Pera Peric ne treba da bude unesen u Sifranik_Radnici vise od jednom, pod samo jednim brojem. To polje (ili grupa polja) koje jedinstveno odredjuje rekord, zove se Primery Key (PK) i svaka tabela mora da ga ima. U protivnom, baza nije relaciona, a to znaci integritet podataka je ugrozen. Posto jedan radnik moze da ima vise naloga, kazemo da je radnik u odnosu 1 prema vise (1:m) sa nalogom. Isto tako rekordi iz tablele Sifranik_Relacije su u odnosu 1:m sa tabelom nalozi. Jedna relacija se moze naci u tabeli Naloga vise puta, uparena sa razlicitim radnicima. Tabele koje su na strani 1 se zovu RODITELJI a tabele koje su na strani m (many, vise) su DECA.

Tabela NAlogA(B) je interesantna. Ocigledan jedinstveni (unique) identifikator je BrojNaloga. Ali su neophodna jos dva polja Sifra_radnika i Sifra_relacije. To nam kazuje koji radnik je putovao i gde je putovao. Tek onda dodju ostali podaci (datum pocetka i kraja, kilometri, troskovi itd.). Ostali podaci mogu i ne moraju da budu svi prisutni na svakom nalogu, ali ova tri MORAJU. PK je dakle BrojNAloga, a obavezna polja (Required=YEs u definiciji polja) su Sifra_Radnika i Sifra_Relacije. Naravno, zabranjeno je uneti u tabelu NalogA(B) nepostojecu sifru radnika ili nepostojecu relaciju. Ne moze se u nalogu pojaviti relacija Smederevo, ako u tabeli Sifranik_Relacija ne postoji rekord za Smederevo. To se postize tako sto se u Access prozoru Relationships postavi "relacija izmedju tabela". Trebaju ti dve relacije: sa Sifranik_Radnik na NalogA i sa Sifranik_Relacija na NalogA. Ono sto je PK u tabeli roditelj, vezuje se na istoimeno polje u tabeli dete. Polja ne moraju da imaju isto ime, iako je veoma pozeljno, ali moraju da budu istog tipa podataka. Ako je roditelj PK tipa AutoNumber, u dete tabeli treba da je Long Integer. Kad postavljas relacije, OBAVEZNO setuj "enforce data integrity". Ako ti Access ne dozvoli da uradis bilo sta od navedenih operacija, znaci da tvoji podaci nisu cisti (data integrity = bad). Onda mozaju da se podaci dovedu u dobro stanje. Moze se desiti da imas duplikate u bilo kojoj od tabela u polju koje je PK. Moze se desiti da imas rekorde u dete tabeli (NalogA) u koje je upisana vrednost roditeljskog PK, koja ne postoji u tabeli roditelj. To sve mora da se ispravi, obicno jedan po jedan rekord. Kad si posatvio relacije kako treba, tesko da u programiranju mozes da ugrozis kvalitet podataka. Tvoje podatke stite relacije koje si potavio, a Not In List i kombo box samo pomazu kod unosa.

Sto se tice tabela NalogA i NalogB, spoji ih u jednu tabelu i nemas potrebe da ih kodom dovodis u sinhronizaciju. Ako podaci na strani A i na starni B ne treba da se procesiraju ili unose u isto vreme, mozes da imas dve forme, po jednu za svaku grupu polja (A i B), ali sa jednim jedinstvanim brojem naloga.

Ako budem imao vremena otvoricu topik o tome kako treba da se sagradi profesionalna database aplikacija (kje su forme potrebne, kako se to resava itd).

:-)
 
Odgovor na temu

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.htnet.hr.



Profil

icon Re: provjera Dali postoji uneseni redni broj.21.10.2004. u 21:02 - pre 236 meseci
Sutra ću malo konciznije proučit ovaj tvoj odgovor na prvi pogled ima interesantnih stvari.
Ova ideja da ćeš otvorit topik»Kako treba sagraditi profesionalnu database aplikaciju»!mi se sviđa jer ljepo bi bilo malo napredovat.

Danas sam potrošio brdo vremena na Me.OpenArgs
Private Sub form_load()
Me!rb= Me.OpenArgs
End Sub
Problem je naizgled banalan ali me tu muči jedna stvar.Kad otvorim neku nmovu formu recimo elementi koja vuče podatke iz tblelementi i iz glavne forme"unosulaza" je pozivam s:
Public Function felementi()
DoCmd.OpenForm "elementi", acNormal, , , acAdd, acWindowNormal, Forms![unosulaza]!ID
End Function

Ne dodjeljuje mi - Me!rb= Me.OpenArgs,stavio sam i msgbox da provjerim što radi ali ništa se nije pojavilo.

Iz jednog programa sam izvukao neku formu i dodijelio joj istu proceduru i gle čuda za tu formu radi.Nikako nemogu dokučit što sam na toj formi koju sam dovukao (kopirao )iz drugog programa napravio a da nema ova nova koju sam otvorio forms!elementi(što to ima ova koja radi za razliku od ove koju sam stvorio u tekućem programu)Pokušao sam otvorit više formi ali uvijek isto.
Reference su postavljene isto kao i u ovom drugom programu iz kojeg sam izvukao formu na kojoj radi .Open Args.

Gdje griješim i kako da to otklonim????Sigurno je neka sitnica a nemogu je dokučit.
Uvijek neke sitnice moraju zagorčat život!!

romano
 
Odgovor na temu

rribaric
romano ribarić
rijeka

Član broj: 31410
Poruke: 165
*.net.htnet.hr.



Profil

icon Re: provjera Dali postoji uneseni redni broj.25.10.2004. u 18:12 - pre 236 meseci


Zidaru (dobar nadimak)proučio sam tvoje zadnje objašnjenje detaljno gotovo slovo po slovo.Ovo objašnjenj za strukturu baze je fenomenalno.Napravio sam potpuno novu osnovu.
Tabele StranaA i stranaB sam spojio a podatke unosim putem dvije forme.Na prvoj formi (stranaA)su referentni podaci; Sifra_radnika,Datum_putovanja,Mjesato_putovanja, (oni za koje nije potrebna obrada ) a na drugoj formi unosim podatke koje obrađujem; Sat_odlaska,Sat_dolaska,Datum_povratka,Dnevnica,Sifra_relacije,Cijena_pokm,,Ostali_troškovi .....
Sifra_radnika i Sifra_relacije su polja koja su povezana s tablicama ;sifrarnik_relacije i sifrarnik_radnici.
Te dvije tablice sam povezao s vezom 1:mnogo.I odredio sam im "enforce data integrity".Iako sam setiral I one dvije opcije za Delete I Update.To mi malo nije jasno-ali dobro već ću radom doć do riješenja.
Nakon takvog ustrojstva baze puno sam smanjio i koda (kod brisanja i …..).A s druge strane dobio sam veću sigurnost nad bazom.To je ono što sam tražio.Sad mi je daleko jasnije što I kako funkcionira access.
Još kad bi otvorio topik o tome kako treba da se sagradi profesionalna database aplikacija (koje su forme potrebne, kako se to resava itd). Bilo bi super!
Hvala ti puno na ovo odgovoru i dugujem ti pijaču.


romano
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: provjera Dali postoji uneseni redni broj.25.10.2004. u 18:56 - pre 236 meseci
Drago mi je da je sad bolje :-) Samo jos jedna sitnica, (mojom krivicom), zaboravio sam da spomenem "one dve opcije Cascade Update i cascade Delete". One NE SMEJU da se cekiraju. Ako su cekirane, mozes da obrises roditelj rekord i svi njegovi deca rekordi bice obrisani. obrises radnika i svi jjegovi nalozi odlaze zauvek. Jos gore, obrises relaciju iz tables Sifranik_Relacije i odose svi nalozi za tu relaciju bez traga. Te opcije se drze off (nisu cekirane) uvek, samo se privremeno mogu postaviti na cekirano (On) stanje, kad bas hoces da obrises ili radis neki update. na primer, godinama unosis podatke za Peru pod brojem 127 i ond asaznas da je to u stvari 173. Onda i samo onda postavis Cascade Update i pormenis podatak samo u tabeli radnici. promena ce biti automatski prenesena u sev child tabele. Onda brze bolje vratis Cacade Update na Off.

:-)
 
Odgovor na temu

[es] :: Access :: provjera Dali postoji uneseni redni broj.

[ Pregleda: 3416 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.