Odgovori 
Base, limiti i rešenja

Poštovanje,
Pokušavam da napravim bazu podataka koja bi obuhvatila stranke
i kao subform sve neophodne korake i nalaze u pregledu stranke.

Problem je što mi je za tabelu Pregledi potrebna velika tabela. Koliko sam
shvatio,
limit Base je za jednu tabelu oko 130 polja. Međutim, potrebe su kod mene
oko 3 puta veće. Kako da to rešim? Dodatnim subformama? Da li je to
stabinlno
rešenje? Ako neko ima iskustva, molim za savet.

--
Srdačan pozdrav,
Stevanović Vladislav
Citiraj ovu poruku u odgovoru

U sre, 25. 08 2010. u 19:13 +0200, Vladislav Stevanovic piše:
> limit Base je za jednu tabelu oko 130 polja

Tako mali broj može biti samo limit na broj kolona u tabeli, ne mogu
sada na brzinu da potražim koliko taj limit iznosi.

Ako imate tabelu sa više od 130 kolona sigurno je da ste pogrešno
dizajnirali Vašu bazu podataka.

OpenOffice.org Base može i da se poveže na spoljne servere za baze
podataka (Oracle, MySQL,...). Znam da se koristi i za baze od po više
gigabajta podataka.

S poštovanjem,
Goran Rakić
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru

Ideja je da napravim bazu podataka koja bi podmirila Pacijentov karton
(videti Pdf prikačeni fajl). Svaka kockica
ili linija utom Pacijentovom kartonu bi bilo jedno polje, tj kolona). Dakle,

podataka za unos ima dosta.
Neki savet?

2010/8/25 Goran Rakic <grakic@devbase.net>

> U sre, 25. 08 2010. u 19:13 +0200, Vladislav Stevanovic piše:
> > limit Base je za jednu tabelu oko 130 polja
>
> Tako mali broj može biti samo limit na broj kolona u tabeli, ne mogu
> sada na brzinu da potražim koliko taj limit iznosi.
>
> Ako imate tabelu sa više od 130 kolona sigurno je da ste pogrešno
> dizajnirali Vašu bazu podataka.
>
> OpenOffice.org Base može i da se poveže na spoljne servere za baze
> podataka (Oracle, MySQL,...). Znam da se koristi i za baze od po više
> gigabajta podataka.
>
> S poštovanjem,
> Goran Rakić
>
>
>


--
Srdačan pozdrav,
Stevanović Vladislav
Citiraj ovu poruku u odgovoru

U sre, 25. 08 2010. u 19:58 +0200, Vladislav Stevanovic piše:
> Ideja je da napravim bazu podataka koja bi podmirila Pacijentov karton
> (videti Pdf prikačeni fajl).

Lista odbacuje priloge, možete li da okačite datoteku negde?

Opšti savet pri dizajniranju baza podataka je da podelite podatke u
logičke entitete. Na primer, imate podatke o zdravstvenoj ustanovi,
pacijentu, unosima u karton,... sve u nezavisnim tabelama.

Pozdrav,
Goran
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru

Goran Rakic wrote:
> U sre, 25. 08 2010. u 19:58 +0200, Vladislav Stevanovic piše:
>> Ideja je da napravim bazu podataka koja bi podmirila Pacijentov karton
>> (videti Pdf prikačeni fajl).
>
> Lista odbacuje priloge, možete li da okačite datoteku negde?
>
> Opšti savet pri dizajniranju baza podataka je da podelite podatke u
> logičke entitete. Na primer, imate podatke o zdravstvenoj ustanovi,
> pacijentu, unosima u karton,... sve u nezavisnim tabelama.
>
> Pozdrav,
> Goran
>

