Sorgu servisi j-Platform sisteminde tanımlanmış olan sorguları çalıştırmayı sağlayan web servisidir.

Güvenlik

Sorgu servisi j-Platform kullanıcısı güvenliğini kullanır. Servise yollanan SOAP mesajlarında UsernameToken tanımlı olmalıdır ve bu token içinde geçerli ve sisteme bağlanabilen (yasaklanmamış, şifresinin süresi dolmamış... vs) bir j-Platform kullanıcısına ait kullanıcı adı ve şifre bilgisi bulunmalıdır. Bu servisi sadece j-Platform kullanıcıları kullanabilir ve sorgu sonucu dönen değerler servisi kullanan kullanıcı için yetkilendirilmiştir. Yetkilendirmeyi devre dışı bırakmak mümkün değildir.

Servis Erişim Adresi

Bu servise erişmek için j-Platform sistem adresi şöyledir:

http://<sunucu>:<port>/logo/services/DataQueryService?wsdl

Örnek adres: http://172.16.12.53:9080/logo/services/DataQueryService?wsdl

Servis Metodları

  • test (DataQueryParams params) -> DataQueryResult : Servise yollanan parametre ve dönen sonuç nesnelerini test etmek için kullanılan bir metoddur. Herhangi bir anlamlı işlevi yoktur. Sadece diğer metodlarda kullanılan nesnelerin doğru şekilde alınıp verilebildiğini test etmek amacıyla kullanılır. Metoddan dönen örnek bir sorgu sonucudur. Dönen değer herhangi bir sorgu çalıştırılıp elde edilmez, hayali değerlerle örnek bir sonuç oluşturulup dönülür.
  • getBrowserQueryInfo (String browserName, int firm, int period, String language) -> DataQueryBrowserInfo : j-Platform'da kullanılan bir veri listesi (browser) formuna ait sorgu ve filtre tanımlarını almak için kullanılan metoddur. Bu metoda form adı (browserName) mod bilgisi içermeden (MMXFItemBrowser.jfm şeklinde, MMXFItemBrowser%0.jfm geçersizdir) verilir. Kullanılacak firma ve dönem bilgileri firma ve dönem numaraları olacak şekilde verilir. Hangi dildeki formdan filtre değerleri alınacağı da son parametre olan language parametresinde verilir. Dil parametresi için geçerli değerler "TRTR", "ENUS", "DEDE" gibi değerlerdir.
  • first(String queryName, DataQueryParams params, int maxCount, boolean reverse) -> DataQueryResult : j-Platform'da xml dosyalarında tanımlanmış olan sorgulardan birini çalıştırıp ilk sayfa kayıtları almak için kullanılan metoddur. Metoda sorgu adı, sorguyu çalıştırırken kullanılacak sorgu ayarları, istenen kayıt sayısı ve kayıtların ters sırada mı istendiği parametreleri verilir. Kayıt sayısı pozitif bir sayı olmalıdır ve en büyük değeri 50'dir. 50'den büyük bir değer verilse bile bu servis ilk 50 kaydı getirir. Diğer kayıtları almak için sorguyu kalınan noktadan devam ettirecek next metodu kullanılır. Kayıtlar sorguda kullanılan sıranın tersinden alınmak isteniyorsa son parametreye true değeri yollanır.
  • last(String queryName, DataQueryParams params, int maxCount, final boolean reverse) -> DataQueryResult : j-Platform'da tanımlı sorgulardan birini çalıştırıp son sayfa kayıtları almak için kullanılan metoddur. Metoda sorgu adı, sorguyu çalıştırırken kullanılacak sorgu ayarları, istenen kayıt sayısı ve kayıtların ters sırada mı istendiği parametreleri verilir. Kayıt sayısı pozitif bir sayı olmalıdır ve en büyük değeri 50'dir. 50'den büyük bir değer verilse bile bu servis son 50 kaydı getirir. Diğer kayıtları almak için sorguyu kalınan noktadan geri devam ettirecek previous metodu kullanılır. Kayıtlar sorguda kullanılan sıranın tersinden alınmak isteniyorsa son parametreye true değeri yollanır. Bu metod son sayfada kaç kayıt kalacağını hesaplayarak çalışmaz. Örneğin toplam kayıt sayısı 55 ise ve kayıtlar 10ar 10ar sorguyla alınıyorsa bu metod çağrılınca son sayfadaki 5 kayıt değil bu metoddan istenen sayıda kayıt döner. Örneğin metoddan 10 kayıt istendiyse son 10 kayıt döner.
  • next(String queryName, DataQueryParams params, int maxCount, boolean reverse, int refPrimaryKey) -> DataQueryResult: j-Platform'da tanımlı olan sorgulardan birini çalıştırıp verilen kayıttan başlayarak sonraki kayıtları almak için kullanılan metoddur. Metoda sorgu adı, sorguyu çalıştırırken kullanılacak sorgu ayarları, istenen kayıt sayısı, kayıtların ters sırada mı istendiği ve hangi kayıttan itibaren olan kayıtların istendiği parametreleri verilir. Kayıt sayısı pozitif bir sayı olmalıdır ve en büyük değeri 50'dir. 50'den büyük bir değer verilse bile bu servis bulunan ilk 50 kaydı getirir. Diğer kayıtları almak için sorguyu kalınan noktadan devam ettirecek next metodu kullanılır. Kayıtlar sorguda kullanılan sıranın tersinden alınmak isteniyorsa reverse parametresine true değeri yollanır. Son parametre hangi kayıttan itibaren olan kayıtların istendiğini belirtir ve bir kayda ait birincil anahtar değeri olmalıdır. Örneğin ilk sayfa kayıtlar first metodu ile alındıysa bu metoddan dönen kayıtlardan sonuncusuna ait birincil anahtar değeri next metoduna yollanırsa o kayıt hariç, o kayıttan sonra gelen kayıtlar bu metoddan döndürülür.
  • previous(String queryName, DataQueryParams params, int maxCount, boolean reverse, int refPrimaryKey) -> DataQueryResult: j-Platform'da tanımlı olan sorgulardan birini çalıştırıp verilen kayıttan önceki kayıtları almak için kullanılan metoddur. Metoda sorgu adı, sorguyu çalıştırırken kullanılacak sorgu ayarları, istenen kayıt sayısı, kayıtların ters sırada mı istendiği ve hangi kayıttan önceki kayıtların istendiği parametreleri verilir. Kayıt sayısı pozitif bir sayı olmalıdır ve en büyük değeri 50'dir. 50'den büyük bir değer verilse bile bu servis bulunan ilk 50 kaydı getirir. Diğer kayıtları almak için sorguyu kalınan noktadan geri devam ettirecek previous metodu kullanılır. Kayıtlar sorguda kullanılan sıranın tersinden alınmak isteniyorsa reverse parametresine true değeri yollanır. Son parametre hangi kayıttan önceki kayıtların istendiğini belirtir ve bir kayda ait birincil anahtar değeri olmalıdır. Örneğin son sayfa kayıtlar last metodu ile alındıysa bu metoddan dönen kayıtlardan ilkine ait birincil anahtar değeri previous metoduna yollanırsa o kayıt hariç, o kayıttan önce gelen kayıtlar bu metoddan döndürülür
  • search(String queryName, DataQueryParams params, int maxCount, boolean reverse, int refPrimaryKey, int searchComparison) -> DataQueryResult: j-Platform'da tanımlı olan sorgulardan birini çalıştırıp verilen kayıta göreceli olarak verilen karşılaştırma kriterine göre belirlenen kayıtları almak için kullanılan metoddur. Metoda sorgu adı, sorguyu çalıştırırken kullanılacak sorgu ayarları, istenen kayıt sayısı, kayıtların ters sırada mı istendiği, hangi kaydın referans alınacağı ve referans kaydına göre karşılaştırma kriteri parametreleri verilir. Kayıt sayısı pozitif bir sayı olmalıdır ve en büyük değeri 50'dir. 50'den büyük bir değer verilse bile bu servis bulunan ilk 50 kaydı getirir. Diğer kayıtları almak için sorguyu kalınan noktadan devam ettirecek search metodu kullanılır. Kayıtlar sorguda kullanılan sıranın tersinden alınmak isteniyorsa reverse parametresine true değeri yollanır. refPrimaryKey parametresi hangi kaydın referans alınacağını belirtir ve bir kayda ait birincil anahtar değeri olmalıdır. Son parametre olan karşılaştırma kriteri ise sayısal bir değerdir ve referans kaydına göre nasıl bir karşılaştırma uygulanacağını belirtir. Kabul edilen değerler ve anlamları şöyledir:
                                0 : Referans kaydı hariç bu kayıttan önceki kayıtlar (less than)
                                1 : Referans kaydı dahil bu kayıttan önceki kayıtlar (less than or equal to)
                                2 : Referans kaydına eşit kayıtlar (equal to)
                                3 : Referans kaydı dahil bu kayıttan sonraki kayıtlar (greater than or equal to)
                                4 : Referans kaydı hariç bu kayıttan sonraki kayıtlar (greater than)


  • select(String queryName, DataQueryParams params, int maxCount) -> DataQueryResult : j-Platform'da tanımlı olan sorgulardan gezinim (navigation) desteklemeyenlerini çalıştırmak için kullanılan metoddur. Metoda sorgu adı, sorguyu çalıştırırken kullanılacak sorgu ayarları ve istenen kayıt sayısı parametreleri verilir. Kayıt sayısı pozitif bir sayı olmalıdır ve en büyük değeri 50'dir. 50'den büyük bir değer verilse bile bu servis ilk 50 kaydı getirir. Bu tür sogular için 50 kayıttan fazlasını almak mümkün değildir. Bu sorgular gezinim desteklemediği için sonraki kayıtları almak mümkün değildir. Bu tür sorgular zaten çok fazla sayıda kayıt dönmezler ve genelde hesaplama, toplam alma ya da kayıt sayısı alma gibi amaçlarla tanımlanmışlardır.
  • getRowCount(final String queryName, DataQueryParams params) -> DataQueryCountResult : j-Platform'da tanımlı olan sorgulardan birini çalıştırıp sorgudan dönen kayıt sayısını almak için kullanılan metoddur. Metoda sorgu adı ve sorgu çalıştırma ayarları parametreleri verilir.

