private boolean checkPeridStatus(TransDate _approveDate) { boolean ret; FiscalCalendarPeriod fiscalCalPeriod; FiscalCalendarYear fiscalCalYear; LedgerFiscalCalendarPeriod ledgerPeriod; select firstOnly RecId from fiscalCalYear where fiscalCalYear.StartDate <= _approveDate && fiscalCalYear.EndDate >= _approveDate && fiscalCalYear.FiscalCalendar == Ledger::fiscalCalendar(); select firstonly fiscalCalPeriod where fiscalCalPeriod.FiscalCalendarYear == fiscalCalYear.RecId && fiscalCalPeriod.FiscalCalendar == Ledger::fiscalCalendar() && ((fiscalCalPeriod.StartDate <= _approveDate && fiscalCalPeriod.EndDate > _approveDate) || (fiscalCalPeriod.StartDate < _approveDate && fiscalCalPeriod.EndDate >= _approveDate)); if(fiscalCalPeriod) { ledgerPeriod = FiscalCalendars::findLedgerPeriod(fiscalCalPeriod.RecId, Ledger::current()); ret = ledgerPeriod.Status == 1 ? true : false; } return ret; }