<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>onestic &#187; cron</title>
	<atom:link href="http://onestic.com/tag/cron/feed/" rel="self" type="application/rss+xml" />
	<link>http://onestic.com</link>
	<description>blog de onestic</description>
	<lastBuildDate>Thu, 02 Feb 2012 09:40:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
		<item>
		<title>Cron en Magento. Problemas de actualización, reglas de precios del catálogo</title>
		<link>http://onestic.com/cron-en-magento-problemas-de-actualizacion/</link>
		<comments>http://onestic.com/cron-en-magento-problemas-de-actualizacion/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 17:21:29 +0000</pubDate>
		<dc:creator>Sergio Baixauli</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[catalog rules]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[magento]]></category>
		<category><![CDATA[reglas de catálogo]]></category>

		<guid isPermaLink="false">http://onestic.com/?p=644</guid>
		<description><![CDATA[Hoy hemos tenido que solucionar un problema (gran problema mejor dicho) con la ejecución del cron en Magento. A continuación detallo los problemas detectados. 1.- Damos de alta un producto (con su precio) 2.- Creamos un regla ( Admin -> Promociones -> Reglas de precios del catálogo) 3.- Damos de alta una nueva regla. En [...]]]></description>
			<content:encoded><![CDATA[Hoy hemos tenido que solucionar un problema (gran problema mejor dicho) con la ejecución del cron en Magento.
A continuación detallo los problemas detectados.
<ul>
<li>1.- Damos de alta un producto (con su precio)</li>
<li>2.- Creamos un regla ( Admin -> Promociones -> Reglas de precios del catálogo)</li>
<li>3.- Damos de alta una nueva regla. En nuestro caso, 20% de descuento para una categoría en concreto.</li>
<li>4.- Guardamos y aplicamos la regla.</li>
<li>5.- Comprobamos en el front que el precio está saliendo correctamente en la parte visible de la web.</li>
</ul>
<br/>

¿Cuál es el problema? Bien, ahora vamos a modifcar el precio del producto. En teoría el nuevo precio también debería tener aplicado esta regla, pero en la práctica esto no ocurre.
Se supone que el cron.php debería arreglar esto, pero la verdad es que esto no sucede, además, en el caso de hacerse habrá un intérvalo de tiempo donde el precio no será correcto.
¿Soluciones?
La más rápida que he encontrado es esta:

1.- Creamos un cron en el sistema (por ejemplo que se ejecute cada 5 minutos). En el Blog de magento tenemos más <a href="http://www.magentocommerce.com/wiki/how_to/how_to_setup_a_cron_job">detalles</a>.

<pre class="brush: php; title: ;">
*/5 * * * * wget -q http://www.yoursite.com/absolute/path/to/magento/cron.php
</pre>

2.- Editamos nuestro fichero cron.php situado en la raíz de nuestra instalación y lo dejamos así:

<pre class="brush: php; title: ;">
...
try {
    Mage::getConfig()-&gt;init()-&gt;loadEventObservers('crontab');
    Mage::app()-&gt;addEventArea('crontab');
    Mage::dispatchEvent('default');
    $ob = Mage::getModel('catalogrule/observer');  //nueva línea
    $ob-&gt;dailyCatalogUpdate(&quot;*/5 * * * *&quot;);         //nueva línea
} catch (Exception $e) {
...
</pre>

Con esto conseguimos la actualización de las reglas del catálogo cada vez que se ejecuta el cron.

Ahora nos encontramos con otro problema. Este no tiene nada que ver con el anterior pero en mi caso ha empezado a ocurrir a raíz de crear reglas para el catálogo.
Cada vez que editamos un producto e intentamos guardarlo el proceso demora 30-40 segundos&#8230; ¿por qué ocurre esto? Por que al guardar el producto aplicada los descuentos creados en las reglas del catálogo y esto es un proceso muy pesado (si tenemos muchos productos).
Por lo menos en la versión 1.3.2.4 ocurre.
El error está reportado en este <a href="http://www.magentocommerce.com/boards/viewthread/49599/">post</a>, y por lo visto ocurre siempre. Esperemos que lo corrijan en la 1.4.

La solución pasa por:

1.- Copiar este fichero app/code/core/Mage/Weee/Model/Mysql4/Tax.php y dejarlo en app/code/local/Mage/Weee/Model/Mysql4/Tax.php

2.- Si no estamos usando Weee, poner dentro del nuevo fichero la siguiente función:

<pre class="brush: php; title: ;">
public function updateDiscountPercents()
    {
        //Ignore this function
        return;
    }
</pre>


En el caso de estar usando Weee, la solución es más compleja, así que pasar por la <a href="http://www.magentocommerce.com/boards/viewthread/49599/">fuente original</a> para resolver vuestras dudas. Supongo que al final encontrarán una solución fácil ]]></content:encoded>
			<wfw:commentRss>http://onestic.com/cron-en-magento-problemas-de-actualizacion/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