Serviste Kullanılan Veri Yapıları

DataQueryResult

DataQueryResult nesnesi sorgudan dönen sonuçları içeren nesnedir. Sorgu çalıştırmanın başarılı olup olmadığını, başarısız olduysa hatayı açıklayan mesajı, başarılı olduysa sorgu sonucu dönen satırları içerir: 

  •   successful : Sorgunun başarılı olup olmadığını belirtir.
  •   errorMessage : Sorgu başarısız olduysa hata mesajını içerir.
  •   rows : Sorgu sonucu dönen satırları içerir. Bu değer DataQueryResultRow nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryResultRow nesnesini içerir.

DataQueryResultRow

DataQueryResultRow nesnesi sorgudan dönen her bir satıra karşılık gelen nesnedir:

  • primaryKey : Kayda ait birincil anahtar değeridir.
  • columns : Kaydın kolonlarıdır. Bu değer DataQueryRowProperty nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryRowProperty nesnesini içerir.

DataQueryRowProperty

DataQueryRowProperty nesnesi sorgudan dönen her bir kayda ait bir kolonun karşılığı olan nesnedir:

  • columnAlias : Kolonun adıdır. Sorguda kolon için tanımlanmış tekil kolon adıdır.
  • columnValue : Kolonun değerinin dizgi / String olarak ifade edilmiş şeklidir. Burada nesneden string'e dönüştürme kuralları SOAP mesajlarında uygulanan dönüşümle aynıdır. Ayrıntılı bilgi için Axis kütüphanesine bakılabilir.
  • columnType : Kolonun veri türüdür. Burada kullanılan olası türler xml şemasında tanımlı tür tanımlarıdır. Tür tanımları için http://www.w3.org/2001/XMLSchema adresindeki xml şema tanımlarına başvurulabilir.

