<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум ReadyScript &mdash; Нужен хук в модуле обмена 1С]]></title>
		<link>https://forum.readyscript.ru/topic/1410/nuzhen-khuk-v-module-obmena-1s/</link>
		<atom:link href="https://forum.readyscript.ru/feed/rss/topic/1410/" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Нужен хук в модуле обмена 1С».]]></description>
		<lastBuildDate>Fri, 10 Nov 2017 15:05:12 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Нужен хук в модуле обмена 1С]]></title>
			<link>https://forum.readyscript.ru/post/8011/#p8011</link>
			<description><![CDATA[<p>Спасибо, отличное решение!</p>]]></description>
			<author><![CDATA[null@example.com (Oleksii)]]></author>
			<pubDate>Fri, 10 Nov 2017 15:05:12 +0000</pubDate>
			<guid>https://forum.readyscript.ru/post/8011/#p8011</guid>
		</item>
		<item>
			<title><![CDATA[Re: Нужен хук в модуле обмена 1С]]></title>
			<link>https://forum.readyscript.ru/post/8008/#p8008</link>
			<description><![CDATA[<p>Мы очень аккуратно стараемся добавлять хуки, так как огромное количество хуков - это самая большая беда многих систем.</p><p>В данном случае можно обойтись без добавления новых хуков. Вам необходимо, как вы правильно заметили, отключить в настройках обмена &quot;обнуление остатков у товаров, которых не было в выгрузке&quot;.&nbsp; </p><p>Далее, в обработчике exchange.task.afterimport.products реализовать свою логику обнуления остатков.</p><p>А чтобы никто случайно не включил данную функцию, вы можете её убрать из списка на странице настроек модуля exchange.</p><p>Это делается путем обработки события orm.init.exchange-config-file, вот так:</p><div class="codebox"><pre><code>&lt;?php
namespace ModuleName\Config;
use \RS\Orm\Type;
use \Exchange\Config\File as ExchangeConfig;

/**
* Класс предназначен для объявления событий, которые будет прослушивать данный модуль и обработчиков этих событий.
*/
class Handlers extends \RS\Event\HandlerAbstract
{
   function init()
   {
       $this-&gt;bind(&#039;orm.init.exchange-config-file&#039;);
   }

   public static function ormInitExchangeConfigFile($config)
   {
       $config[&#039;__catalog_element_action&#039;]-&gt;setListFromArray(array(
               ExchangeConfig::ACTION_NOTHING      =&gt; t(&#039;Ничего&#039;),
               ExchangeConfig::ACTION_DEACTIVATE   =&gt; t(&#039;Деактивировать&#039;),
               ExchangeConfig::ACTION_REMOVE       =&gt; t(&#039;Удалить&#039;)
               //Убрали отсюда пункт с обнулением остатков
           )
       );
   }
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (admin)]]></author>
			<pubDate>Fri, 10 Nov 2017 10:19:32 +0000</pubDate>
			<guid>https://forum.readyscript.ru/post/8008/#p8008</guid>
		</item>
		<item>
			<title><![CDATA[Re: Нужен хук в модуле обмена 1С]]></title>
			<link>https://forum.readyscript.ru/post/8004/#p8004</link>
			<description><![CDATA[<p>По идее я могу подцепиться к хуку &quot;exchange.task.afterimport.products&quot;, но как это обычно бывает, кто-то когда-то снова включит галочку &quot;Обнулять остаток&quot;, хотелось бы чтоб все было логично.</p>]]></description>
			<author><![CDATA[null@example.com (Oleksii)]]></author>
			<pubDate>Thu, 09 Nov 2017 13:27:41 +0000</pubDate>
			<guid>https://forum.readyscript.ru/post/8004/#p8004</guid>
		</item>
		<item>
			<title><![CDATA[Нужен хук в модуле обмена 1С]]></title>
			<link>https://forum.readyscript.ru/post/8003/#p8003</link>
			<description><![CDATA[<p>На сайте имеются 2 типа товара, загруженные с 1С и загруженные со стороннего источника (обмен через API).<br />При обмене 1С, если установлен пункт &quot;Обнулять остаток&quot; - обнуляются остатки всех товаров. Мне нужно как-то вклиниться, чтоб не трогало товары со стороннего апи.</p><p>Файл <strong>modules/exchange/model/task/afterimport/products.inc.php</strong><br /><span class="postimg"><img src="http://joxi.ru/MAjeV0DFv7kqN2.jpg" alt="http://joxi.ru/MAjeV0DFv7kqN2.jpg" /></span></p><p>Отлично бы подошла возможность добавить свое условие в запрос, чтоб исключить нужные мне товары. Есть возможность сюда встроить хук?</p>]]></description>
			<author><![CDATA[null@example.com (Oleksii)]]></author>
			<pubDate>Thu, 09 Nov 2017 13:19:27 +0000</pubDate>
			<guid>https://forum.readyscript.ru/post/8003/#p8003</guid>
		</item>
	</channel>
</rss>
