[ marko v @ 18.01.2009. 12:51 ] @
Dostupni podaci su:

radnik:
maticniBroj
imeIPrezime
....

radniNalog:
oznakaNaloga
opis
....

kalendar:
datum
danUTjednu(ponedjeljak, utorak,....)
mjesec
godina
...

satiRada:
datum
maticniBroj
oznakaNaloga
redovanRad ( broj sati)
prekovremeniRad (broj sati)

brutoPlaca:
maticniBroj
mjesec
godina
iznosBrutoPlace

Iz prikupljenih podataka treba dobiti stvarni trosak rada po radnom nalogu u mjesecu. Problem je u tome sto ne uspijevam zadovoljiti uvjet da je prekovremeni rad 50% skuplji od redovnog, i da je rad nedjeljom 80% skuplji od prekovremenog rada.
Dakle ako za jednog radnika u jednom mjesecu imam npr.da je imao 135 sati redovnog rada, 50 sati prekovremenog od kojih je 16 ostvareno u nedjelju i da mu je iznos brutto plaće 8765,43 kn kako dobiti koliko je koštao 1 sat redovnog rada za tog radnika???

A onda dalje neće biti problem pomnožiti dobiveni iznos sa brojem sati koje je taj radnik utrošio po svakom radnom nalogu da bi se dobio iznos troška rada za nalog.





[ Getsbi @ 18.01.2009. 15:46 ] @
Matematika:

135x + (34*1.5)x + (16*1.8)x = 8765.43 kn
135x + 51x + 28x = 8765.43 kn
214x = 8765.43 kn
x = 40.96 kn

Ovo gore je za forum matematika, podforum osnovna škola.

Baza podataka :

Povežeš tabele kalendar i satiRada vezom 1:1 preko datum.
Ispituješ da li prekovremeniRad pada u nedelju i množiš broj sati sa 1.8 .
Ako je prekovremeniRad neki drugi dan, onda množiš broj sati sa 1.5 .
Sabiraš prethodno sa redovanRad.



[ chachka @ 18.01.2009. 17:21 ] @
Ovako nekako
Code:
SELECT b.maticniBroj,
       b.iznosBrutoPlace /
       SUM(CASE WHEN k.danUTjednu = 'Nedelja'
                THEN 1.8 * (s.redovanRad + s.prekovremeniRad)
                ELSE s.redovanRad + 1.5 * s.prekovremeniRad
           END) AS bruto_satnica
  FROM brutoPlaca AS b 
       INNER JOIN
       satiRada AS s
         ON b.maticniBroj = s.maticniBroj
       INNER JOIN
       kalendar AS k
         ON s.datum = k.datum
 WHERE b.mjesec = 12
   AND b.godina = 2008
 GROUP BY b.maticniBroj, b.iznosBrutoPlace
[ marko v @ 19.01.2009. 07:36 ] @
Citat:
Getsbi: Matematika:

135x + (34*1.5)x + (16*1.8)x = 8765.43 kn
135x + 51x + 28x = 8765.43 kn
214x = 8765.43 kn
x = 40.96 kn

Ovo gore je za forum matematika, podforum osnovna škola.

Baza podataka :

Povežeš tabele kalendar i satiRada vezom 1:1 preko datum.
Ispituješ da li prekovremeniRad pada u nedelju i množiš broj sati sa 1.8 .
Ako je prekovremeniRad neki drugi dan, onda množiš broj sati sa 1.5 .
Sabiraš prethodno sa redovanRad.


Da, to sa osnovnom školom sam naknadno i sam shvatio. Prišao sam ovome kao da je neki extra problem i tražio neka komplicirana rješenja, a stvar nije mogla biti jednostavnija.
Hvala obojici.