How to Use the LIKE Operator in Dynamics 365 Queries?

Dynamics 365 Sorgularında LIKE Operatörü Nasıl Kullanılır?

Dynamics 365 Finance and Operations'da arama işlemlerini özelleştirmek ve esnek hale getirmek için SysQuery::valueLike() metodu oldukça kullanışlıdır. Bu blog yazısında, LIKE operatörünü kullanarak bir veritabanı sorgusunu nasıl oluşturabileceğinizi ve sonuçları nasıl filtreleyebileceğinizi göstereceğim.

Kod Örneği

Aşağıdaki örnekte, bir LineOfBusiness tablosundaki açıklama (Description) alanında bir kelime ya da karakter dizisi geçen kayıtları sorgulamak için SysQuery::valueLike() metodunu kullanıyoruz:

public static LineOfBusiness runQueryLike(Description _description)
{
    LineOfBusiness lineOfBusiness;

    Query query = new Query();
    QueryBuildDataSource qbds = query.addDataSource(tableNum(LineOfBusiness));

    QueryBuildRange qbr = qbds.addRange(fieldNum(LineOfBusiness, Description));
    qbr.value(SysQuery::valueLike(_description));

    QueryRun qr = new QueryRun(query);

    while(qr.next())
    {
        lineOfBusiness = qr.get(tableNum(LineOfBusiness));

        return lineOfBusiness;
    }

    return lineOfBusiness;
}

Bu Kod Ne Yapar?

  • SysQuery::valueLike(_description): Gelen _description parametresine göre, SQL LIKE operatörünü kullanarak bir filtre uygular.

  • QueryBuildDataSource ve QueryBuildRange: Sorgunun temel yapı taşlarını oluşturur. QueryBuildRange, belirli bir alan üzerinde filtre uygulamak için kullanılır.

  • Dönen Değer: Sorguya uyan ilk kayıt döndürülür.

Önemli Notlar

  • LIKE operatörü, büyük/küçük harf duyarlılığına dikkat eder. Bu nedenle, ihtiyaca göre büyük/küçük harf duyarlılığını kaldırmak için ek kontroller yapılabilir.

  • Performans açısından dikkatli olunmalıdır. Çok geniş kapsamlı bir LIKE araması, büyük tablolar üzerinde yavaş çalışabilir.