DataQueryBrowserInfo

DataQueryBrowserInfo nesnesi j-Platform'da kullanılan bir veri listesi (browser) formuna ait sorgu ve filtre tanımlarını içeren nesnedir.

  • successful : İşlemin başarılı olup olmadığını belirtir. Bu işlem istenen form bulunamadıysa ya da form bir veri listesi formu değilse, ya da formda sorgu tanımı yapılmamışsa başarısız olabilir.
  • errorMessage : İşlem başarısız olduysa hata mesajını içerir.
  • queryName : Forma ait sorgu adıdır.
  • filters : Formda tanımlanmış olan filtrelerdir. Bu değer DataQueryBrowserFilter nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryBrowserFilter nesnesini içerir.

DataQueryBrowserFilter

DataQueryBrowserFilter nesnesi veri listesi formlarında tanımlanmış olan filtre nesnesine karşılık gelen nesnedir.

type : Filtrenin türü belirtir. Olası değerleri :

  •  string : Dizgi filtresi
  •  string-range : Dizgi aralığı filtresi. Aralık filtrelerinde iki değer verilip bu iki değer arası kayıtlar filtrelenebilir.
  •  date : Tarih filtresi
  •  date-range : Tarih aralığı filtresi
  •  numeric : Sayısal alan filtresi
  •  numeric-range : Sayı aralığı filtresi
  •  time : Saat filtresi
  •  time-range : Saat aralığı filtresi
  •  group-selection : Bir liste elemanlarından birden fazlasının seçilerek bu değerlere uyan kayıtların filtrelenmesini sağlayan grup filtresi. Seçilen her değer sorguda OR ile aranır. Örneğin fatura türü: listelenen türlerin hepsi getirilir.
  •  list-selection : Bir liste elemanlarından sadece birinin seçilerek bu değere göre kısıtlama yapılmasını sağlayan seçim filtresi. Örneğin kayıt durumu: kullanım dışı - kullanımda seçeneklerinden sadece seçilene uyan kayıtlar getirilir.

