Arıza Takip Sistemi

Kategori: Codeigniter, Jquery, Php, Referanslar
Tarih: 11th Mayıs 2012

Kütahya il özel idaresi, Bilgi İşlem müdürlüğü için içerik yönetim sistemi üzerinde geliştirdiğim Arıza Takip Sistemi.

Senaryo: Kullanıcı ana ekrandan arıza bildirimi yapacak ve tamiri gerçekleşmemiş işlerin listesini görecek. Kullanıcının bildirmiş olduğu arızalar önce birim müdürünün ekranına düşecek. Birim müdürü  arızaları öncelik belirleyerek onaylayabilecek yada reddedebilecek. Onaylanmış arızalar öncelik sırasına göre teknik servis ekranına düşecek. Tamir gerçekleştikten sonra teknik servisde tamir onayı yapacak. Sistem kişiler bazında, birimler bazında ve arıza türü bazında grafiksel raporlama yapabilecek (En arıza birim, en arıza personel olayı :P ).

Sistem gerçeklenmiş olup ekranlar aşağıdadır.

Bir çözülemezliğin ispatı

Kategori: C#, Referanslar
Tarih: 18th Nisan 2012

Şekilde duvarlarla (kalın çizgilerle) bölünmüş 5 oda ve 16 kapı var. Her kapıdan 1 sefer geçme hakkınız var bütün kapılardan geçmelisiniz.

 

Ben kapıları ve odaları numaralandırdım. En dışarıya da bir oda numarası verdim çünkü bazı odalardan bazı odalara en dış alandan geçiş var. Bir kapıya iki yönden girilebileceğini düşünerekte (kuzey güney yada doğu batı) yönlerede numara verdim.

 

 

Program 1. kapının 0. y0nünden (yani kuzey) başlayarak tüm ihtimalleri deniyor. Çözüm yok…

 

Programı buradan indirebilirsiniz. (Çıktı satırlarının başındaki slashları kaldırarak programı adım adım takip edebilirsiniz)

db_helper

Kategori: Codeigniter, Php
Tarih: 30th Mart 2012

Veritabanının tamamını sql dosyası halinde yedek oluşturan helper. Türkçe karakter problemleri giderilmiştir. Dosya burada

$this->load->helper(‘db’);

yedekle();

Yorumlar: 0 »

İçerik Yönetim Sistemi V3.5

Kategori: Codeigniter, Php, Referanslar
Tarih: 23rd Mart 2012

Codeigniter yapısı üzerine geliştirilmiş olan içerik yönetim sisteminin yeni versiyonu hazır! (İnternet explorer bazı fonksiyonları desteklememektedir.)

Buradan demoyu inceleyebilirsiniz (Kullanıcı: demo Şifre: demo)

Yorumlar: 1 »

MY_form_helper++

Kategori: Codeigniter, Php
Tarih: 21st Mart 2012

Çeşitli 25 tane girişi bulunan (textbox, combobox vs..) bir form düşünün. Ve bazı alalnları girmesi zorunlu. Bunu en basit, javascript ile browser taraflı kontrol ettirebilir ve doğrulanmış veriyi göndertebilirsiniz. Bu bir çözümdür. Ama sistemde bir tutarsılık yada belkide bir açık oluşturabilir. Mecburen sunucu tarafında da gelen veriyi kontrol etmelisiniz. Veriyi kontrol ettiniz ve bazı alanların hatalı girildiğini gördünüz kullanıcıya formu tekrar göstereceksiniz. Okuduğunuz formdaki verileri de forma yazmalısınız. Mesela 25 tane giriş alanı bulunan bir formda adam mail adresini yanlış yazdığı için forma tekrar yönlendirilse ve formdaki bütün alanların silindiğini, bunları yeniden girmesi gerektiğini görse bu çok sinir bozar.

Codeigniter bunun için form_helper yazmış (set_value(), set_radio…). Form yeniden yüklendiğinde kullanıcının verisi forma girilmiş olarak geliyor. Aşağıdaki örnekte bunun kullanımını görebilirsiniz:

<select name=”myselect”>
<option value=”one” <?=set_select(‘myselect’, ‘one’, TRUE); ?>>One</option>
<option value=”two” <?=set_select(‘myselect’, ‘two’); ?>>Two</option>
<option value=”three” <?=set_select(‘myselect’, ‘three’); ?>>Three</option>
</select>

Bu şekilde sorun halledilmiş oldu ama buda biraz karmaşık bir kullanım. Yeniden yazdığım form_helper ile yaratılan form nesnelerininin otomatik dolma özelliği varsayılan olarak geliyor. Yukarıdaki kod yerine

$options = array(
‘one’  => ‘One’,
‘two’    => ‘Two’,
‘three’   => ‘Three’
);

echo form_dropdown(‘myselect’, $options, ‘one’);

yazılması yeterli. Form ilk açıldığında hangisi seçili gelecek, kullanıcıya form tekrar gösterilecek ise kullanıcının girdiği veriler neler vs. otomatik yapılıyor. Özelliğin geçerli olduğu fonksiyonlar: form_input, form_textarea, form_multiselect, form_dropdown, form_checkbox, form_radio.