Pridruzujem se ovom savetu. Osnovne podatke o samom pacijentu u jednu
tabelu, o ustanovi u drugu, istorija bolesti u trecu, itd. Svaka tabela
treba da ima ID, Integer, kljuc za pretragu. I da se on automatski
inkrementuje u samoj bazi. U podredjenim tabelama se onda pozivate na ID
glavne tabele i mozete da imate neogranicen broj redova za isti podatak
iz glavne tabele (za ID iz Pacijent tabele = 234 mozete da imate 10,
200, 100000 redova u tabeli Pregledi, isto tako u tabelama izdati
lekovi, naplata, itd.

Ja bih napravio Glavnu tabelu Pacijent, pa podtabelu Pregledi, koja bi
dalje kontrolisala tabele Lekar, sestra (mozda zajedno u jednoj tabeli
osoblje na pregledu), anamneza, simptomi, dijagnoza, preporuceno
lecenje, izdati recepti, sve to lepo rasclanjeno tako da vise podataka
(po datumima) moze da se po potrebi dodaje. I tabelu tretmani mozda koja
bi imala polja oddatum i do datum, pa da se lako moze pregledati
istorija lecenja, filtrirati po potrebi i slicno.

I da se naravno ti neki od podataka mogu ponovo koristiti, smanjujuci
tako i broj prekucavanja istih podataka i velicinu tih podataka. I jos
se ti podaci mogu birati iz padajuce liste (lookup u odgovarajucoj
tabeli po ID-u master tabele.

Preporuka je da proucite primere baza (mislim da ih ima u Base-u,
posebno neka vrsta baze prosecne firme).

Pozdrav,
Ljubomir
Citiraj ovu poruku u odgovoru

Poštovanje,

Hvala na savetima, medjutim, iskrsao je novi problem.
Bazu koju sam uredjivao otvorio sam u drugom kompjuteru
na poslu sa instaliranim zadnjim Openoffice-om, malo menjao
i sačuvao na flešu promene. Sada na drugom kompjuteru kod kuće
ne mogu da otvorim fajl.
To jest, otvorim ga, ali je bez postojećih obrazaca a kada
mišem kliknem na Tabele otvori se prozor sa tekstom:
"Ne mogu da uspostavim vezu sa izvorom podataka
Nova baza 2. Klasa drjvera "" ne može biti učitana."

Kada pritinem na tom prozoru dugme "JOŠ"
dobijam sledeća dalja objašnjenja:
Ne mogu da uspostavim vezu sa izvorom podataka "Nova baza2".
Kod greške: 1000
Klasa drajvera "" ne može biti učitana.
Stanje za SQL: HY000
Klasa drajvera "" ne može biti učitana.

Šta to znači? Da je sve što sam radio nestalo?!


--
Srdačan pozdrav,
Stevanović Vladislav
Citiraj ovu poruku u odgovoru

Evo, napravio sam tabele, gledajući da ih rascepkam kao
što ste i savetovali. U svakoj tabeli sam stavio Identifikacioni
broj pacijenta, identifikacioni broj pregleda i datum pregleda.
Postoji tabela PACIJENTI, ZAPOSLENI i 16 tabela koji su
detalji pregleda.
Potrebno ih je povezati, za šta mi je potrebna mala pomoć,
jer je ovo za mene malo kompleksnije.



Srdačan pozdrav,
Stevanović Vladislav
Citiraj ovu poruku u odgovoru

Vladislav Stevanovic wrote:
> Evo, napravio sam tabele, gledajući da ih rascepkam kao
> što ste i savetovali. U svakoj tabeli sam stavio Identifikacioni
> broj pacijenta, identifikacioni broj pregleda i datum pregleda.
> Postoji tabela PACIJENTI, ZAPOSLENI i 16 tabela koji su
> detalji pregleda.
> Potrebno ih je povezati, za šta mi je potrebna mala pomoć,
> jer je ovo za mene malo kompleksnije.
>
>
>
> Srdačan pozdrav,
> Stevanović Vladislav
>
Malo veci problem je sto ja nikada nisam radio sa Base-om, a zadnji
projekat u MS Access-u je bio oko 2003 godine (program za turisticke
operatere koji sam vodio jedno vreme). A da imam vremena bas i nemam.

ti ID-jevi treba da budu primary kljucevi u podredjenoj tabeli,
obelezeni kao takvi i povezani sa poljem u glavnoj tabeli.

Bilo koja knjiga o bilo kojoj vrsti SQL-a ce pomoci oko ovog koncepta,
pa cak i knjige o MS Accessu. Ja sam ucio iz knjiga o Delphi-ju. Morate
ovladati ovom materijom, makar osnovnim pojmovima pre nego se upustite
dalje u projekat. Pravilno resavanje dizajna, ma koliko dugo vremenski
trajalo, ce vam se kasnije MNOGOGSTRUKO isplatiti, smanjujuci vreme oko
resavanja problema koji se mogu izroditi, velicine baze i usporenosti
programa.


Da li ste pogle neke vec gotove primere?

Na primer, posetite
http://wiki.services.openoffice.org/wiki...e_Examples

Takodje negde moze da se skine uputstvo za Base 2.0 na hrvatskom. Ako ne
mozete da ga nadjete, mailovacu vam ga.

Nekada se naprave posebne tabele svaka sa svojim primarnim kljucem, a
onda se napravi pomocna tabela koja samo sadrzi oba kljuca u posebnim
poljima, pa ta tabela sluzi da se te dve glavne tabele povezu bez
dupliranja podataka.

Na primer, proizvodni predmet ID 534 moze da se pravi u vise boja (ID 3,
5, 6), a proizvod 546 u ID 1, 3, 6, 7). Primer je banalizovan zbog
jednostavnosti, ali zamislite da boja ima 40-50.

Umesto na imate 40-50 polja za svaku mogucu boju, ili 50 redova za svaku
boju posebno, najlakse je imati odvojene tabele za proizvode i boje, a
da napravite jednu duplo podredjenu tablicu (primarni i sekundarni
kljuc) sa samo 2 polja: ProductID i ColorID.

U bazi bi onda imali podatke:

534; 3
534; 5
534; 6
546; 1
546; 3
546; 6
546; 7
(....;...)
(....;...)
(....;...)
(....;...)

Kada izvlacite sve moguce kombinacije, napravite upit nad glavnom
tabelom ali tako da su grupisani i u odnosu na podredjenu tabelu, tako
da je u bazi samo jedan artikal, ali se na spisku za izbor pojavljuje
vise puta, jedan za svaku mogucu boju.

Kada treba da zapisete koji artikal treba da se proizvodi, u tabelu
radni list cete upisati samo ProductID i ID boje (ako nema dodatnih
opcija kao cvrstina ili nesto slicno) i naravno ostalo kao datum izrade
i sl.

Jos jedan savet. Treba izbegavati da se osobine proizvoda i slicno
menjaju ako mogu da uticu da kasniji pregled. Tj. ako postoji sansa da
ce neko da menja npr dimenziju artikla, ili npr adresu gde lekar ili
pacijent zivi, bitno je nekako sacuvati stare podatke. Npr, kontakt
podatke o pacijentu cuvati u zasebnoj tabeli, i to tako da postoji datum
unosa podatka, a da se ogranici/oteza penjanje postojecih podataka vec
ohrabri npr kopiranje postojecih podataka u novi red sa tim datumom i
onda dati da tu kopiju menjaju.

Jos bolja varijanta moze da bude ako ako postoji jedinstvena tabela za
sve kontakte sa primarnim poljima TipKontakta (pacijent, osoblje) i ID i
datumom vazenja, cija kombinacija ce dovesti do izvlacenja listinga o
promenama adrese ili telefona i sl. u toku odredjenog perioda.

Valjda je ovo dovoljno za pocetak.

Ljubomir
Citiraj ovu poruku u odgovoru

U pon, 30. 08 2010. u 12:47 +0200, Ljubomir Ljubojevic piše:
> Takodje negde moze da se skine uputstvo za Base 2.0 na hrvatskom. Ako
> ne mozete da ga nadjete, mailovacu vam ga.

Video lekcije:
http://www.koprivnicki-poduzetnik.hr/ind...ceorg-base

Knjiga OpenOffice.org Base, Igora Kosa:
http://sr.openoffice.org/docs/hropen/

Za izradu izveštaja preporučujem Konstruktor izveštaja. Dodatak se može
preuzeti sa: http://sr.openoffice.org/prosirenja.html Pričali smo o
dodatku prošle godine na listi, a u poruci ima i linkova na literaturu:
http://sr.openoffice.org/servlets/ReadMs...&msgNo=327

O izradi modela podataka je bilo reči i u sledećoj temi:
http://sr.openoffice.org/servlets/ReadMs...&msgNo=236

Pozdrav,
Goran
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru
Odgovori 




Kontakt | otvorenidokument.com | Povratak na vrh | Povratak na sadržaj | RSS