|
[ vmatoic @ 02.06.2005. 13:55 ] @
| Pozdrav svima! :)
Prvo sve pohvale za forum!
Nakon iscrpnog pretrazivanja foruma ovih posljednjih dana nasao sam mnogo korisnih stvari i hvala svim ljudima koji se angaziraju.
A sad problem na koji sam naisao. Radi se o kartici artikala i izracunu salda. Na jednom od foruma sam naisao na sljedeci primjer koji rjesava problem, a glasi ovako:
RunningSum:(Select Sum(Ulaz)FROM[stavke]as Temp where [temp].[rbr]<=[stavke].[rbr])
I to odlicno radi, no problem nastaje kad taj kveri hocu ubaci kao podkveri koji se veze za tocno odredeni artikal.
U prilogu je dat primjer problema i napravljen je primjer forme kako bi to trebalo izgledati, gdje sam rucno upisao saldo, koji bi on trebao racunati. I dat je primjer1 kverija u kojem sve funkcionira i primjer2 kverija u kojem je problem.
Mozda sam sad zakomplicirao stvar, no sve ce biti jasno ako pogledati primjer.
Molim pomoc! |
[ izonic @ 02.06.2005. 22:35 ] @
Evo maozda ovako
Pozdrav
[ vmatoic @ 06.06.2005. 10:29 ] @
Hvala na pokusaju, no to nije ono sto sam imao u vidu. Treba kad upisem artikl npr. olovka i pritisnem enter da me baci u podformu koja pocinje od rednog broja 1 i da mi saldira u svakom redu ulaz i izlaz.
[ tacka @ 06.06.2005. 15:31 ] @
ubacis combobox koji ce ti pronaci na formi taj artikl i prikazati
[ Zidar @ 06.06.2005. 16:47 ] @
Tvoja tabela Stavke ima jedno polje viska - Stanje.
Savet koji si nasao na forumu izracunava stanje za svaki rekord u tabeli Stavke. Prema tome, ne treba da cuvas to stanje kao podatak u tabeli - ono sto se moze izracunati niakda se ne cuva u tabelama. Osnovno pravilo relacionih baza podataka :-)
Ako je tvoja subforma read-only (a verovatno nije i ne zelis da bude), onda radis kako si video na forumu - racunas stanje kao running sum i samo ga prikazes. To radi lepo za reporte i read only forme.
Ako bas hoces da ti se pri svakom unosu izracuna stanje i prkaze se bas onako kako si pokazao u formi, treba ti unbound polje Stanje , i unutra Dsum funkcija sa where uslovom kao u kveriju koji si video na forumu. Medjutim, to je veoma sporo da se izvrsi i veoma neugodno da se napise ako nemas iskustva. Predlazem ti da izbacis polje Stanje iz subforme putpuno. Sta te briga da vidis koliko je stanje bilo za ranije rekorde? Kad otvaras subformu, ti zelis obicno da uneses neke podatke. Ako zelis da vidis kretanje stanja istorijski, onda napravi izvestaj "Kartica Materijala" baziran na running sum kveriju. Moze cak i bez running sum kverija, rado cu ti pokazati ako te interesuje.
Znaci,
1) Obavezno izbaci polje Stanje iz tabele Stavke, bez obzira koje ces resenja da primenis
2) Preporucujem da izbacis polje Stanje i iz subforme. koristi subformu samo za unos i za brzi pregled poslednjih nekoliko ulaza/izlaza
3) Napravi report "Kartica Materijala", pa ga otvaraj sa fome kad zelis da vidis istoriju za zeljeni materijal.
4) Vidi temu http://www.elitesecurity.org/tema/105090, tamo je dosta pisano o slicnom problemu. Ako hoces mozemo pokazati na forumu kako se radi report kartica maetrijala bez upotreba running sum kverija (racunanje obavimo na samom reportu)
[ vmatoic @ 08.06.2005. 13:51 ] @
Poucen znanjem iz foruma, narocito one teme koju mi je Zidar preporucio (tamo ima korisnih stvari), moram konstatirati da to radi! :)
Zahvaljujem!
A kako da mi sad taj report kada ga otvorim ispisiva svaki artikal na svoju stranicu, a ne sve redom?
I jos jedan problem u formi! Ja bi zelio da meni kolonu potrazuje sam ispunjava, zbog toga sto je ona rezultat [izlaz]*[prosjecna cijena]. A to ne znam uciniti. Po mogucnosti da mi nudi rezultat, a ja da ga mogu i izmjeniti ako mi treba?
I kako taj TAB ORDER radi? Upisem mu da poslje "ulaz" hocu da ide na "duguje", no to bas i ne radi. (Mada bi sigurnosti radi trebao postaviti da kad upise neki ulaz da mogu samo kolonu duguje popunjavati. Kak to?)
[ Zidar @ 08.06.2005. 14:17 ] @
Evo po tezini, od najlakseg ka najtezem:
Citat: A kako da mi sad taj report kada ga otvorim ispisiva svaki artikal na svoju stranicu, a ne sve redom?
Vidi u Helpu ili knjigama kako radi property "Force New Page" pa nesto od toga primeni na odgovarajucu sekciju u reportu.
Citat: I kako taj TAB ORDER radi? Upisem mu da poslje "ulaz" hocu da ide na "duguje", no to bas i ne radi. (Mada bi sigurnosti radi trebao postaviti da kad upise neki ulaz da mogu samo kolonu duguje popunjavati. Kak to?)
Ponovo u Help i vidi sta Tab Order radi. Tab Order property sluzi da se podesi redosled automatskog prebacivanja kursora iz kontrole u kontrolu. Ako hoces da u nekim situacijama promenis Tab Order, moras da programiras evente AfterUpdate za kontrole iz kojih polazis, i da upotrebis Control.SetFocus metod.
Citat:
I jos jedan problem u formi! Ja bi zelio da meni kolonu potrazuje sam ispunjava, zbog toga sto je ona rezultat [izlaz]*[prosjecna cijena]. A to ne znam uciniti. Po mogucnosti da mi nudi rezultat, a ja da ga mogu i izmjeniti ako mi treba?
Opet moras da programiras. Kad se promeni vrednost u bilo kojom od tekst boxova [izla] i [prosjecna cijena] treba da izdas komandu
me!Potrazuje=isnull(me!i[zlaz],0) * isnull(me![prosecna cijena],0)
Ovu komandu stavljas na AfterUpdate evente za oba polja.
Ako te ovo sve zbunjuje, onda moras prvo dobro da proucis tutorials, knjige ili help. AKo zelis da radis ovakve stvari u accessu, to se zove Application Dvelopment i ne moze se nauciti postavljanjem pitanja na forumu. Uci se iz knjiga, na kursevima i slicno, a n aforumu samo malo pomognemo kad zapne ili kad se javi neuobicajen slucaj.
[ vmatoic @ 13.06.2005. 18:56 ] @
Jos jednom zahvaljujem na savjetima.
Pronasao sam sve bitne podatke u helpu, iskoristio date savjete i ukomponirao u svoju aplikaciju i rjesio sam sva 3 postavljena problema. I sve radi odlicno.
Jos tu ima nekih sitnica kojih treba doraditi, pa cu se javiti ponovno kad sve to pozavrsim (ovih dana sam trenutno zauzet drugim obvezama). No kada bude aplikacija (vođenje sitnog inventara po radnim jedinicama u poduzeću) gotova stavit cu je na forum za daljnu doradu i na korištenje svima zainteresiranima. (ako je to u redu? :))
[ Zidar @ 13.06.2005. 18:59 ] @
Svaka cast
Ako radi kod tebe, radice i kod nekog drugog. Da bismo stavili na forum, molim da bude potpuno 'open source'. Nista passwordi i security, nista uklanjanja Accessovih menija i slicno. I mora da bude ZIP (ne RAR) i da je ZIP fajl manji od 200 K.
I ide pravo u TOP teme.
:-)
[ vmatoic @ 01.07.2005. 08:21 ] @
Pozdrav svima!
Evo i mene konačno. Moram reći da sam više - manje zadovoljan sa prepravljenom verzijom, koja je zakačena.
Više - manje iz razloga što ima još nedostataka (2)!
1. - želio bih da mi onemogući unos istog artikla unutar jedne radne jedinice.
Kad odem u tabelu i indeksiram to polje ([BR_KARTICE].[NAZIV ARTIKLA]) i stavim "No duplicates" onda mi opet onemogući i unos u bilo kojoj drugoj radnoj jedinici. To ne znam povezati. Ili sam krivo postavio cijelu strukturu (pod kraj sam počeo uviđati da je struktura presudna)
2. problem, no ne presudni - želio bio da ubacim jedan komand button na koji bi se prebacio nakon unašanja stavaka kojim bi potvrdio da unešeno i u snimi.
Nadam se da sam bio jasan.
I bilo bi mi drago da si tko želi skine tu moju bazu, pa da da neki prijedlog za poboljšanje!
Pozdrav!
[ Zidar @ 06.07.2005. 16:54 ] @
Zahvaljujem Vmaoticu na prilozenoj aplikaciji :-)
Kako smo i obecali, stavicemo je u top temu, i to
http://www.elitesecurity.org/t...37-kako-dokumentujete-svoj-rad
Ovo zato sto se radi o jednoj vrsti programa za inventarisanje. U prvi post stavicemo aplikaciju, a u drugi dijagram aplikacije koji sam napravio dok sam pregledao aplikaciju.
:-)
[ vmatoic @ 13.07.2005. 06:18 ] @
Pozdrav svima, jos jednom!
Vidim da se nitko ne javlja. Vjerojatno je baza savrsena! ::)) Ili je opet suprotno? :)
Nego, volio bih da netko ubaci koju svoju ideju u razvoju baze za vođenje sitnog inventara ili da proba rijesiti ona 2 problema koja sam spomenuo u svojoj zadnjoj poruci.
[ Zidar @ 13.07.2005. 14:04 ] @
Citat: 1. - želio bih da mi onemogući unos istog artikla unutar jedne radne jedinice.
Dodaj UNIQUE index na tabelu Br Kartice, kombinacija dva polja (Radna Jedinica, Naziv Artikla), mora biti UNique.
Nema veze sa pitanjem, ali dobro je uraditi:
I dodaj indekse na tabelu Stavke:
- RB_R neka bude PK,
- BR_Kartice neka bude obican index, duplicates OK,
- DAtum obocan index duplicates OK
U Relationships proveri da sve relaciej imaju cekiran 'enforce referential integrity'
Za sada toliko, javicu se kasnije za drugo pitanje i generalni komentar o projektu ( a moze i neko drugi, da ne bude Zidar dosadan)
:-)
[ Zidar @ 13.07.2005. 21:21 ] @
Evo blagonaklone kritike na ceo posao:
A) Genaralno:
Nazivi objekata u bazi da prate neku konvenciju:
- nemoj da koristiss razmake u nazivu tabela/formi/polja, bilo cega. Nije dobro "Naziv RJ", bolje je NazivRJ ili Naziv_RJ
- srodni objekti treba da imaju zajednicki prefix u imenu (na primer frm za forme, rep za reporte, qry za kverije i slicno) Vidi top temu Tehnike Programiranja. Simke je ostavio lep clanak o tome.
Ti imas formu BR_KARTICE i tabelu BR_KARTICE. Kako znamo sta je sta?
B) dizajn baze:
1) Da se tabele propisno indeksiraju
1.1 Br_Kartice da dobije UNIQUE index po kombinaciji (Radma Jedinica, Naziv Artikla). To ce ti dozvoliti da imas jedan artikl dodeljen radnoj jedinici tacno jednom
1.2 Tabela Stavke da dobije PK (RBR) i da dobije non-unique index po polju 'Opis Knjizenja'
1.3 da se dopuni relacija sa tabele "Opis Knjizenja" na tabelu "Stavke", da bude sa referential integrity
1.4 da se vazna polja proglase za required. U tabeli Br_Kartice, sva tri polja da budu Required. Sada mozes da uneses Radnu jedinicu, a ostavis Naziv Artikla prazan
C) Biznis proces: ne vidi se da li ulaz u 'magacin' i izlaz prate neki dokumenti (prijemnice, temeljnice, izdatnice). Ako postoje dokumenti u procesu, nema ih u bazi. Baza je preslikan rucni proces koji se svodi na dopisivanje zapisa u fizicke kartice materijala. Osim brzeg pretrazivanja (mozda) i tacnijeg proracuna (mozda) ovaj sistem ne donosi nikakvo drugo poboljsanje. Ne vidi se od koga je dobijen materijal niti kome je materijal otisao. Tu bi mozda trebalo nesto poraditi.
D) Forme:
3.1 na glavnoj formi, gde se vrsi unos podataka, lako je promeniti naziv kartice, sa Olovka u Gumica i da to niko ne primeti. Samo kliknes na kombo box i izaberes drugi artikl. Jako opasna stvar.
3.2 glavna forma sluzi za unos izmene u tri tabele odjednom. Mozes da dodas novu radnu jedinicu, unutar nje da otvoris koliko hoces kartica, i da vodis stanje na svakoj kartici. To nije dobro (vidi stavku 3.1). Forma na kojoj se unose stavke sme da dozvoli samo unos i editovanje stavki, a nikako "starijih" tabela.
Iz ovog sledi da ti treba zasebna forma koja prikazuje radne jedinice, samo njih, recimo datasheet, frmRadneJedinice. Kad kliknes dupli klik na radnu jedinicu, otvori ti se frmKarticeRadnihJedinica - datasheet sa karticama te jedinice, read only naravno, s saldima koja te interesuju, za brzi uvid u ukupno stanje. Kad tu kliknes na karticu, otvori ti se forma sa subformom za tu karticu - frmKartica. Na frmKartica ti je zaglavlje read only, a subforma je datasheet za unis stavki (onaj isti koji koristis i sada). Eto gomila formi, ali je posao bezbedniji i podaci pouzdaniji.
4. Ostavi na svim formama RecordSelector, tu se vidi da li je rekord snimljen ili ne
Zurim ali imas dovoljno da se zabavis
:-)
[ vmatoic @ 27.07.2005. 12:31 ] @
Pozdrav!
Evo većina problema je riješena, no uvijek ostaje nešto. Sada sam počeo raditi novu bazu ispočetka.
U odgovoru na prethodnu poruku:
A) Sada nazivi objekata prate određenu konvenciju!
B) Dizajn baze je prema navedenome.
C) Biznis proces je sada po novome usklađen, a u prethodnom primjeru mi to nije bilo bitno. Bilo je samo za probu.
D) I sada dolazi opet ono što me muči. Forme! A vjerojatno je to iz razloga što si ne znam gotovo ništa napisati u VB-u. Radim samo sa gotovim Accessovim rješenjima i eventualno preko makronaredbi.
Kada sam pokušao slijediti upute za forme i tada sam prvo otvorio jednu formu datasheet koja bi bila read only i iz koje bi se duplim klikom otvarala iduća forma koja bi bila za unos, tada nisam znao to povezati.
A kada bi koristio form wizarda kao link form stvar bi radila, no opet ne onako kako bi trebalo.
Moje pitanje dakle glasi: "Da li je moguće napraviti da forme izgledaju onako kako ih je Zidar opisao u prethodnoj poruci bez opotrebe pisanja u Code?"
[ Zidar @ 27.07.2005. 13:19 ] @
:-)
Ne moze bez koda, ali je kod minimalan. Umesto reci 'aplikacija' ili 'projekt' nekada se govorilo prosto 'program'. A program ne ide bez programiranja, kako se nkad prosto govorilo, ili 'pisanja koda' kako se danas kaze. Za pocetak, prouci u Helpu komande DoCmd.OpenForm, DoCmd.OpenReport. To ti omogucuje da uradis 90% onog sto ti treba za 'normalnu upotrebu'. Za finese, vezbaj pomalo, niko se naucen nije rodio. I zaboravi da postoji rec Macro u Accessu. To je prva stvar koju treba da uradis ako hoces da programiras. Zaboravi makroe.
Da se vratimo na problem:
U formi frmRadneJedinice, koja je datasheet forma, read only, i ciji je zadatak da samo izlista radne jedinice, imas sigurno polje RadnaJedinicaID (ili tako nekako). To je recimo neki text box, ili combo box, svejedno. U design modu odaberes taj kombo box, pa u propertises sheet izaberes Events i tamo nadjes OnDoubleClick event. Kreiras event proceduru za taj event - kliknes nesto sa strane i izaberes 'Event procedure'. Access ce sam da ti otvori VBA prozor i napise pocetak i kraj procedure, nesto kao:
sub RadnaJedinicaID_DblClick()
end sub
Sad ti upises ovo unutar procedure:
Dim strFormName as string 'ime forme koju treba otvoriti
Dim strWhere as String 'ovde ces da kazes za koju radnu jedinicu
strFormName="frmKarticeRadnihJedinica"
strWhere = "RadnaJedinicaID=" & Me!RadnaJedinicaID
'Ovo ce biti malkice komplikovanije ako ti je RadnaJedinicaID tekstualno polje
'u tom slucaju treba ovako:
strWhere = "RadnaJedinicaID='" & Me!RadnaJedinicaID & "'"
'iza = ubacio sam ' a na kraju je ' izmedju dva "
'PAZI: U tvom kodu sme da bude samo jedan od ova dva strWhere=
DoCmd.OpenForm FormName:=strFormName,view:=acFormDS,WheeCondition:=strWhere
Da sumiramo:
Code:
sub RadnaJedinicaID_DblClick()
Dim strFormName as string 'ime forme koju treba otvoriti
Dim strWhere as String 'ovde ces da kazes za koju radnu jedinicu
strFormName="frmKarticeRadnihJedinica"
strWhere = "RadnaJedinicaID=" & Me!RadnaJedinicaID
'Ovo ce biti malkice komplikovanije ako ti je RadnaJedinicaID tekstualno polje
'u tom slucaju treba ovako:
strWhere = "RadnaJedinicaID='" & Me!RadnaJedinicaID & "'"
'iza = ubacio sam ' a na kraju je ' izmedju dva "
'PAZI: U tvom kodu sme da bude samo jedan od ova dva strWhere=
DoCmd.OpenForm FormName:=strFormName,view:=acFormDS,WheeCondition:=strWhere
end sub
Nemoj samo da Cut/Paste ovaj kod odavde, mozda se tvoje polja i forme zovu drugacije, a mozda sam i ja napravio neku gresku u kucanju (da li se parametar view zaista tako zove ili drugacije, proveri u Help za DoCmd)
I tako isto n sledecoj formi. Za ovo nema wizard, iako postoji slican wizard - kad ubacis dugme mozes da izaberes koju formu/report da otvori to dugme, i za formu mozes da definises i uslov (za report ne mozes, moras da ga dopises ovako kako sam ti pokazao).
Dakle, prouci Help za DoCmd i OnClick event za dugmice i DblClick event za ne-dugmice.
:-)
[ vmatoic @ 28.07.2005. 12:41 ] @
:)
Evo mene opet!
Zahvaljujem Zidaru na sveobuhvatnim objašnjenjima i evo uplalilo je prema njegovim uputstvima da se forma tako otvara.
Sad sam poceo sa drugim primjerom koji se vodi onim tockama koje je Zidar u prethodnim porukama spominjao, pa bih bio zahvalan Zidaru da ga pogleda i baci svoj sud o dosadasnjoj organizaciji baze.
No, ... :) ... uvjek neki no, sad kad dupli klik napravim na prvu formu otvori se druga forma, no ne dozvoli mi da unasam ista u tu formu! - HELP!
I pitanje br.2 - Da li se tako označava da je neka forma read only, kao što sam ja napravio sa svojom frm_ZAGLAVLJE?
Nadam se da nisam predosadan. :(
[ Zidar @ 28.07.2005. 14:33 ] @
Napredak se vidi  Tabele su lepo imenovane, kao i forme.
Dizajn tabela izgleda OK na logickom nivou. To znaci relacije su OK. Na nivou implementacije, ima jos nekoliko stvari da se doda:
1) Sva polja koja su FK (u relaciji 1:VISE su na strani VISE) treba da se indeksiraju, duplicates OK.
2) tabela tblStavke treba da ima unique index po kombinaciji polja (Br_Kalk, S_PR)
Na tabeli stavke pozeljan je i indeks po polju S_PR (vidi komentar 1)
Dizajn aplikacije je malo problematican. Naucio si da na dupli klik pozoves drugu formu, sto je za pohvalu. Problem je sto ne treba frmStavke pozivati na taj nacin.
Ovako:
1) tblstavke je tzv. "intersection" tabela. Njen PK treba da je slozen i da ga cine polja (Br_Kalk,S_PR). Forma koja se gradi od ove tabele treba da je datasheet (tu si OK za sada) i treba da ima SVA polja iz tabele. tebi fale polja BR_KAlk i S_PR. Zato ne mozes da uneses nikakav rekord. Relacije koje si postavio zahtevaju da za bilo koji rekord u tbl_Stavke mora da postoji rekord sa odgovarajucim BR_KALK u tabeli tbl_Zaglavlje (to ti nedostaje na formi frmStavke) , kao i rekord u tbl_Artikli (to imas). medjutim, i kada bi imao polje BR_KALK na formi frmStavke, ne bi ti mnogo pomoglo, morao bi rucno da unosis taj podatak. Resenje je da a) dodas polje BR_KALK na formu frmStavke i b) da frmStavke stavis kao subformu na formu frmZaglavlje_F (nemas je jos, to je forma bazirana na tabeli tbl_Zaglavlje kao tvoja postojeca forma frmZaglavlje, sva isto, ali nije datasheet nego Form)
Da te ne zbunjujem, pogledaj attachment. Jedna slika (ili dve) vrede vise od hiljadu reci. Fajl ima dve stranice. Pogledaj ih i bice mnogo jasnije. Sve sto trebas da uradis mozes da uradis sa znanjem koje imas trenutno.
Prva starnica prikazuje shemu tabela (Realtionships diagram). Tu sam oznacio koji su ti indeksi potrebni da bi baza bila brza i efikasna. Oznacio sam oznakama F i DS na kojim tabeama su ti potrebne forma tipa from (F) ili datasheet (DS). Uoci da skoro ce sve tabele imati i DS i F formu. Samo tabela tblStavke ce imati mozda
samo jedan DS, koji ce se koristiti kao subforma na dve forme.
Drugi list prikazuje shemu aplikacije, forme koje su potrebne, subforme, kako se koja forma poziva (click na dugme, dbl click), koji su reporti neophodni. Potrazi temu "Kako dokumentujete svoj rad" ako ti nisu jasne oznake.
Srecan rad.
Ja idem na odmor i nema me do septembra.
[ vmatoic @ 24.08.2005. 11:59 ] @
Pozdrav svima!
Evo sada prilazem novi program koji je vise - manje zasnovan na dijagramu kojeg mi je Zidar prosljedio. Vise - manje iz razloga sto je prilagoden mojim potrebama. No, osnova je tu.
Program nije do kraja doraden, fali jos koji report, koja forma, no sve prema dosadasnjim principima, tako da to nije problem uraditi.
No sad ga saljem da cujem kakve imate prigovore i prijedloge, pa da ne nastavljam dalje ako nesto nevalja.
Ovdje se sada radi samo o ulazima robe u jedno poduzece, pa ako je to za sad u redu ja bi objasnio koji bi trebao postupak biti i kako sam zamislio da se formira izlaz.
[ vmatoic @ 24.08.2005. 12:20 ] @
Evo jos samo jedna nadopuna.
Obecao sam Zidaru da cu dati na raspolaganje neke predloske u Excelu koje ja koristim za rad u svojoj firmi (Za Kafic). Mozda ce nekome, tko se odlicno snalazi u Accessu, ovo izgledati smjesno, no opet mozda nekome bude korisno.
Ako nista drugo posluzit ce za predodzbu koju imam za aplikaciju u Accessu. Predlozak "Caffe obracun kroz jedan mjesec.xls" sam zamislio kao izlaz.
[ vmatoic @ 25.08.2005. 13:09 ] @
Evo mene opet! (kad nitko drugi nece :-) )
Evo i nove poboljsane verzije, na kojoj sada fale samo neki reporti ili query-i zavisno o tome za sto kome treba.
No, uskoro cu se naci u problemima sto ce datoteka poceti prelaziti 200 K pa je necu moci staviti na forum. A sto onda?
[ Zidar @ 26.08.2005. 19:37 ] @
Evo mene posle velikog odmora
APlikacija koju si zakacio deluje vrlo pristojno. Drago mi je da si shvatio sta sam dijagramom hteo da kazem i da si razvio aplikaciju po 'mojim' principima. Znanje koje imas si iskoristio maksimalno i dobio proizvod visoke funkcionalnosti.
Ima jos nekoliko zaista sitnica koje bi celu stvar ulepsale:
1) Aplikacija se otvara u database prozoru. Idi u Toole/StartUp i
- upisi nalov u Aplication Title.
- u polju Display form/Page izaberi frmGlavna
- odcekiraj "Show Database Window"
2) Na formi frm_Glavna u design modu stavi:
- Record Selector=No
- Navigation Buttons = No
3) Na svim formama koje pocinu sa frm_Glavna stavi
- Allow design Chabges = Design View Only
Na svim formama koje pocinu sa frm_Glavna treba ti dugme "Nazad". neke ga imaju, neke ne. Nemoj da trcis i pomocu wizarda da ubacujes dugme cmdNazad na formu. Evo ti jedan stos za efikasnije programiranje:
- napravi novi modul, modLocalFunctions i upisi jednu funkciju tamo treba upisati sledeci kod:
Code:
Option Compare Database
Option Explicit
Function Zatvori()
'Namena: poziva se sa dugmeta "Zatvori"
'Na dugmetu cmdZatvori, u property OnClick umesto event koda
'samo upisati =Zatvori()
'Onda se dugme moze kopirati sa forme na formu i ovaj 'kod' ce putovati sa dugmetom
DoCmd.Close
End Function
Ako na bilo koju formu stavis neko dugme, na primer cmdZatvori, umesto da pises kod (ili upotrebis wizard za kod) u event property OnClick upises
=Zatvori()
dugme ce da zatvori formu (tako sto ce da pozove funkciju Zatvori())
Sad to dugme mozes da kopiras sa forme na formu u design modu. Funkcija ce kopiranjem da 'putuje' sa dugmetom od forme do forme. Ne izgleda mnogo, ali veruj mi da stedi vreme.
Primetio sam da smo poceli temu sa aplikacijom za komunalne organizacije, nastavili smo sa otpremnicama i prijemnicama, a sad je aktuelan kafic. Sta mi ovde u stvari radimo?
[ vmatoic @ 29.08.2005. 12:35 ] @
Pozdrav!
Zahvaljujem na savjetima, koji su uspješno implementirani. Istina ja da ima još mjesta za dotjerivanje aplikacije (vise reporta, vise vrsta upita i sl.) i sa znanjem koje sada posjedujem, a to cu sve da uradim i gotovu dotjeranu aplikaciju staviti na forum.
Da zapoceo sam sa nekim aplikacijama vezane za komunalno poslovanje, prvenstveno radi primjera, no nastavio bih sa kaficem, ako moze jer to mi je blize. Naime, sam vodim knjigovodstvo za svoj kafic (pomocu Excela, za sad).
Dakle ja bih, ako ste za, nastavio razvoj aplikacije za cafe?
1. U trenutnoj aplikaciji javlja se problem sa tipkom esc - kada udem u zaglavlje forme frm_ZAGLAVLJE_F (za unos nove kalkulacije) - potvrdim polje br_kalk (koje je autonumber) i izaberem nekog komitenta u iducem polju, te ga takoder potvrdim i sada sam pozicioniran na polju datum ili bilo kojem iducem, te kada tu pritisnem tipku esc on me baci ponovo na prvo polje, tj. na br_kalk, ali sada mi nudi iduci redni broj. Zapravo tim postupkom preskace redne broje, a ja bi da svaki broj nosi sa sobom odredene podatke!
2. Pitanje vezane vjerojatno uz prvo. El je problem napraviti da kada korisnik na gore spomenutoj formi (za unos nove kalkulacije) upise zaglavlje obavezno mora upisati i bar jedan redak stavki (subforma forme za unos nove kalkulacije)?
Nadam se da sam bio jasan sa ovim pitanjima?! :)
3. Trenutna aplikacija je za sada vezana za ulaz robe u poduzece, a ja bi se sada prebacio na daljni razvoj, tj. izlaz ili razduzenje. A primjer razduzenja na nacin na koji ja sada to radim nalazi se u excel predlosku za cafe koji sam zakacio cca 3 poruke prije. Pa ja bih dao prijedlog, pa da ga dalje svi zainteresirani u forumu ocijene i daju svoje kritike?
Eto, u kratko. :))
[ Zidar @ 31.08.2005. 14:58 ] @
1) Otvori novu temu sa naslovom Kafic - pracenje robe
2) Opisi nam svojim recima kako funkcionise kafic. nemoj da govoris kao programer, govori kao vlasnik ili poslovodja kafica. Opisi nam proces dostave robe. Opisi nam proces prodaje robe. Kazi nam koji dokumenti su obavezni da se vode po zakonu, a koji se vode rucno (a nisu obavezni po zakonu) da bi se imao uvid u poslovanje (stanje magacina i kase). Onda cu ja da napravim dijagram procesa (sledeci put ces ti :-)
3) Onda nam zakaci ZIP sa dijagramom baze podataka (relationships) napravi dijagram aplikacije, onako kako si ti zamisilio. U ovoj temi si naucio da upotrebljavas gotov dijagram aplikacije (i da ga prilagodis sebi :-), a sada trazimo da napravis dijagram tako da razumemo o cemu se radi. Onda cemo da prodiskutujemo dijagram aplikacije i da ga doteramo ako treba.
Tek onda ces da sednes i da pocnes aplikaciju, ili vise njih. Vrlo je moguce da ces imati dve ilii cak tri aplikacije. Jednu da se u magacinu prati ulaz robe, sto si vec radio. Drugu, da evidentira prodaju na kasi (kasama) - eto ti pracenje izlaza. Trecu, da gazdi stampa izvestaje i prikazuje podatke iz svih uglova, i mozda da prati deo finansija gde gazda placa svojim dobavljacima. Moguce su razne kombinacije. Kasa bi trebalo da bude odvojena, a ostalo moze da se kombinuje u raznim oblicima i bojama.
:-)
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|