KBS TKYS Sisteminde ExtJS Grid’de Hücre Değerlerini Otomatik Güncelleme

KBS TKYS sistemi, tasınır istek bölümünde tek tek yazmanıza gerekkalmadan yapabilirsiniz Türkiye’de kamu kurumlarının kaynak yönetimini kolaylaştıran güçlü bir yazılım altyapısıdır. Bu sistemde veri tabanlı tablolar genellikle ExtJS tabanlı gridler ile sunulur. Özellikle malzeme ve stok yönetimi ekranlarında sayılar sıkça yer alır. Bazen, kullanıcıların 0 olan hücreleri tek tek manuel güncellemesi gerekebilir. Bu işlem hem zaman kaybına yol açar hem de hata riskini artırır.

Neyse ki, JavaScript ile ExtJS grid’in store verisini güncelleyerek tüm 0 değerleri otomatik olarak değiştirmek mümkündür. Bu makalede, bu işlemi nasıl güvenli ve etkili bir şekilde yapabileceğinizi göstereceğiz.

Otomatik Güncelleme Kodu

Aşağıdaki JavaScript kodu, tüm ExtJS grid bileşenlerini tarar ve store’da değeri 0 olan tüm alanları 99999 ile günceller: f12 ile consolu acıp calıştırabilirsiniz

Ext.ComponentMgr.all.each(function(c){
    if (c.getStore) {  // GridPanel olanlar
        var store = c.getStore();
        if (store) {
            store.each(function(record){
                // İlk kayıttan field adlarını çıkar
                var fields = Object.keys(record.data);
                fields.forEach(function(f){
                    if (record.get(f) === 0) {
                        record.set(f, 99999);
                    }
                });
            });
        }
    }
});

Kod Açıklaması:

  1. Ext.ComponentMgr.all.each → Sayfadaki tüm ExtJS componentlerini tarar.
  2. component.getStore → GridPanel olan bileşenleri filtreler.
  3. store.each → Grid’in her satırını (record) gezer.
  4. Object.keys(record.data) → Satırdaki tüm alanları alır.
  5. record.set(fieldName, 99999) → Değeri 0 olan alanları 99999 ile günceller. 99999 olan yere farklı bir rakam yapabilrisiniz

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir