Giriş yapmadınız.

Duyuru

TÜRKÇE KİTAP DUYURUSU:
Laravel 5 : Laravel 5.1 Güzelliği (Türkçe)
Vue.js 2 : Vue.js 2 Majesteleri (Türkçe)

#1 06.04.2016 22:48:56

loc
Üye
Yer: İstanbul
Kayıtlı: 08.06.2015
Mesajlar: 270
Website

Veritabanı yapısı sizce nasıl olmalı

Kafa bir noktadan sonra durunca gerçekten mantıklı düşünemiyorum. Şimdi 4-5 aydır üzerinde çalıştığım projenin sonuna geldim diyebilirim. Yaptığım şey şirket için bir intranet. Kafamın durduğu nokta ise raporlama kısmında. Önce modülleri bir anlatayım onun üzerinden nasıl birşey yapmak istediğimi zaten anlayacaksınız.

Projeler modülü altında Teklifler tekliflere bağlı revize teklifler, notlar, dosyalar, Tekliflere veya Revize Tekliflere bağlı siparişler, siparişlere bağlı ürünler, ürünlerin stok bilgileri, ürünlerin sevkiyat bilgileri, Tekliflere bağlı teknik servis işlemleri, teknik servis işlemlerine bağlı görevler, görevlere bağlı raporlar. Görüldüğü gibi dallanıp budaklanıyor.

İş bunu raporlamaya geldiği zaman nasıl bir mantık yürütmem konusunda sıkıntı yaşadım. Çünkü çıkan raporu veritabanında saklamam lazım. Geçmişe yönelik raporların incelenebilmesi lazım. Raporda da şöyle birşey gerekiyor. (Ana işlem projeler)

Her haftanın son günü 18:30 da cronjob ile işlemlerimi yapacağım. Yaptığım işlemde o hafta güncellenmiş olan projelerin o haftaki yapılmış olan işlemlerini listelemem gerekiyor.

Hiyerarşiyi şöyle listeleyecek olursak eğer:

Projeler -> Teklifler (Revizeler | Dosyalar | Notlar) -> Siparişler (Lojistik Faaliyetleri | Stok Hareketleri) -> Teknik Servis -> Görevler -> Teknik Eleman Raporları

En alttaki modülde gerçekleşen güncelleme bir öncekinden başlayıp en üste kadar update tarihi atıyor. Yani gerekli veriler elimde mevcut. İstenilen rapor verisini göstermede de sıkıntım yok. İş bu raporu saklamaya gelince ortaya çıkıyor. Bu hiyerarşide bir çıktı aldığım zaman bunu nasıl saklayacağım smile

Çevrimdışı

#2 20.05.2016 22:36:57

kzorluoglu
Üye
Kayıtlı: 27.12.2015
Mesajlar: 194

Yanıt: Veritabanı yapısı sizce nasıl olmalı

Bahsettigin tarzda, devletin bir kurumuna ailelere ait bilgilerin kaydedildigi excel vari bir form sistemini gelistirdik, ayni dertleri bizde bu formlari kaydederken yasadik, cünkü formlar devamli degisebiliyor veya birseyler eklenip cikarilabilliyor. Raporlar icin ayri tablolar olusturup her alani oraya kayederek cözdük. Cünkü örnegin sende;
A iscisi sistemden silinmesi durumunda veya B Siparisindeki ürünün adinin veya ayni stok numarasiyla baska bir ürün girilmesi vb. durumlarda kullanimda olan tablolari kullanamazsiniz bu tarz problemler cikmamasi icin, raporu ve bu tarz kayitlarin hepsini ayri ayri (raporuna göre birkac) rapor tablosu altinda toplaman gerek..

Son düzenleyen kzorluoglu (20.05.2016 22:40:55)

Çevrimdışı

#3 21.05.2016 12:48:03

loc
Üye
Yer: İstanbul
Kayıtlı: 08.06.2015
Mesajlar: 270
Website

Yanıt: Veritabanı yapısı sizce nasıl olmalı

İşi çözdüm ama şu şekilde çözdüm diyebilirim. Her modülün kendisine ait verisi olduğu için rapor için oluşturduğum mysql sütununda json formatında verilerimi sakladım. Her birine tablo açmaktansa bu şekilde rahatlıkla çözebileceğimi gördüm. Raport için de type adlı bir sütun oluşturup bunun içine modülün adını yazdım. Buna göre verilerimi çekip rapor olarak ekrana basıyorum. Daha sonra kullanıcı ister veritabanı aracılığı ile web sayfasından görüntülüyor isterse de kullanmış olduğum laravel excel sınıfı ile bilgisayarına indirip görüntülüyor. Ama açık konuşayım excel tarafını yazarken veritabanı kısmından daha çok zorlandım diyebilirim. Şu sheet te şu veriler olsun şu sütunda şu görünecek derken kodları çorba etmemek için baya uğraştım diyebilirim.

Çevrimdışı

Forum alt kısmı