/** * <p>Метод ищет подписки, которые пора продлить, и пытается осуществить продление. За раз осуществляется продление не более трех подписок. Этот метод можно вызывать из агентов или cron'а для автоматического продления подписки.</p> * * * * * @return void <p>Метод не возвращает значений.</p><br><br> * * @static * @link http://dev.1c-bitrix.ru/api_help/sale/classes/csalerecurring/csalerecurring.checkrecurring.php * @author Bitrix */ public static function CheckRecurring() { if (defined("SALE_PROC_REC_NUM")) $processRecords = SALE_PROC_REC_NUM; else $processRecords = 3; $dbRecurring = CSaleRecurring::GetList( array(), array( "<=NEXT_DATE" => Date($GLOBALS["DB"]->DateFormatToPHP(CLang::GetDateFormat("FULL", SITE_ID))), "CANCELED" => "N", "!REMAINING_ATTEMPTS" => 0 ), false, array("nTopCount" => $processRecords), array("ID") ); $cnt = 0; while ($arRecurring = $dbRecurring->Fetch()) { CSaleRecurring::NextPayment($arRecurring["ID"]); $cnt++; if ($cnt >= $processRecords) break; } }