Öncelikle herkese merhabalar ;
yazdığım uygulamada ikileme düştüm , şöyle bir durum söz konusu ;

Veritabanında
bayiler
personel
calismalar

şeklinde 3 tablom var.

Şimdi
Sistemdeki bayiler (mudurler) bir şirketin bayilerinin müdürleri (kendi bayileriyle ilgili bilgileri yönetiyorlar)
her bayide ortalama 30 kişinin çalıştığını varsayalım.

Sorun calismalar tablomda. Nasıl şekillendirmem gerektiğine karar veremedim.
  • Bayi çalışanlarının izin günleri farklı zamanlarda. yani hepsi her gün işe gelmiyor.
  • Çalışanların net bir çalışma takvimi yok , saatlik (part time) çalışıyorlar. ( pazartesi 5 saat, salı 2 saat çalışmış olabilir)
  • Bazı günler izin veya rapor alarak işe gelmemiş olabilirler.
    ....
    ..
    .

Şimdi sorum şu , çalışmalar tablomu nasıl oluşturursam daha güzel olur.
1 )


resimde her personel'e ait her gün ayrı bir kayıt girerek mi tutayım.

( bu da 1 bayi için ;
bir ayda bir personel için 30 kayıt ,
toplam 30 personel için 900 kayıt demek )

100 bayi girişi olduğunu varsayarsak 900 * 100 = 90 000 kayıt demek. ( 1 ayda )


2) ya da çalışmalar tablomu şu şekilde mi yapmalıyım ;
veri girişi sayfamda , bir tablo içine;

Her Gün için bir input text koysam.


----------------------------ARALIK AYI---------------------------------
-------------------1---2---3---4---5---6---7---8---9--------------31--
Günler)

Ali Veli ------------5---5---4---2---1---0---0---1---2---------------5--(çalışmasaati)
Hasan Hüsen ------2---1---6---2---0---2---1---0---0---------------4--(çalışmasaati)
.........
......
....
..
.


Bu textler POST edildikten sonra ;
aşağıdaki gibi bir dizi içerisinde toplasam;

$veri [bayi_id][personel_id][tarih] = calismasaati;
$veri [1][1]['2013-12-01'] = 6;
$veri [1][2]['2013-12-01'] = 3;
$veri [1][3]['2013-12-01'] = 5;
$veri [1][4]['2013-12-01'] = 1;
Bu diziyi JSON formatına çevirip calismalar tabloma bu şekilde mi saklasam
ör resim:


bu verileri raporlama için tekrar kullanacağım zaman JSON verisini tekrar ARRAY a çevirip gerekli input textlerin içine koyup o şekilde devam ederim




sizce hangi yol mantıklı ve daha az sistem yorar.

her bayi personeli bu çalışma saatleri sonucu ücret alacak, belli bir çalışma saatleri geçen prim alacak vs... gibi işlemler de var tabii ki.