Цитата:
Сообщение от
Antant
ax 3.0 sp3
Товарищи! Подскажите, есть ли в Аксапте функция, которая может сказать, является ли сотрудник именинником за выбранный интервал времени?
кнопка на форме RHRMEmplTable она показывает "Дни рождения на этой неделе"
X++:
void clicked()
{
EmplTable locEmplTable;
QueryBuildRange qbr;
int bday, cday, bdofM, cdofM, bmofY, cmofY;
;
EmplTable_ds.query().dataSourceNo(1).clearRanges();
while select BirthDate from locEmplTable
{
bday = dayofyr(locEmplTable.BirthDate);
cday = dayofyr(systemDateGet());
bdofM = DayOfMth(locEmplTable.BirthDate);
cdofM = DayOfMth(systemDateGet());
bmofY = MthOfYr(locEmplTable.BirthDate);
cmofY = MthOfYr(systemDateGet());
if ( (bday >= cday)&&(bday < (cday + 8)) || ((bdofM == cdofM)&&(bmofY == cmofY)) )
{
qbr = EmplTable_ds.query().dataSourceNo(1).addRange(fieldnum(EmplTable, BirthDate));
qbr.value(date2str(locEmplTable.BirthDate,10,2,2,2,2,4));
qbr.status(RangeStatus::Hidden);
}
}
EmplTable_ds.executeQuery();
super();
}