caption : Filtrenin başlığıdır. Veri listesi formunda bu filtre hangi başlıkla görüntüleniyorsa bu değer onu içerir.

id : Filtrenin tekil anahtar değeridir. Bu değerin kaybedilmemesi gerekir çünkü sorguya bu filtreyi uygulamak için bu değer kullanılır.

range : Filtrenin aralık filtresi olup olmadığını belirtir. Aralık filtrelerinde iki değer aralığı için filtreleme yapmak mümkündür.

list : Filtre liste kullanıyorsa (grup ya da seçim filtresi ise), filtreye ait seçim listesidir. Örnek bir seçim listesi şöyledir: Tümü~0 |Kullanımda~1|Kullanım Dışı~2 Bu örnek listede her seçenek | ile ayrılmıştır. Her seçenek (SeçenekAdı)~(Değer) olacak şekilde yazılmıştır. Bir seçeneği açmak için Değer'in kullanılması gerekir. SeçenekAdı sadece kullanıcıya anlamlı bir açıklama göstermek için kullanılır.

DataQueryParams

DataQueryParams nesnesi sorgu ayarlarını içeren nesnedir. Bu servisteki en karmaşık nesne budur.

  • disableAllTerms : Sorguda kullanılan tüm kısıtlama ifadelerinin (term) kapatılmasını sağlar. Bu özellik true iken sorguda sadece enabledTerms ile belirtilen kısıtlama ifadeleri açık kalır, kalan tüm kısıtlama ifadeleri kapatılır.
  • disabledTerms : Sorguda kullanılan kısıtlama ifadelerinden (term) hangilerinin kapatılacağını belirtir. Kapatılmak istenen kısıtlama ifadeleri "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "T1,T5,T40"
  • enabledTerms : Sorguda kullanılan kısıtlama ifadelerinden (term) hangilerinin açılacağını belirtir. Açılmak istenen kısıtlama ifadeleri "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "T1,T5,T40"
  • mainTableParams : Sorgunun ana tablosuna ait kolon ve sıralama ayarlarını içerir.
  • tableLinksParams : Sorguda kullanılan link (join yapılan) tablolara ait kolon ve sıralama ayarlarını içerir. Bu değer DataQueryTableParams nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryTableParams nesnesini içerir.
  • disableAllLinks : Sorguda kullanılan tüm link (join yapılan) tabloların kapatılmasını sağlar. Bu özellik true iken sorguda sadece enabledTableLinks ile belirtilen tablolar join edilir, kalan tüm tablolar kapatılır.
  • disabledTableLinks : Sorguda kullanılan link (join yapılan) tabloların hangilerinin kapatılacağını belirtir. Kapatılmak istenen tablolar "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "Link1,Link2,Link5"
  • enabledTableLinks : Sorguda kullanılan link (join yapılan) tabloların hangilerinin açılacağını belirtir. Açılmak istenen tablolar "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "Link1,Link2,Link5"
  • negateAllTerms : Sorguda kullanılan kısıtlama ifadelerinin tamamının tersine çevrileceğini belirtir. Örneğin kısıtlama ifadesi "COL = 3" ise bu değer true yapılırsa ifade "COL <> 3" olur. Bu şekilde tüm kısıtlama ifadeleri tersine çevrilir.
  • negatedTerms : Sorguda kullanılan kısıtlama ifadelerinden hangilerinin tersine çevrileceğini belirtir. Tersine çevrilmek istenen kısıtlama ifadeleri "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "T1,T5,T40"
  • globalOrderName : Sorguda tanımlı global sıralamalardan hangisinin kullanılacağını belirtir.
  • userOrder : Sorguya bir kullanıcı sorgusu tanımlamayı sağlar. Sorguda sıralama olarak tanımlı olmayan kolonlar üzerinden sıralama yapmayı sağlar. Örnek değer: "Col1,Col5" ise ORDER BY kısmına Col1,Col5 gelir.
  • customization : Çalışacak sorgu bir uyarlama sorgusu ise sorgunun tanımlandığı uyarlama projesine ait GUID alanıdır.
  • maxRowCount : Sorgunun döneceği maksimum satır sayısıdır.
  • firm : Sorguyu çalıştırmak için j-Platform'a bağlanılırken (login) hangi kurumun kullanılacağını belirtir. Kurumun nosudur. Bu değer geçerli bir kurum nosu olmalıdır yoksa j-Platform'a bağlantı (login) başarısız olur ve sorgu çalıştırılamaz.
  • period : Sorguyu çalıştırmak için j-Platform'a bağlanılırken (login) hangi dönemin kullanılacağını belirtir. Dönemin nosudur. Bu değer geçerli bir dönem nosu olmalıdır yoksa j-Platform'a bağlantı (login) başarısız olur ve sorgu çalıştırılamaz.
  • setValue : Sorgu içinde kullanılan tablolarda set değişkeni kullanılıyorsa bu değişkenin hangi değerinin kullanılacağını belirtir.
  • parameterValues : Sorguda tanımlı olan parametrelerin değerlerinin tanımlandığı nesneleri içerir. Bu değer DataQueryParameterValue nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryParameterValue nesnesini içerir.
  • variableValues : Sorguda tanımlı olan variable'ların değerlerinin tanımlandığı nesneleri içerir. Bu değer DataQueryVariableValue nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryVariableValue nesnesini içerir.
  • columnFilters : Sorguya yollanmak istenen kolon filtreleridir. Bu filtreler sorguda tanım yapılmasa da bir kolona göre filtreleme yapabilme imkanı sağlarlar. Bu değer DataQueryColumnFilter nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryColumnFilter nesnesini içerir.
  • browserFilters : Sorgu eğer bir veri listesi formuna aitse, bu formda tanımlı olan filtreleri sorguya uygulamak için kullanılan nesnedir.
  • forceSubqueryRownum : Sorgu için kullanılacak RowNum kısıtının iç sorgu olarak yapılmasını sağlar. Bu özellik genellikle Oracle'da oluşan performans sıkıntılarını gidermek için konmuştur. Bu değer true ise, sorguda kayıt sayısı kısıtı sağlamak için sorgu kayıt sayısını kısıtlayan bir sorguya iç sorgu halinde çalışır. Örneğin SELECT * FROM (SELECT .... WHERE .....) WHERE ROWNUM < 50. Burada parantez içinde asıl sorgu vardır. Dıştaki sorgu sadece kayıt sayısını sınırlamaya yarar.
  • forceWhereRownum : Sorgu için kullanılacak RowNum kısıtının sorgunun WHERE kısmına eklenmesini sağlar. Örneğin: SELECT ..... WHERE .... AND ROWNUM < 50
  • forceNoHint : Sorguda joinler ve sıralamalar için hint kullanımını kapatmayı sağlar.
  • noOrder : Sorgudan ORDER BY kısmının çıkarılmasını sağlar. Sorgu veri tabanındaki kayıt sıralamasıyla çalışır.
  • noSqlRowlimit : Sorguda SqlRowLimit'in kapatılmasını sağlar.
  • noJoins : Sorgunun hiç join yapmamasını sağlar.
  • onlyKeys : Sorguda sadece birincil anahtar değerlerinin dönmesini sağlar. Diğer tüm kolonlar sorgudan çıkarılır.

DataQueryTableParams

DataQueryTableParams nesnesi sorguda kullanılan tablolara ait kolon ve sıralama ayarlarının yapılmasını sağlayan nesnedir.

  • tableAlias : Ana tablo haricindeki tablolar için ayarların hangi tablo için yapıldığını belirten tablo adıdır. Burada tabloya ait fiziksel isim değil, sorguda tanımlanmış olan alias (takma isim) kullanılır.
  • disableAllColumns : Tabloya ait tüm kolonların kapatılmasını sağlar. Bu değer true ise, sadece enabledColumns ile belirtilen kolonlar seçilir.
  • disabledColumns : Tablonun hangi kolonlarının kapatılacağını tanımlar. Kapatılmak istenen kolonlar "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "Col1,Col5,Col23"
  • enabledColumns : Tablonun hangi kolonlarının açılacağını tanımlar. Açılmak istenen kolonlar "," (virgül) ile ayrılmış olarak verilir. Örnek değer: "Col1,Col5,Col23"
  • orderName : Tabloya ait sorgu tanımında tanımlanmış sıralamalardan hangisinin kullanılacağını belirtir. Örnek değer: "byOrder1"
  • orderDescending : Tabloya ait kullanılacak olan sıralama tanımı verildiyse bu tanımın azalan mı olacağını belirtir.

DataQueryParameterValue

DataQueryParameterValue nesnesi sorguda tanımlı parametrelere yollanacak değerleri tanımlamayı sağlayan nesnedir.

  • parameterName : Parametrenin adıdır. Bu isim sorgu tanımında kullanılan parametre adı olmalıdır. Örnek değer: "P_1" ya da "P_STATUS"
  • parameterType : Parametrenin türünü belirtir. Burada kullanılan olası türler xml şemasında tanımlı tür tanımlarıdır. Tür tanımları için http://www.w3.org/2001/XMLSchema adresindeki xml şema tanımlarına başvurulabilir.
  • parameterValue : Parametre değerinin dizgi / String olarak ifade edilmiş şeklidir. Burada nesneden string'e dönüştürme kuralları SOAP mesajlarında uygulanan dönüşümle aynıdır. Ayrıntılı bilgi için Axis kütüphanesine bakılabilir.


DataQueryVariableValue

DataQueryVariableValue nesnesi sorguda tanımlı variable'lara yollanacak değerleri tanımlamayı sağlayan nesnedir.

  • variableName : Değişkenin adıdır. Bu isim sorgu tanımında kullanılan değişken adı olmalıdır. Örnek değer: "V_1" ya da "V_STATUS"
  • variableType : Değişkenin türünü belirtir. Burada kullanılan olası türler xml şemasında tanımlı tür tanımlarıdır. Tür tanımları için http://www.w3.org/2001/XMLSchema adresindeki xml şema tanımlarına başvurulabilir.
  • variableValue : Değişken değerinin dizgi / String olarak ifade edilmiş şeklidir. Burada nesneden string'e dönüştürme kuralları SOAP mesajlarında uygulanan dönüşümle aynıdır. Ayrıntılı bilgi için Axis kütüphanesine bakılabilir.

DataQueryColumnFilter

DataQueryColumnFilter nesnesi sorguda karşılığı olan kısıtlama ifadesi ya da parametre tanımlanmamış olduğu halde herhangi bir kolon üzerinden filtreleme yapmayı sağlayan filtre tanımlarıdır.

  • tableAlias : Filtreleme için kullanılan kolonun ait olduğu tablonun takma adıdır. Eğer kolon ana tabloya aitse bu değer boş kalabilir.
  • columnName : Filtreleme için kullanılan kolonun adıdır. Burada kolonun fiziksel adı değil sorguda tanımlanan takma adıdır.
  • value : Filtreleme için kullanılacak değerdir.
  • operator : Filtreleme yaparken kullanılacak karşılaştırma işlemidir. Bu sayısal özelliğin olası değerleri ve anlamları şunlardır:

 1 : Büyüktür veya eşittir (>=)

 2 : Büyüktür (>)

 3 : Benzerdir (LIKE)

 4 : Verilen değerler içindedir (IN)

 5 : Eşittir (==)

 6 : Küçüktür veya eşittir (<=)

 7 : Küçüktür (<)

 9 : Eşit değildir (<>) (!=)

 

DataQueryBrowserFilters

DataQueryBrowserFilters nesnesi sorgu bir veri listesi formuna aitse bu formda tanımlı filtreleri sorguya uygulamayı sağlayan nesnedir.

  • browserName : Sorgunun ait olduğu veri listesi formunun adıdır. Bu değer formun mod bilgisi içermeyen adıdır. Örneğin: MMXFItemBrowser.jfm geçerli iken MMXFItemBrowser%0.jfm geçersizdir. Bu form adı olmadan verilen filtrelerin üründe karşılıkları bulunamayacağı için filtreler uygulanamaz. Bu yüzden filtre uygulama isteniyorsa bu filtreler hangi forma aitse onun adı mutlaka belirtilmelidir.
  • filters : Filtrelerin değerleridir. Bu değer DataQueryBFilterValue nesnelerinden oluşan bir array yapısındadır. Array'in her elemanı DataQueryBFilterValue nesnesini içerir.


DataQueryBFilterValue

DataQueryBFilterValue nesnesi veri listesi formundan alınmış olan filtrelerin her birine karşılık gelen nesnedir.

  • id : Filtreye ait birincil anahtar değeridir. Bu değer veri listesi formu bilgilerini içeren DataQueryBrowserFilter nesnesinin id alanına karşılık gelir. Bu değer karşılığında formda filtre bulunamazsa bu filtre uygulanamaz.
  • value : Filtrenin değeridir. Aralık filtreleri söz konusu ise filtre değerleri "," (virgül) ile ayrılmış olarak verilir. Örneğin "A,C" değeri için aralık filtresi A'dan C'ye kadar olan değerler için filtreleme yapar. Tarih filtrelerinde beklenen değer "yyyy-MM-dd HH:mm:ss" biçimine uygun olmalıdır. Örneğin: "2009-12-31 23:59:12" gibi (31 Aralık 2009, Saat 23:59:12 değerine karşılık).
  • type : Filtrenin türüdür. DataQueryBrowserFilter nesnesinin type alanıyla aynı değerleri alabilir.





Telif HakkıKullanım KoşullarıGizlilik
Copyright © 2018 Logo Yazılım