Form Özelleştirme – Sorgu Yönetimi

Tanım

Form Özelleştirme içerisinde yazılan javascript özelleştirmelerinde veritabanından sorgu ile veri çekilmesi, güvenlik gereği farklı bir yapıda yapılmaktadır. Bu noktada Form Özelleştirme'de Sorgu Yönetimi devreye girmektedir.

Kullanımı

Yazılan bilgiler tüm sayfalar için geçerlidir. Form özelleştirme için kullanacağınız sorguların anahtar kelimeleri burada yazılır. Hangi tablodan ya da viewdan, hangi kolonların çekilebileceğine burada belli sınırlar verilmiş olunur.


Anahtar Kelime: Sorgu içerisinde ilgili sorguyu çekmek için kullanılacak anahtar kelimedir.
Metod Tipi: "Stored Procedure" veya "View" seçilebilir. "Stored Procedure" seçilirse javascript kodunda ek olarak parametre gönderilmesi gerekmektedir. "View metodu" ile tablo veya view çağırılabilir.
Metot Adı: Hangi prosedürün ya da viewun kullanılacağı bilgisi yazılır.
Erişilir Kolonlar: Kullanılan metod tipinden dönen kolonlardan hangilerinin çekileceğinin tanımlandığı kısımdır. Tüm kolonlar için * (yıldız) kullanılır.
Güncelleme Tarihi: İlgili özellik grubu üzerinde yapılan son değişiklilk tarihidir.
Açıklama: Özellik grubu hakkında açıklama yazılabilen alandır.

Ekran

Görünüm

Ayarlar > Portal Ayarları > Form Tasarımları > Sorgu Yönetimi ile ulaşılır.

Bu noktada özelleştirme yapılan "form tasarımı" içerisinde veritabanından sorgu çekme işlemi için aşağıdaki gibi şekilde yapılması gerekmektedir;


var sql= $net.b2bdataconnector().executeSelectQuery("ANAHTARKELİME");


Ör1
var sql= $net.b2bdataconnector().executeSelectQuery("ABC");
alert(sql[0].VERSION);

 
Ör2
var sql= $net.b2bdataconnector().executeSelectQuery("ABC");
alert(sql[0].DATE_OF_INSTALLATION);
**** Bu örneklerde sorgu işlemi işlem ekran görüntüsü tanımları gereği SELECT * FROM PRT_VERSION olarak çalışır.

Metot Tipi

View


Tablo ve Viewlar için kısıt ve sıralama ile sorgu çekilmek isteniyorsa metot tipi 'view' olarak seçilmeli ve from içerisinde sorgu aşağıdaki formatta yazılmalıdır;


var sql= $net.b2bdataconnector().executeSelectQuery("ANAHTARKELİME","KISIT","SIRALAMA");


Örnekler:

  1. Aşağıdaki işlem SELECT * FROM PRT_VERSION olarak çalışırken:

    var sql= $net.b2bdataconnector().executeSelectQuery("ABC");
    alert(sql.length);

  2. Aşağıdaki işlem SELECT * FROM PRT_VERSION WHERE VERSION='3.0.3' olarak çalışır:

    var sql= $net.b2bdataconnector().executeSelectQuery("ABC","VERSION='3.0.3'");
    alert(sql.length);

  3. Aşağıdaki işlem ise SELECT * FROM PRT_VERSION WHERE VERSION='3.0.3' ORDER BY VERSION DESC olarak çalışır:

    var sql= $net.b2bdataconnector().executeSelectQuery("ABC","VERSION='3.0.3'","VERSION DESC");
    alert(sql.length);



StoredProcedure

Sorgu içerisnde prosedür çalıştırılıp sonuç döndürülmek metot tipi 'StoredProcedure' olarak seçilmeli ve from içerisinde sorgu aşağıdaki formatta yazılmalıdır;


  • Parametresi varsa;

var sql= $net.b2bdataconnector().executeSelectQuery("ANAHTARKELİME","Parametre1;Parametre2");


  • Parametresi yoksa;

var sql= $net.b2bdataconnector().executeSelectQuery("ANAHTARKELİME",";");



Veritabanı İşlemleri

PRT_FORMQUERYMANAGEMENT


Sorguların kaydedildiği tablodur.

  • STORE_ID Tamsayı alanıdır, mağaza kodunu içerir.
  • ID Tamsayı alanıdır, primary keydir, unique incremental alandır.
  • UNIQUE_KEY 30 karakter, 'Anahtar Kelime' kolonu alanıdır.
  • METHOD_TYPE Metod tipi bilgisini içerir. 0 ise view, 1 ise StoredProcedure'dur.
  • METHOD_NAME Metod adı bilgisini içerir. Çalışacak tablo, view ya da prosdür adını içerir.
  • ALLOWED_COLUMNS İzin verilen kolonların isimlerini içerir. * ise tümü çekilir.
  • INSERT_DATE Kaydetme tarihi bilgisini içerir, tipi datetime'dır.
  • INSERTED_BY Kaydetme işlemi yapan kişi bilgisini içerir.
  • UPDATE_DATE Güncelleme tarihi bilgisini içerir, tipi datetime'dır.
  • UPDATED_BY Güncelleme işlemi yapan kişi bilgisini içerir.
  • DESCRIPTION Sorgu için not düşülecek açıklamanın bulunduğu, 'Açıklama' kolonu bilgisini içerir.


Page viewed 3255 times by 3 users since Dec 16, 2016