Dialogdan alınan tarihleri range olarak query’ye eklemek

Merhaba
Rapor yaparken diyalog alanından aldığınız başlangıç ve bitiş tarihlerini nasıl query’e range olarak ekleneceğini anlatacağım .
Öncelikle  classdecleretaion da  değişkenlerimizi tanımlayalım.
public class ReportRun extends ObjectRun
{
DialogField      dfStartDate;
DialogField      dfEndDate;
TransDate        startDate;
TransDate        endDate;
}
Daha sonra dialog metodunda şunları yazalım

public Object dialog(Object _dialog)
{
DialogRunBase       dialog;
;
dialog = _dialog;
dfStartDate = dialog.addField(typeid(TransDate),”Başlangıç Tarihi”);
dfEndDate = dialog.addField(typeid(TransDate),”Bitiş Tarihi”);
return dialog;
}
Şimdi de dialogdaki değerleri değişkenlerimize atayalım.
public boolean getFromDialog()
{
;
startDate = dfStartDate.value();
endDate   = dfEndDate.value();
return true;
}
eğer değerleri kontrol etmek isterseniz şunu yapabilirsiniz
if(!endDate)
endDate = DateTimeUtil::date(datetimeutil::maxValue()); // Maksimum değeri atar
if(!startDate)
startDate =DateTimeUtil::date(datetimeutil::minValue()); //  Minimum değeri atar
Son olarak fatch metoduna nasıl range olarak ekleyebiliriz onu görelim. örnek olarak purchline tablosunu seçtim.
public boolean fetch()
{
boolean ret;
Query                                      q;
QueryRun                              qRun;
QuerybuildDataSource    qbd;
QuerybuildRange               qbr;
PurchLine           tmpPurchLine;
;
q         = element.query();
qbd    = element.query().dataSourceNo(1);
qbr    = qbd.addRange(fieldnum(PurchLine,CreatedDate));// kriteri vereceğim tablonun tarih alanı
qbr.value(sysquery::range(startDate,endDate));
qRun = new QueryRun(q);
while(qRun.next())
{
tmpPurchLine = qrun.get(tablenum(PurchLine));
// buraya diğer işlemlerinizi yazabilirsiniz
element.send(tmpPurchLine);
}

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Dijital Dönüşümünüzü AI İle Hızlandırın

Dynamics 365 ve AI destekli çözümlerle iş süreçlerinizi optimize edin, verinizi anlamlı içgörülere dönüştürün ve büyümenizi sürdürülebilir hale getirin.

AI-Ready Enterprise Partner

Microsoft Dynamics 365 ve yapay zekâ çözümleriyle kurumsal sistemlerinizi güçlendirir, operasyonel karmaşıklığı azaltır ve geleceğe hazır bir mimari tasarlarız.

DMR Göztepe Merkez Ofis

Eğitim Mah. Hızırbey Cad. No:118/5 D:1 Kadıköy İstanbul

Marmara Üniversitesi Göztepe Kampüsü Teknopark

Tel: +90 216 470 79 49

E-posta: info@dmrbt.com

DMR Başıbüyük Ofis

Başıbüyük Mahallesi Süreyyapaşa Başıbüyük Yolu Sk. No: 4/7 Maltepe İstanbul

Marmara Üniversitesi Başıbüyük Kampüsü Teknopark

Tel: +90 216 470 79 49

E-posta: info@dmrbt.com