Skip links

Dialogdan alınan tarihleri range olarak query’ye eklemek


Notice: Trying to access array offset on value of type bool in /var/www/vhosts/dmrbt.com/httpdocs/wp-content/themes/boo/rella/extensions/aq_resizer/aq_resizer.php on line 117

Notice: Trying to access array offset on value of type bool in /var/www/vhosts/dmrbt.com/httpdocs/wp-content/themes/boo/rella/extensions/aq_resizer/aq_resizer.php on line 118

Notice: Trying to access array offset on value of type bool in /var/www/vhosts/dmrbt.com/httpdocs/wp-content/themes/boo/rella/extensions/aq_resizer/aq_resizer.php on line 117

Notice: Trying to access array offset on value of type bool in /var/www/vhosts/dmrbt.com/httpdocs/wp-content/themes/boo/rella/extensions/aq_resizer/aq_resizer.php on line 118
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);
}

Join the Discussion