MY_form_helper dosyasını buradan indirebilirsiniz. (Yeni başlayanlar için: dosyayı ./application/helpers/ klsörüne kopyalayın).

Yorumlar: 0 »

Lina Organizasyon

Kategori: Php, Referanslar
Tarih: 20th Mart 2012

Eskişehir Lina Organizasyon

Yorumlar: 0 »

Vineyard Cave Hotel In Cappadocia

Kategori: Php, Referanslar
Tarih: 24th Ocak 2012

Kapadokya nın güzide otellerinden Vineyard Cave Hotel

Aktüel Gazetesi

Kategori: Php, Referanslar
Tarih: 24th Ocak 2012

Kütahya aktüel gazetesinin web gazete sitesi

Delege – Event hakkında

Kategori: C#
Tarih: 19th Ocak 2012

Bu yapı benim aklıma hep mail listelerini getiriyor. Önce bir gurup oluşturursun sonra bir bilgiyi göndermek için sen bir sefer gönder dersin sonra sistem o bilgiyi listedeki herkese gönderir. Aslında Delege – Event yapısıda buna benzer. Önce bir delege oluşturursun (bunu bir kişi olarak düşün). Sonrada bir event oluşturursun. -bunuda bir liste olarak düşünebiliriz- Eventi istediğin kadar Delege ile doldurursun. İhtiyacın oluncada sen eventi çalıştırırsın, o da listedeki bütün delegeleri.

Delegeler fonksiyonları temsil eden yapılardır. Aslında bi işlem yapmazlar. Sadece bağlı oldukları fonksiyonları tetiklerler. Bir delegeyi aşağıdaki şekilde tanımlayabiliriz.

public delegate void BenimDelegem(int parametre);

Delegeler bağlı oldukları fonksiyonlar ile aynı yapıda olmalılardır. Yani yukarıdaki delegeyi bağlayacağınız fonksiyonda void türünde olmalı ve integer bir paratmetre almalı. İsterseniz Event olmadan da direk fonksiyonu delegeye bağlayabilirsiniz

BenimDelegem delege = fonksiyonAdi;

“delege” isminde bir delege oluşturduk ve fonksiyonAdi metoduna bağladık.

Eventler birden fazla -aynı türde- delegeyi barındıran yapılardır. Aşağıdaki şekilde oluşturulurlar.

public event BenimDelegem BenimEventim;

Bir evente aşağıdaki şekilde delege ekleyebilir ve çıkartabilirsiniz.

BenimEventim+= new BenimDelegem(delegenin bağlı olduğu fonksiyon ismi);

BenimEventim-= new BenimDelegem(delegenin bağlı olduğu fonksiyon ismi);

Senaryo şu çok odalı bir işletme düşünelim oda sayısıda dinamik olsun, sürekli yeni odalar eklenebliyor ve çıkabiliyor. Her odada bir buton var müdür gelince personelden birisi odanın butonuna basıyor ve her odada müdürün bulunduğu odanın numarası çıkıyor. Delege yapısı kullanmıyor olsak her oda için ayrı ayrı fonksiyon ( “müdürün bulunduğu odayı ekrana yaz” fonksiyonu) tetiklememiz gerekecekti. Yada odaları (formları) foreach ile okuyup  bu fonksiyonu tetikletebilirdik.

Delege – event yapısı bizim işimizi çok kolaylatıracak. 1 tane müdür geldi diye event oluşturacağız. Ve tüm odaları (delegeleri) bu evente ekleyeceğiz. Bunu görev listesi olarak düşünebiliriz. Evente, müdür hangi odaya geldi ise onun numarasını göndereceğiz. Sonra o bütün delegeleri çalıştıracak yani bütün formlara bizim yerimize müdür şu odada yazacak. İcraata geçelim.

Bir tane oda formumuz olsun. Bunun iki tane methodu olacak:

1.si ekranaYaz metodu. Delege bu methoda mürün kaçıncı odada olduğunu söyleyecek buda kendi formuna yazacak

2.si buttonClick metodu. Müdür bu odaya gelir ise personel bu butona basarak diğer odalara müdür bizim odada diye haber verecek.

Özetleyecek olursak hangi odadan basılırsa basılsın müdür bizim odaya geldi eventi tetiklenecek. Oda görev listesindeki bütün görevleri (yani delegeleri ve dolayısıyla delegelerin çalıştırdığı fonksiyonları) çalıştıracak böylece tek işlem ile bütün odalara bilgi yazılmış olacak. Proje dosyasını buradan indirebilirsiniz.

Yorumlar: 0 » tags: , ,

Yakında yeniyenikutahya…

Kategori: Codeigniter, Php, Referanslar
Tarih: 16th Ocak 2012

Kütahyanın en çok satan yerel gazetesi yenikutahya.com yeni altyapı ve arayüzüyle yakında yayında olacak.

 

Yorumlar: 0 » tags: , ,