- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/location/import/import.php
- Класс: BitrixSaleLocationImportImportProcess
- Вызов: ImportProcess::__construct
public function __construct($options)
{
if($options['ONLY_DELETE_ALL'])
{
$this->addStage(array(
'PERCENT' => 100,
'CODE' => 'DELETE_ALL',
'CALLBACK' => 'stageDeleteAll',
'SUBPERCENT_CALLBACK' => 'getSubpercentForstageDeleteAll'
));
}
else
{
$this->addStage(array(
'PERCENT' => 5,
'CODE' => 'DOWNLOAD_FILES',
'CALLBACK' => 'stageDownloadFiles',
'SUBPERCENT_CALLBACK' => 'getSubpercentForStageDownloadFiles'
));
if($_REQUEST['OPTIONS']['DROP_ALL'])
{
$this->addStage(array(
'PERCENT' => 7,
'CODE' => 'DELETE_ALL',
'CALLBACK' => 'stageDeleteAll',
'SUBPERCENT_CALLBACK' => 'getSubpercentForstageDeleteAll'
));
}
$this->addStage(array(
'PERCENT' => 10,
'CODE' => 'DROP_INDEXES',
'CALLBACK' => 'stageDropIndexes',
'SUBPERCENT_CALLBACK' => 'getSubpercentForStageDropIndexes'
));
$this->addStage(array(
'PERCENT' => 60,
'STEP_SIZE' => 6000,
'CODE' => 'PROCESS_FILES',
'CALLBACK' => 'stageProcessFiles',
'SUBPERCENT_CALLBACK' => 'getSubpercentForStageProcessFiles'
));
if($_REQUEST['OPTIONS']['INTEGRITY_PRESERVE'])
{
$this->addStage(array(
'PERCENT' => 65,
'STEP_SIZE' => 1,
'CODE' => 'INTEGRITY_PRESERVE',
'CALLBACK' => 'stageIntegrityPreserve'
));
}
$this->addStage(array(
'PERCENT' => 90,
'STEP_SIZE' => 1,
'CODE' => 'REBALANCE_WALK_TREE',
'CALLBACK' => 'stageRebalanceWalkTree',
'SUBPERCENT_CALLBACK' => 'getSubpercentForStageRebalanceWalkTree'
));
$this->addStage(array(
'PERCENT' => 95,
'STEP_SIZE' => 1,
'CODE' => 'REBALANCE_CLEANUP_TEMP_TABLE',
'CALLBACK' => 'stageRebalanceCleanupTempTable'
));
$this->addStage(array(
'PERCENT' => 100,
'STEP_SIZE' => 1,
'CODE' => 'RESTORE_INDEXES',
'CALLBACK' => 'stageRestoreIndexes',
'SUBPERCENT_CALLBACK' => 'getSubpercentForStageRestoreIndexes'
));
}
$this->dbConnection = MainHttpApplication::getConnection();
$this->dbConnType = $this->dbConnection->getType();
$this->dbHelper = $this->dbConnection->getSqlHelper();
parent::__construct($options);
}