Bio je jednom davno primer, neko je racunao nocne sate i praznike, ali nisam siguran da je na ovom forumu, moguce je da je Icentar koji vise ne radi. No, i za taj primerdali smo prekomplikovano resenje. Za tebe moze nesto jednostavnije. Jednostavnije za razumevanje, ne manje funkcionlno
Za pocetak, prosiri tabelu datuma, dogaj kolone 1) za ime dana u sedmici i 2) oznaku da li je dan praznik ili vikend ili radni dan. Subote i nedelje bice vikendi, ostali dani ce biti radni dani, osim onih koje proglasis za praznike. Ovako nekako:
tblDatum {Datum, DanUSedmici (Pon, Uto, Sre, Cet,Pet,Sub,Ned), VrstaDana (Radni,Praznik,Vikend)}
Zatim napravi tabelu sati, ovako tblSati { OdSati, DoSati, Smena }. Nekako ovako:
OdSati, DoSati, Smena
0 1 2
1 2 2
2 3 2
......
6 7 2
7 8 1
8 9 1
......
21 22 1
22 23 2
23 24 2
Ako kombiujes ove dve tabele sa postojecim tabelama tblDatum i tblRaspored, moci ces da resis problem. Ako zapne, pomoci cemo.
Postojece tabele bi mogla preurediti malo, da se lakse radi. Prvo, u tabeli tblRaspored ubaci Datum umesto DatumID. Zatim izbaci PrID i PRKarj, one i vise nece trebati. Umesto da za svaki upis u tabelu tblRaspored proveravas da li je pocetak i kraj pao na praznik, to ce ti reci prosirena tabela tblDatum.
Probaj, pa da pomazemo gde zapne.