Какой выгрузкой пользуетесь? Можно посмотреть файл import.xml?
22.03.2011 17:43:45
Вроде бы тут неделя бесплатно была:
|
|
|
18.03.2011 12:50:03
Спасибо.
Пошли по другому пути, перед выгрузкой получаем список неактивного товара (Внешний код): <? require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/php_interface/dbconn.php"); $link = mysql_connect($DBHost, $DBLogin, $DBPassword); $db_selected = mysql_select_db($DBName, $link); $start = true; $result = mysql_query("SEL ECT `XML_ID` FR OM `b_iblock_element` WHERE `IBLOCK_ID` = 1 AND `ACTIVE` != 'Y'"); while ($row = mysql_fetch_array($result)) { echo ((!$start)? ';' : '') . $row[0]; $start = false; } ?> И исключаем при выгрузке данные позиции в файле выгрузки |
|
|
18.03.2011 11:14:19
Вообщем выгрузили весь товар с 1С на сайт, далее посмотрели и решили что несколько вещей пока не будем продавать и деактивировали их, далее через несколько дней опять делаем выгрузку по товару из 1С, чтобы обновились свойства и т.д., ранее отключенный товар - вновь становится активным. Возможно как-то решить штатными способами, чтобы товар не активировался, если был вручную на сайте деактивирован?
|
|
|
17.03.2011 11:42:19
У вас выгрузка самописная?
Потому как в типовой УТ процедура: Функция ПолучитьОбъектДляЗаписиXML(ИмяФайла, ДатаФормирования) ЗаписьXML = Новый ЗаписьXML; Если ПустаяСтрока(ИмяФайла) Тогда ЗаписьXML.УстановитьСтроку("UTF-8"); Иначе ЗаписьXML.ОткрытьФайл(ИмяФайла, "UTF-8"); КонецЕсли; ЗаписьXML.ЗаписатьОбъявлениеXML(); ЗаписьXML.ЗаписатьНачалоЭлемента("КоммерческаяИнформация"); ЗаписьXML.ЗаписатьАтрибут("ВерсияСхемы", "2.04"); ЗаписьXML.ЗаписатьАтрибут("ДатаФормирования", Формат(ДатаФормирования, "ДФ=yyyy-MM-dd'T'ЧЧ:мм:сс")); Возврат ЗаписьXML; КонецФункции |
|
|
16.03.2011 15:29:16
Зарегистрированный пользователь в Битриксе - при синхронизации заказов выгрузится в контрагента в 1С. (идентификация по наименованию либо по ИНН, но переделать можно и по коду какому-нибудь), если он участвовал в каком-то заказе. Если честно задача не совсем ясна до конца.
"необходимо, чтобы в 1С хранились данные (некоторых) пользователей интернет-магазина Битрикс" - типовой выгрузки пользователей с сайта в 1С нет, НО есть обмен заказами, где есть покупатель, т.е. как было написано выше, он может попасть в базу через заказ. Можно написать скрипт который в виде xml вернет список пользователей с сайта, его можно загрузить в 1С. Останется тогда вопрос синхронизации данных пользователей, с теми что будут приходит в заказах, чтобы понимать что именно вот этот заказ - этого пользователя. "При этом в личном кабинете интернет-магазина пользователь должен видеть состояние своего «счета»" - выгрузить данные по-моему не проблема, хотя бы через FTP и вызов скрипта для разбора данного файла и загрузку данных в 1С, или сделать компонент по примеру выгрузки товара - и так же обмениваться данными |
|
|
16.03.2011 15:16:03
Скорее всего ошибка в имени файла, который выгрузка пытается записать на диск. В конфигураторе 1С найти кусок кода:
ИмяПоНоменклатуре = Строка(Номенклатура.УникальныйИдентификатор()); ИмяПоХранилищу = Строка(ХранилищеСсылка.УникальныйИдентификатор()); ИмяФайлаКартинки = ИмяПоНоменклатуре + "_" + ИмяПоХранилищу + "." + НРег(РасширениеФайлаКартинки); КаталогПоИмени = Лев(ИмяПоНоменклатуре, 2); КаталогКартинки = мКаталогНаДиске + "\" + мПодкаталогФайлов + "\" + КаталогПоИмени; СоздатьКаталог(КаталогКартинки); ПолноеИмяФайлаКартинки = КаталогКартинки + "\" + ИмяФайлаКартинки; Попытка Картинка.Записать(ПолноеИмяФайлаКартинки); Исключение СообщитьОбИсключительнойОшибке(Истина, "Не удалось записать файл картинки на диск. Номенклатура: " + Номенклатура); Возврат Результат; КонецПопытки; Результат = мПодкаталогФайлов + "/" + КаталогПоИмени + "/" + ИмяФайлаКартинки; Поставить точку останова и посмотреть какое система генерирует ПолноеИмяФайлаКартинки. |
|
|