Jump to content

Бренд из 1С в Интернет Магазин


Recommended Posts

Добрый день! Подскажите пожалуйста, где ошибка.

 

В Конфигурацию 1С добавил в выгрузку поле <Производитель> : 

 

Файл import.xml : 

 

<Товар>
				<Ид>bb6d4ab2-988d-11e5-be92-8c89a5174022</Ид>
				<Наименование>Iphone 5S 16Gb</Наименование>
				<Производитель>Apple</Производитель>
				<БазоваяЕдиница Код="796 " НаименованиеПолное="Штука" МеждународноеСокращение="PCE">шт</БазоваяЕдиница>

В 1c_exchange.php  в местах где товар добавляется и обновляется добавил вот такой код: 

 

// Обновляем бренд
		if(isset($xml_product->Производитель))
		{
			foreach($xml_product->Производитель as $brand)
			{
			// Найдем его по имени
			$simpla->db->query('SELECT id FROM __brands WHERE name=?', $brand_name);
			if(!$brand_id = $simpla->db->result('id'))
				// Создадим, если не найден
					$brand_id = $simpla->brands->add_brand(array('name'=>$brand_name, 'meta_title'=>$brand_name, 'meta_keywords'=>$brand_name, 'meta_description'=>$brand_name, 'url'=>translit($brand_name)));	
				if(!empty($brand_id))
					$simpla->products->update_product($product_id, array('brand_id'=>$brand_id));
		
			}
		
		}

 

Link to post
Share on other sites

Видимо, здесь:

foreach($xml_product->Производитель as $brand)

 

А вообще поле производителя при обмене с 1С стандартно выгружается и обрабатывается (в списке свойств)...

Link to post
Share on other sites

Видимо, здесь:

foreach($xml_product->Производитель as $brand)

 

А вообще поле производителя при обмене с 1С стандартно выгружается и обрабатывается (в списке свойств)...

Не совсем  стандартная 1С. Не подскажешь как исправить? 

Link to post
Share on other sites

Видимо, здесь:

foreach($xml_product->Производитель as $brand)

 

А вообще поле производителя при обмене с 1С стандартно выгружается и обрабатывается (в списке свойств)...

Переделал на вот это: 

 

// Обновляем бренд
		if(isset($xml_product->Производитель))
		{
				$brand_name = strval($xml_product->Производитель);
			// Найдем его по имени
			$simpla->db->query('SELECT id FROM __brands WHERE name=?', $brand_name);
				if(!$brand_id = $simpla->db->result('id'))
				// Создадим, если не найден
					$brand_id = $simpla->brands->add_brand(array('name'=>$brand_name, 'meta_title'=>$brand_name, 'meta_keywords'=>$brand_name, 'meta_description'=>$brand_name, 'url'=>translit($brand_name)));	
				if(!empty($brand_id))
					$simpla->products->update_product($product_id, array('brand_id'=>$brand_id));
		
			
		
		}
Link to post
Share on other sites

Тема закрыта. Заработал этот вариант: (добавлять в 2х местах)

 

// Обновляем бренд
		if(isset($xml_product->Производитель))
		{
				$brand_name = strval($xml_product->Производитель);
			// Найдем его по имени
			$simpla->db->query('SELECT id FROM __brands WHERE name=?', $brand_name);
				if(!$brand_id = $simpla->db->result('id'))
				// Создадим, если не найден
					$brand_id = $simpla->brands->add_brand(array('name'=>$brand_name, 'meta_title'=>$brand_name, 'meta_keywords'=>$brand_name, 'meta_description'=>$brand_name, 'url'=>translit($brand_name)));	
				if(!empty($brand_id))
					$simpla->products->update_product($product_id, array('brand_id'=>$brand_id));
		
			
		
		}
Link to post
Share on other sites
  • 2 months later...

Все решается намного проще. Нужно в 1с, в номенклатуру добавить свойство "производитель" и при выгрузке это свойство будет обрабатываться симплой как производитель

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...