Господа, доброго времени суток! Вопрос вот какой - у нас есть заказ от автосалона. Автосалон желает выкладывать на сайт в автоматическом режиме информацию по наличию автомобилей. На предприятии используется 1С Альфа-Авто в качестве учетной системы. Можно ли как-то организовать загрузку данных из 1С на сайт версии Стандарт?
Наличие товара на складе получаем для элемента. А как быть если это значение надо получить при построении списка элементов в разделе. Массивы получаются вложенными. А если делатьзапрос по каждому товару в списке - получаем неоправданную нагрузку.
Господа, таже проблема, но псле преноса сайта на агаву. Выдает: Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/polusdm1/public_html/bitrix/modules/main/include.php on line 1
Вячеслав Чешихин пишет: Спасибо Александру Жогову! Я уже решил эту проблему. Нужно было просто везде в секции "Торговый Каталог" всех элементов товаров поставить галочки во вкладке "Параметры" "Уменьшать количество при заказе". Я для этого использовал специальный скрипт (надыбал).
Про скрипт писали сами. Про галочку - тодже писали выше
Вячеслав Чешихин пишет: Да, я в самом начале всё правильно сделал и не надо было мне эти ненужные эксперименты ставить. Я раньше проверял тем, что выгружал просто новый товар в уже созданный инфоблок "Каталог товаров". Тогда завтра я грохну весь инфоблок да и всю группу инфоблоков со всеми ранее выгруженными товарами и буду выгружать товары из 1с заново. Тогда автоматически создастся новый инфоблок "Каталог товаров" во время выгрузки из 1с. Может тогда что-то получится.
Вячеслав Чешихин пишет: Спасибо, конечно, Александр Жогов . Я вставил код в файл bitrix/php_interface/init.php. Но дело в том, что этого файла на месте не было и поэтому я его создал. У меня же демоверсия сайта и там структура каталогов другая. Вообще-то есть ещё один файл init.php, он находится в папке C:\Program Files\Bitrix Environment\www\bitrix\wizards\bitrix\demo\public_ files\ru\bitrix\php_interface. Я на всякий случай и туда этот код запихнул - кашу маслом не испортишь. Но эффект нулевой. Я всё вроде делал так: перезапустил службу Битрикс: закрыл в браузере вкладку с сайтом, остановил службу Битрикса, потом снова запустил. Потом я на всякий случай ещё перезагрузил компьютер. Но эффект нулевой . Я вляется ли это следствием того, что у меня демонстрационная версия стоит?
Ищзменение надо было внести в bitrix/php_interface/init.php и только! Если его нет - создать. Галочка появится, когда Вы повторно загрузите каталдог товаров. Демо и не демо на это никак не влияет!
Вячеслав Чешихин пишет: Да,я нашёл: это нужно в каждом товаре в секции "Торговый Каталог" ставить галочку во вкладке "Параметры" ВЕСТИ КОЛИЧЕСТВО. Но ведь у меня 12000 наименований товаров! А как сделать чтоб при выгрузке из 1С эта галочка сама проставлялась?
Даже если галочку поставить, в каталоге все равно будет отображитаться товар, просто он бедет запрещен к заказу. Можно в кастом элемента каталога ввести анализ количества на складе и все.
По поводу установки галочки - где то мне скидывали решение: В init.php надо вставить:
Код
AddEventHandler("sale", "OnProductAdd", "OnProductAdd");
function OnProductAdd(&$ID,$Fields)
{
$res=Array("QUANTITY_TRACE"=>'Y');
CCatalogProduct::Update($ID,$res);
}
Илья Чернышов пишет: Возьмите и задайте какому-нибудь товару кол-во, например, 13.
Потом переходите на страницу с этим товаром и в шаблоне пишете строчку:
Цитата
echo "<pre>"; print_r($arResult); echo "</pre>";
И смотрите у какой ячейки находится ваше кол-во 13. Именно с ней надо и работать. Просто не факт что кол-во будет именно в $ar_res["QUANTITY"] она может быть например в каком-нибудь $ar_res["QUANTITY_CATALOF_2"]
Вячеслав Чешихин пишет: Здравствуйте! У меня в Битриксе даже если остаток товара равен 0 всё-равно не выводится сообщений о том, что нет на складе. И товар можно положить в корзину и заказать (ведь его же нет на складе). А где это можно настроить? И ещё как сделать так чтоб при выгрузки из 1с товаров в Битрикс автоматически ставилась галочка возле каждого элемента "Уменьшать количество при заказе"? Их же 12000! ПРОШУ ИЗВИНИТЬ ЗА ТО ЧТО ВОПРОС ЭТОТ УЖЕ ЗАДАЛ В ДРУГОЙ ВЕТКЕ. Я ничего не нарушаю?
Если я правильно помню, то в торговом каталоге есть - вести количество.
Вот переписка с поддержкой хостера. Прблему они решили.
Цитата
Добрый день,
вот здесь: http://php.net/manual/en/features.http-auth.php предоставлена следующая информация: Also note that until PHP 4.3.3, HTTP Authentication did not work using Microsoft's IIS server with the CGI version of PHP due to a limitation of IIS. In order to get it to work in PHP 4.3.3+, you must edit your IIS configuration "Directory Security". Click on "Edit" and only check "Anonymous Access", all other fields should be left unchecked. Another limitation is if you're using the IIS module (ISAPI) and PHP 4, you may not use the PHP_AUTH_* variables but instead, the variable HTTP_AUTHORIZATION is available. For example, consider the following code: list($user, $pw) = explode(':', base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'], 6)));
И хотя у нас IIS + PHP5 (Isapi) я попробовала отключить Basic авторизацию (то есть в настройках сайта через IIS Manager отключила все, кроме Anonimous)/ После этих действий в тестовом скрипте авторизация успешно прошла.
Для других сайтов Вы сможете сделать эту настройку самостоятельно через IISManager
Evgeny Petrichenko пишет: Всё выгружается. Анонс выгружается из поля Полное Наименование, а детальное описание указывается на вкладке "Описание" при редактировании номенклатуры и всё прекрасно выгружается в Битрикс.