Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过cron自动激活数据流配置文件_Php_Magento_Magento 1.9 - Fatal编程技术网

Php 通过cron自动激活数据流配置文件

Php 通过cron自动激活数据流配置文件,php,magento,magento-1.9,Php,Magento,Magento 1.9,我希望通过cron运行我的数据流导入配置文件,而不需要在cron.php或crontab文件中进行操作。手动启动时,我的配置文件正在工作。 此适配器从csv文件导入有关产品的数据。 我正试图通过以下方式运行此配置文件: $profile->load($profileId); $profile->run(); 但我在cron操作后没有效果。运行方法无法正常工作。 文件位于正确的位置。配置文件Id正确,配置文件已加载。我找到答案。如果要运行导入配置文件,应在$profile->run(

我希望通过cron运行我的数据流导入配置文件,而不需要在cron.php或crontab文件中进行操作。手动启动时,我的配置文件正在工作。 此适配器从csv文件导入有关产品的数据。 我正试图通过以下方式运行此配置文件:

$profile->load($profileId);
$profile->run();
但我在cron操作后没有效果。运行方法无法正常工作。
文件位于正确的位置。配置文件Id正确,配置文件已加载。

我找到答案。如果要运行导入配置文件,应在
$profile->run()之后使用此代码

        $batchModel = Mage::getSingleton('dataflow/batch');
        $batchImportModel = $batchModel->getBatchImportModel();
        $adapter = $batchModel->getAdapter();
        $importIds = $batchImportModel->getIdCollection();

        foreach ($importIds as $importId) {
            $batchImportModel->load($importId);
            try {
                $importData = $batchImportModel->getBatchData();
                Mage::getModel($adapter)->saveRow($importData);
            } catch (Exception $e) {
                Mage::log("Exception : " . $e);
                continue;
            }
        }

        if (method_exists($adapter, 'getEventPrefix')) {

            // Event to process rules relationships after import
            Mage::dispatchEvent($adapter->getEventPrefix() . '_finish_before', array(
                'adapter' => $adapter
            ));

            // Clear affected ids for possible reuse
            $adapter->clearAffectedEntityIds();

        }