<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум ReadyScript &mdash; Связи в БД]]></title>
	<link rel="self" href="http://forum.readyscript.ru/feed/atom/topic/454/" />
	<updated>2015-09-14T07:29:12Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.readyscript.ru/topic/454/svyazi-v-bd/</id>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1915/#p1915" />
			<content type="html"><![CDATA[<p>Нет сбоя небыло. Просто авторизуйтесь у нас в тех. поддержке и всё увидите. Вероятно, письмо по ошибка ушло в спам как вариант.</p>]]></content>
			<author>
				<name><![CDATA[Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2015-09-14T07:29:12Z</updated>
			<id>http://forum.readyscript.ru/post/1915/#p1915</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1911/#p1911" />
			<content type="html"><![CDATA[<p>Полная история всего общения со службой поддержки (как по тикетам, так и по заявкам на разработку) всегда доступна на нашем портале поддержки <a href="http://helpdesk.readyscript.ru">http://helpdesk.readyscript.ru</a> <br />Вам необходимо авторизоваться под пользователем с тем же email&#039;ом, от которого вы отправляли нам запросы.</p>]]></content>
			<author>
				<name><![CDATA[admin]]></name>
				<uri>http://forum.readyscript.ru/user/2/</uri>
			</author>
			<updated>2015-09-12T08:31:44Z</updated>
			<id>http://forum.readyscript.ru/post/1911/#p1911</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1909/#p1909" />
			<content type="html"><![CDATA[<p>К сожалению, не было никакого ответа от ТП, я же мониторю. Я уже понял, что нет решения. 200-300 тысяч это смешео, там явно лишний нолик затесался. Ладно, я понял, сам что-нибудь придумаю, спасибо вам за помощь.<br />ЗЫ: Кстати, я бы не стал отказываться от платной помощи, но мне реально никаких предложений не приходило. Тикет просто пропал и все. Может, сбой какой был, не знаю, но мне ничего неприходило</p>]]></content>
			<author>
				<name><![CDATA[Алекс]]></name>
				<uri>http://forum.readyscript.ru/user/212/</uri>
			</author>
			<updated>2015-09-11T21:42:58Z</updated>
			<id>http://forum.readyscript.ru/post/1909/#p1909</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1893/#p1893" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Дык, я бы с удовольствием, только на форуме посоветовали написать тикет, который я написал и его просто послали нах. Да, мне нужен магазин, где будет одна витрина на всех, (1 БД=&gt;много магазов) но у каждого региона (поддомены или еще как) будут свои продавцы. То есть,я загружаю товары в одно место, а 20 человек их продают по стране. При этом все продажи, оплата, обработка товаров идет через них. А я это все со стороны мониторю. + вся оплата, доставка, общение с клиентом идет через админов-регионалов. И мне не надо, что бы один товар превращался в 20 из-за того, что 20 магазов по стране. И каждый регионал сам монитор свои покупки, и видит только из своего региона покупки и обрабатывать может только их. Это вкратце ))</p></blockquote></div><p>Я поднял Ваш тикет в системе. Вам предложили разработать модуль под Ваши задачи, но он дорогостоящий и Вы ничего не ответили.<br />Ну что могу сказать, пока на данный момент решения простого не существует. Нужно разрабатывать данную задачу под Ваши конкретные потребности. Но я понимаю всю задачу, там &quot;геммороя&quot; очень много ведь это не просто отслеживание, но и множественные связи&nbsp; разнообразные подводные камни при реализации, поэтому Вам и поставили такой ценник. Крупные магазины которые работают по стране разработатывают под себя такие решения, минимально стоимость такого решения у них это 200-300 тысяч рублей.</p><p>Бесплатного решения я думаю Вы тоже скорее всего не найдёте.</p><div class="quotebox"><blockquote><p>ну а если уж совсем интересно, вот ветка, <a href="http://forum.cs-cart.com/topic/41810-ха">http://forum.cs-cart.com/topic/41810-ха</a> … ьтр/page-3 думал хоть они смогут, уж совсем контора серьезная. Ан нет, пойди пойми, что хотят.&nbsp; Будут предложения? Не окажусь</p></blockquote></div><p>Вам предложили, тоже что и мы доработать функционал платно под Ваши задачи.</p><p>Возможно в будующем такой функционал у нас появится, но скорее всего отдельным модулем со своим ценником.</p>]]></content>
			<author>
				<name><![CDATA[Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2015-09-11T09:41:18Z</updated>
			<id>http://forum.readyscript.ru/post/1893/#p1893</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1892/#p1892" />
			<content type="html"><![CDATA[<p>ну а если уж совсем интересно, вот ветка, <a href="http://forum.cs-cart.com/topic/41810-характеристики-товара-и-фильтр/page-3">http://forum.cs-cart.com/topic/41810-ха … ьтр/page-3</a> думал хоть они смогут, уж совсем контора серьезная. Ан нет, пойди пойми, что хотят.&nbsp; Будут предложения? Не окажусь</p>]]></content>
			<author>
				<name><![CDATA[Алекс]]></name>
				<uri>http://forum.readyscript.ru/user/212/</uri>
			</author>
			<updated>2015-09-10T15:17:44Z</updated>
			<id>http://forum.readyscript.ru/post/1892/#p1892</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1891/#p1891" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Александр пишет:</cite><blockquote><div class="quotebox"><blockquote><p>Какие тут могут быть успехи, я даже и заморачиваться не стал</p></blockquote></div><p>Так всё плохо?<br />Может мы можем чем-то помочь?</p></blockquote></div><p>Дык, я бы с удовольствием, только на форуме посоветовали написать тикет, который я написал и его просто послали нах. Да, мне нужен магазин, где будет одна витрина на всех, (1 БД=&gt;много магазов) но у каждого региона (поддомены или еще как) будут свои продавцы. То есть,я загружаю товары в одно место, а 20 человек их продают по стране. При этом все продажи, оплата, обработка товаров идет через них. А я это все со стороны мониторю. + вся оплата, доставка, общение с клиентом идет через админов-регионалов. И мне не надо, что бы один товар превращался в 20 из-за того, что 20 магазов по стране. И каждый регионал сам монитор свои покупки, и видит только из своего региона покупки и обрабатывать может только их. Это вкратце ))</p>]]></content>
			<author>
				<name><![CDATA[Алекс]]></name>
				<uri>http://forum.readyscript.ru/user/212/</uri>
			</author>
			<updated>2015-09-10T15:11:20Z</updated>
			<id>http://forum.readyscript.ru/post/1891/#p1891</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1882/#p1882" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Какие тут могут быть успехи, я даже и заморачиваться не стал</p></blockquote></div><p>Так всё плохо?<br />Может мы можем чем-то помочь?</p>]]></content>
			<author>
				<name><![CDATA[Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2015-09-09T10:38:30Z</updated>
			<id>http://forum.readyscript.ru/post/1882/#p1882</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1880/#p1880" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>у парнтерок нет возможности работы админов, у мультимагазина нет единой БД товаров</p></blockquote></div><p> Какие тут могут быть успехи, я даже и заморачиваться не стал</p>]]></content>
			<author>
				<name><![CDATA[Алекс]]></name>
				<uri>http://forum.readyscript.ru/user/212/</uri>
			</author>
			<updated>2015-09-08T16:44:29Z</updated>
			<id>http://forum.readyscript.ru/post/1880/#p1880</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1867/#p1867" />
			<content type="html"><![CDATA[<p>Ну как успехи?</p>]]></content>
			<author>
				<name><![CDATA[Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2015-09-01T14:55:39Z</updated>
			<id>http://forum.readyscript.ru/post/1867/#p1867</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1848/#p1848" />
			<content type="html"><![CDATA[<p>Данная схема действует везде. Ограничений на действие никаких нет.<br />Insert проще простого сделать, например так:<br /></p><div class="codebox"><pre><code>$product = new \Catalog\Model\Orm\Product(); //Объявим новый ORM объект.

//Заполняем нужные поля объекта \Catalog\Model\Orm\Product, поля смотрим в файле /modules/catalog/model/orm/product.inc.php соответственно, например так

$product[&#039;title&#039;]    = &#039;Мой новый товар&#039;;
$product[&#039;alias&#039;]   = \RS\Helper\Transliteration::str2url($product[&#039;title&#039;]);
$product[&#039;xdir&#039;]    = array(id нужной нам категории); //Категория
$product[&#039;public&#039;] = 1; //Флаг публичности

//И ещё какие-либо наши поля смотрим в файле /modules/catalog/model/orm/product.inc.php

if ($product-&gt;insert()){ //Добавим в БД и заодно проверим, а вставилась ли она
   echo &quot;Всё успешно вставилось&quot;.
   //После добавления записи у товара появится поле id и достать можно так $product[&#039;id&#039;]
}else{
   echo &quot;Произошли следующие ошибки&quot;.
   var_dump($product-&gt;getErrors());
   exit();
}</code></pre></div><p>Далее я расскажу как добавить остальные записи в БД для других вещей. Вообще их можно включить в конструкцию перед <strong>insert</strong> и оно будет действовать одинаково, но в данном случае я буду рассматривать, если запись уже существует. Т.е. через <strong>update</strong>.</p><p><strong>Добавление цены</strong><br /></p><div class="codebox"><pre><code>//Установка одной цены и валюты 
$excost = array(
   &#039;id нужной нам цены из справочника цен&#039; =&gt; array(
     &#039;cost_original_val&#039; =&gt; Сколько нам надо,
     &#039;cost_original_currency&#039; =&gt; id нужной нам валюты
   )
)
$product[&#039;excost&#039;] = $excost;

//Получить id цены по умолчанию(основной) можно так
$default_cost_id = \Catalog\Model\CostApi::getDefaultCostId();</code></pre></div><p><strong>Добавление фото</strong> производим через API работы с фото<br /></p><div class="codebox"><pre><code>$photoApi = new \Photo\Model\PhotoApi(); //Инициализируем API
$photoApi-&gt;addFromUrl(&#039;полный url откуда брать фото&#039;,&#039;catalog&#039;, $product[&#039;id&#039;]); //Добавляем фото из url</code></pre></div><p><strong>Добавление характеристик</strong><br /></p><div class="codebox"><pre><code>//Для добавления строковой или числовой характеристики
$product[&#039;prop&#039;][id нужной нам характеристики][&#039;value&#039;] = &#039;значение характеристики&#039;;
//Для добавления списковой характеристики
$product[&#039;prop&#039;][id нужной нам характеристики][&#039;value&#039;] = array(
  &#039;значение характеристики 1&#039;,
  &#039;значение характеристики 2&#039;,
);</code></pre></div><br /><p>А в конце вызываем update<br /></p><div class="codebox"><pre><code>$product-&gt;update(); //Обновим товар</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2015-08-31T09:20:54Z</updated>
			<id>http://forum.readyscript.ru/post/1848/#p1848</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1837/#p1837" />
			<content type="html"><![CDATA[<p>А это применимо к работе стороннего скрипта? Потоому что меня интересует именно INSERT а не&nbsp; SELECT или DELETE</p>]]></content>
			<author>
				<name><![CDATA[Алекс]]></name>
				<uri>http://forum.readyscript.ru/user/212/</uri>
			</author>
			<updated>2015-08-31T08:12:04Z</updated>
			<id>http://forum.readyscript.ru/post/1837/#p1837</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1829/#p1829" />
			<content type="html"><![CDATA[<p>Во первых.<br />Мы не приемлим прямых обращений в базу. У нас в системе на прямую обращаться нет надобности. Т.к. для этого уже всё предусмотрено. ЗАБУДЬТЕ о прямых обращениях в БД, это метод &quot;лохматых&quot; годов и&quot;олдскул&quot;. <br />Со всем записями в БД можно работать через ORM объект. Каждому ORM объекту соответствует своя БД и своя одна запись в этой БД.<br />При удалении через ORM объект срабатывает метод delete() в котором, подтягиваются все необходимые данные и удаляются. Поэтому Вам надо сделать примерно так:<br /></p><div class="codebox"><pre><code>$product = new \Catalog\Model\Orm\Product(id записи в БД); //Получаем одну запись товара из БД и помещаем в ORM объект значения
$product-&gt;delete(); //Удалит товар и всё что с ним связано само </code></pre></div><p>Поэтому Вам вообще не надо думать о том какие таблицы задействованы.<br />Как делать выборки? Вот пара материалов из форума:<br /><a href="http://forum.readyscript.ru/topic/16/zaprosy-k-bd/">http://forum.readyscript.ru/topic/16/zaprosy-k-bd/</a><br /><a href="http://forum.readyscript.ru/topic/297/gde-proiskhodit-zapis-v-bd/">http://forum.readyscript.ru/topic/297/g … apis-v-bd/</a><br /><a href="http://forum.readyscript.ru/topic/321/funktsiya-getlistcount-s-usloviem/">http://forum.readyscript.ru/topic/321/f … -usloviem/</a><br />Ну и собственно документация:<br /><a href="http://readyscript.ru/dev-manual/dev_orm.html">Подсистема ORM и запросы</a></p><p>Если у Вас возникнут вопросы или надо подсказать запрос, то пишите мы Вам всё подскажем с примерами.</p>]]></content>
			<author>
				<name><![CDATA[Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2015-08-31T07:41:34Z</updated>
			<id>http://forum.readyscript.ru/post/1829/#p1829</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Связи в БД]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/1823/#p1823" />
			<content type="html"><![CDATA[<p>Можно узнать, какие таблицы связаны между собой при добавлении товара? Допустим, я хочу добавить (или наоборот, удалить) товар напрямую запросом в БД, какие таблицы используются? Например, я хочу добавить: название, описание, категорию, цену в инвалюте, артикул, несколько фото, и пару характеристик. Просто смотрю еще много чего дописывается, даже если значения не заданы, из-за чего могут сбиться связи и человек будет покупать красное пальто, а в заказе окажется деревянная дверь.</p><br /><p>Прочитал свой вопрос и понял что не понял сам ))) Спрошу проще - какой запрос к БД выполняется, когда я добавляю новый товар. Почему то не получается перехватить с помощью mytop</p>]]></content>
			<author>
				<name><![CDATA[Алекс]]></name>
				<uri>http://forum.readyscript.ru/user/212/</uri>
			</author>
			<updated>2015-08-29T21:05:31Z</updated>
			<id>http://forum.readyscript.ru/post/1823/#p1823</id>
		</entry>
</feed>
