Sorgu üreteci, SAP Business One içerisinde, SQL veya HANA Studio çalıştırmadan danışman ve son kullanıcıların sistemde script yazmasına ve çalıştırmasına imkan veren bir SAP Business One aracıdır. Crystal Report ile karşılaştırıldığında bazı eksiklikleri bulunmaktadır. Örnek vermek gerekirse, sorgu üretecinde eklediğiniz bir parametrenin adını düzenleyemezken Crystal Report ile bunu yapabilirsiniz.
Bu yazıda “sorgu üretecinde opsiyonel parametre nasıl eklenir?” sorusunu yanıtlayacağız.
Bilindiği üzere, parametre eklemek istiyorsak where koşulu altında filtrelemek istediğimiz alanın değeri sorguyu çalıştırırken verebilmek için [%0] şeklinde koşul değeri veriyoruz. Örnek üzerinden ilerleyelim:
Kullanıcı iptal edilen satış siparişleri dışındaki tüm siparişleri kalem detayları ile birlikte listelemek istemektedir. Bu sorgunun sonucu 250.000 satırdır. Bu da sorgu çalışırken belli bir süre beklemeniz anlamına gelmektedir. Kullanıcının bu durumdan rahatsız olduğunu, genellikle tüm sorguyu çekmesi gerekmediğini farz edelim. Nadirende olsa tüm sonuçlara erişmek isteyebilir ancak genellikle belirli bir kaleme göre sorguyu çekmek istemektedir.
İhtiyaç duyulacak sorgu şuna benzer olacaktır
SELECT T0."CardName", T1."ItemName", T1."LineTotal"
FROM ORDR T0 INNER JOIN RDR1 T1 ON T0."DocEntry"=T1."DocEntry"
WHERE T0."CANCELED"='N' AND T1."ItemName"=[%0]
Parametreyi opsiyonel yapmak için where koşulunu aşağıdaki şekilde kullanmanız gerekmektedir:
WHERE T0."CANCELED"='N' AND (T1."ItemName"=[%0] OR T1."ItemName"='')
*OR kullanıldığı durumlarda parantez kullanımı önemlidir.
Ismail Bedirhan ORHAN
Son Yorumlar