Cus,
prosim o radu a pomoc.
Hned na uvod radeji poznamenam - jsem laik, s accesem jsem se "naucil" metodou pokus omyl a za pomoci helpu a googlu...
Mam v accessu databazi, konkretne je to urceno pro evidenci servisnich zakazek. Takze je tam adresar firem, nejaka servisovana zarizeni, ciselnik zarizeni,...
S cim bych potreboval poradit:
Jak cislovat, resp. jak vytvaret ciselnou radu faktur (i jinych dokladu - objednavky,opravne listy,...)? Ciselna rada by mela obsahovat nejaky prefix a samozrejme cisla v ni musi byt jedinecna.
Ted to mam vyreseno pomoci pridavaciho dotazu.
Tabulka faktury "FV" ma tato dulezita pole - "FVID","VS", "prefix" , "cislo".
V jedne tabulce (ciselna rada) mam pole "prefix" a "prvni cislo" (jeste zaskrtavaci pole "aktivni" a pole s datumem "platnost do"). Vyberovym dotazem nactu prefix (kriterium - "aktivni" = pravda) do pridavaciho dotazu, podivam se na nejvyssi hodnotu pole "cislo" (DMax), k nemu prictu 1 a spojim s prefixem. Tuto hodnotu ulozim do pole "VS". Je to takove krkolomne a nevim jestli to bude dlouhodobe funkcni.
Jaky na toto reseni mate nazor?
Vadi mi na tom par veci:
-prvni fakturu musim vytvorit rucnim zapisem primo do tabulky
-nevim jestli je zajistena jedinecnost cislovani
-chtel bych pridat jeste overeni, ze je ciselna rada aktivni pomoci pole "platnost do"
A mozna si jeste na neco vzpomenu.
Zatim diky za pripadne rady.
Access 2010 - číselná řada dokladů
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Access 2010 - číselná řada dokladů
Pises, ze jsi "laik", tak mozna (je to jen velmi strucne) bude vhodne uvazit akceptaci koncepce databazoveho reseni: rozdelit databazi na FrontEnd (zabezpeceni prihlasovani a urovne opravneni, zprostredkovany pristup k databazi prostrednictvim formularu a jejich aktualizace vcetne zmen, kontrola pri zadavani dat a vkladani do tabulek databaze, prehledy, generovani vystupu - tisk,...) a BackEnd (vlastni databaze - tabulky pouzivajici primarni klice, relace, ochrana, zalohovani,...) vcetne fyzickeho rozdeleni databaze na dve casti.
Uzivatel nesmi jakkoliv primo pracovat s tabulkami, data z/do formularu jsou predavana do/z tabulek na formulare navaznymi procedurami VBA; ty musi napr. osetrit tebou uvadeny "problem": prvni fakturu musim vytvorit rucnim zapisem primo do tabulky, musi podle nejakeho algoritmu generovat jednoznacne identifikacni udaje (nikoliv uzivatel!),.........
Jedinecnost: zde je vhodne pouzit tabulku, do ktere jsou ukladany naposledy sw pridelene ruzne identifikacni udaje a z ni jsou generovany nove identifikacni udaje (napr.: faktura FaYYYYMMDD/xxxx).
Cim drive se k tomuto reseni priklonis, predejdes pozdejsi pracne nutne restrukturalizaci.
A najdi si na netu informace k navrhu databaze, na zacatek napr.: http://office.microsoft.com/cs-cz/acces ... 24247.aspx
Uzivatel nesmi jakkoliv primo pracovat s tabulkami, data z/do formularu jsou predavana do/z tabulek na formulare navaznymi procedurami VBA; ty musi napr. osetrit tebou uvadeny "problem": prvni fakturu musim vytvorit rucnim zapisem primo do tabulky, musi podle nejakeho algoritmu generovat jednoznacne identifikacni udaje (nikoliv uzivatel!),.........
Jedinecnost: zde je vhodne pouzit tabulku, do ktere jsou ukladany naposledy sw pridelene ruzne identifikacni udaje a z ni jsou generovany nove identifikacni udaje (napr.: faktura FaYYYYMMDD/xxxx).
Cim drive se k tomuto reseni priklonis, predejdes pozdejsi pracne nutne restrukturalizaci.
A najdi si na netu informace k navrhu databaze, na zacatek napr.: http://office.microsoft.com/cs-cz/acces ... 24247.aspx
Re: Access 2010 - číselná řada dokladů
Jeste poznamenam - uzivatele budou asi tak 2-3. Hlavnim jsem ja, delam to do prace pro sebe. Dalsi uzivatele budou databazi pouzivat hlavne pro vyhledavani udaju - adresy,telefony....
Zaklad konstrukce vim,samozrejme ze uplne nejlepe to udelane nemam - vyvoj musi pokracovat,to je mi jasne.
Nicmene odpovidas mi na otazku, tak bych poprosil o trochu jasnejsi odpoved. Ze se to musi osetrit procedurami - prave na to jsem se ptal, resp. jsem zadal o radu jak to provest. Proto jsem uvadel nazvy poli,atd...
Do tabulek kde mi na tom moc nezalezi - napr. ten adresar se zapisuje primo. Proste spoleham na to,ze nebudu zbytecne duplikovat zaznamy. Ve formularich k tabulkam faktur,objednavek a servisnich listu se data nacitaji pomoci SQL dotazu - VBA je pro me trochu moc slozite, pouzivam accesoveho tvurce dotazu, to docela chapu.
Zaklad konstrukce vim,samozrejme ze uplne nejlepe to udelane nemam - vyvoj musi pokracovat,to je mi jasne.
Nicmene odpovidas mi na otazku, tak bych poprosil o trochu jasnejsi odpoved. Ze se to musi osetrit procedurami - prave na to jsem se ptal, resp. jsem zadal o radu jak to provest. Proto jsem uvadel nazvy poli,atd...
Do tabulek kde mi na tom moc nezalezi - napr. ten adresar se zapisuje primo. Proste spoleham na to,ze nebudu zbytecne duplikovat zaznamy. Ve formularich k tabulkam faktur,objednavek a servisnich listu se data nacitaji pomoci SQL dotazu - VBA je pro me trochu moc slozite, pouzivam accesoveho tvurce dotazu, to docela chapu.
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Access 2010 - číselná řada dokladů
Access 2010 nemam k dispozici, kompatibilita u Accesu z nizsich verzi je nic moc, takze konkretni radou nemohu slouzit. Ale VBA se, pokud nechces Access pouzivat na zpusob prace v Excelu, nevyhnes.
Re: Access 2010 - číselná řada dokladů
Tak jsem se s tim popral pomoci nevazaneho formulare. Cislo se generuje podle cisla posledniho zaznamu v tabulce faktur a overi se v tabulce ciselnych rad zde je tato rada aktivni. Uz jsem to tak jednou zkousel,ale predtim jsem vyhorel na syntaxi vyrazu DLookUp - samozrejme je to jinak nez u Accessu 2007 a predchozich. Co je jeste lepsi,tak nefunguje ani syntaxe podle helpu - ta je totiz opsana z Access 2007. A plati to o vice vyrazech.
Pro zajimavost, takhle je popsana systaxe v helpu Accessu:
A takhle se musi napsat aby fungovala:
Pro zajimavost, takhle je popsana systaxe v helpu Accessu:
Kód: Vybrat vše
=DLookup("[ProductName]", "Products", "[ProductID] =" _
& Forms![Order Details]!ProductID)
A takhle se musi napsat aby fungovala:
Kód: Vybrat vše
DLookUp("[Pocet_nul]";"[Cis_rada_mont]";"[Aktivni]=True")
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Access 2010 - číselná řada dokladů
Mala poznamka:
Pokud je umoznen primy pristup k tabulkam, lze odstranit posledni zaznam v tabulce faktur. A nasledne bude vygenerovano duplicitni cislo faktury.
Proto doporucuji dusledne rozdelit databazi na FrontEnd a BackEnd.
Pokud je umoznen primy pristup k tabulkam, lze odstranit posledni zaznam v tabulce faktur. A nasledne bude vygenerovano duplicitni cislo faktury.
Proto doporucuji dusledne rozdelit databazi na FrontEnd a BackEnd.
Re: Access 2010 - číselná řada dokladů
Primy pristup k tabulkam - co tim myslis? Databaze je rozdela, tim accesovskym zpusobem - na BE(sdilene tabulky) a FE(formulare,dotazy,sestavy,atd) na stanici. Formulare jsem vzdy z dotazu, vymazat zaznamy jde jen tam kde chci. V tabulce faktur nic mazat nejde,proste ve formulari je to zakazano. Provozovat se to bude pod runtime,takze do toho nikdo nepoleze. A i kdyby nekdo vymazal posledni fakturu, tak nova faktura bude mit jeji cislo. To je osetreno prave tim pocitanym polem nevazaneho formulare.
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Access 2010 - číselná řada dokladů
Z predchoziho nebylo zcela patrne rozdeleni databaze na FrontEnd a BackEnd, takze jsem rozdeleni opet doporucil. Az teprve nyni sdelujes, ze jsi takto ucinil, coz je OK.
Re: Access 2010 - číselná řada dokladů
No myslel jsem ze to neni tak dulezite, kdyz jsem se ptal jak tvorit ciselnou. Postupoval jsem vicemene podle napovedy a podle informaci na netu - rozdeleni databaze je vsude doporucovano, tak jsem to i udelal. Prubezne ji zkousim v praci na siti,jinak to delam primo v pc. Nevim jak je to v predchozich verzich,ale tady i kdyz vytvoris formular primo z tabulky,tak pri ulozeni to access zmeni na dotaz.
Dokonce se mi to povedlo zprovoznit i na SQL serveru (free verze MS SQL 2005), ale to jen ze jsem si to chtel zkusit.
Dokonce se mi to povedlo zprovoznit i na SQL serveru (free verze MS SQL 2005), ale to jen ze jsem si to chtel zkusit.
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 7
- 1610
-
od atari
Zobrazit poslední příspěvek
28 lis 2023 11:26
-
- 0
- 890
-
od _FalcoN_
Zobrazit poslední příspěvek
22 kvě 2023 19:21
-
-
Excel 2010 - věc, co asi nemá řešení... Příloha(y)
od Story-Long » 10 srp 2023 15:30 » v Kancelářské balíky - 0
- 1582
-
od Story-Long
Zobrazit poslední příspěvek
10 srp 2023 15:30
-
-
-
Datový model - aktualizace po přidání dalšího sloupce do Access
od MK_Vs » 27 črc 2023 12:05 » v Kancelářské balíky - 0
- 1946
-
od MK_Vs
Zobrazit poslední příspěvek
27 črc 2023 12:05
-
-
- 3
- 1034
-
od Vlada47
Zobrazit poslední příspěvek
31 bře 2024 17:08
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti