Здравствуйте уважаемые знатоки. Если кто знает, а то уже голову сломал...
Суть проблемы: загружаю прайс с ценами в .csv и надо обновлять базовые цены (розница).
Загружается по заданию cron, точнее должно, ибо пока не осилил.
Для начала вкратце код:
В результате имеем полотно ошибок:
Что примечательно, если эту страницу загружать через браузер без шапки, где объявляются переменные, то всё срабатывает как надо.
Но если убрать шапку, то уже cron выдаст ошибку:
Есть у кого какие соображения?
Суть проблемы: загружаю прайс с ценами в .csv и надо обновлять базовые цены (розница).
Загружается по заданию cron, точнее должно, ибо пока не осилил.
Для начала вкратце код:
| Код |
|---|
$_SERVER['DOCUMENT_ROOT'] = '/путь_к_корню';
$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
define('NO_KEEP_STATISTIC', true);
define('NOT_CHECK_PERMISSIONS',true);
define('LANG','ru');
define('SITE_ID', 's1');
require($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/include/prolog_before.php");
while(...):
CPrice::Update(...);
endwhile;
require($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/include/epilog_after.php"); |
В результате имеем полотно ошибок:
| Цитата |
|---|
| [Bitrix\Main\ObjectPropertyException] Object property "dateTimeFormat" not found. (100) /home/путь_к_корню/bitrix/modules/main/lib/context/culture.php:55 #0: Bitrix\Main\Context\Culture->getDateTimeFormat() /home/путь_к_корню/bitrix/modules/main/lib/type/datetime.php:181 #1: Bitrix\Main\Type\DateTime::getCultureFormat(object) /home/путь_к_корню/bitrix/modules/main/lib/type/date.php:162 #2: Bitrix\Main\Type\Date::getFormat(NULL) /home/путь_к_корню/bitrix/modules/main/lib/type/date.php:133 #3: Bitrix\Main\Type\Date->toString(NULL) /home/путь_к_корню/bitrix/modules/main/lib/type/datetime.php:70 #4: Bitrix\Main\Type\DateTime->toString() /home/путь_к_корню/bitrix/modules/currency/general/currency.php:380 #5: CAllCurrency::GetByID(string) /home/путь_к_корню/bitrix/modules/catalog/general/price.php:27 #6: CAllPrice::CheckFields(string, array, integer) /home/путь_к_корню/bitrix/modules/catalog/general/price.php:65 #7: CAllPrice::Update(string, array) /home/путь_к_корню/bitrix/modules/catalog/general/price.php:181 #8: CAllPrice::SetBasePrice(string, string, string) /home/путь_к_корню/путь_к_файлу/base.php:94 |
Что примечательно, если эту страницу загружать через браузер без шапки, где объявляются переменные, то всё срабатывает как надо.
Но если убрать шапку, то уже cron выдаст ошибку:
| Цитата |
|---|
| PHP Fatal error: require(): Failed opening required '/bitrix/modules/main/include/prolog_before.php' (include_path='.:/usr/share/pear:/usr/share/php') in /home/путь_к_корню/путь_к_файлу/base.php on line 13 |