Archive for Ekim 18th, 2022

SysDa Sınıflarını Kullanarak Sorgu Nasıl Yazılır?

Bu yazıda Dynamics 365 Finance and Operations içinde sorgu yazmanın yeni bir yöntemi olan SysDa API ‘ından bahsedeceğim. Extend edilebilir yapısıyla neredeyse X++ ile yapılan tüm DB işlemlerini destekliyor. Performansı Normal select ifadesiyle nerdeyse aynı. Ayrıca set-based işlemleri destekliyor. (Update_recordset, insert_recordset, and delete_from)

Gelelim örneğimize, Aşağıdaki gibi bir select ifadesimi SysDa ile nasıl yapacağımız bakalım.

InventTrans inventTrans;

while select ItemId , Qty from inventTrans

where inventTrans.Qty > 30000000

{

info(strFmt("%1 %2" , inventTrans.ItemId , inventTrans.Qty));

}

Şimdi SysDa ile yazalım:

InventTrans inventTrans;

var sysDaQ = new SysDaQueryObject(InventTrans);

var s = sysDaQ.projection()

.add(fieldStr(InventTrans, ItemId ))

.add(fieldStr(InventTrans, qty));

sysDaQ.WhereClause(new SysDaGreaterThanExpression(

new SysDaFieldExpression(inventTrans, fieldStr(InventTrans, qty)),

new SysDaValueExpression(30000000)));

var sysDaSO = new SysDaSearchObject(sysDaQ);

var sysDaSS = new SysDaSearchStatement();

while (sysDaSS.findNext(sysDaSO))

{

info(strFmt("%1 %2" , inventTrans.ItemId , inventTrans.Qty));

}

Bu yazıda SysDa API’ına giriş yaptım. Daha ileri seviye örneklerle anlatmaya devam edeceğim. Select mi Query mi sorunu çok sorardık. Artık Select mi, Query mi, SysDa mı diyeceğiz gibi duruyor.

Selamlar.

www.fatihdemirci.net

TAGs: SysDa, Microsoft Dynamics 365, MsDyn365FO, MsDyn365,  X++, Azure DevOps,