jueves, 22 de diciembre de 2011

Magento: Como configurar un cron

Para configurar un cron usando el motor de crons de Magento se seben seguir los siguientes pasos:

Variables (Respetar las mayúsculas es importante):
    {{Empresa}} ó {{empresa}} Nombre de espacio dentro de ./app/code/local
    {{Modulo}} ó {{modulo}} Nombre del modulo dentro del nombre de espacio, debe estar dentro de ./app/code/local/{{Empresa}}
    {{modelo}} Nombre del modelo del modulo.
    {{metodo}} Nombre del metodo del modelo que se va a ejecutar.
    {{cron_name}} Nombre del cron con el que sera identificado dentro de la tabla cron_schedule.

Precondiciones:
    Tener declarado el modulo con el archivo ./app/etc/{{Empresa}}_{{Modulo}}.xml
    Tener ya la estructura de directorios del modulo, y almenos un modelo.
    Tener el archivo config.xml del modulo

En el archivo config.xml solo debemos seguir esta estructura:

<?xml version="1.0"?>
<config>
    <modules>
        <{{Empresa}}_{{Modulo}}>
            <version>0.1.0</version>
        </{{Empresa}}_{{Modulo}}>
    </modules>
...
    <global>
        <models>
            <{{modulo}}>
                <class>{{Empresa}}_{{Modulo}}_Model</class>
            </{{modulo}}>
        </models>
    </global>
...
    <crontab>
        <jobs>
            <{{cron_name}}>
                <schedule><cron_expr>0 * * * *</cron_expr></schedule>
                <run><model>{{metodo}}/{{empresa}}_{{modulo}}_{{modelo}}::{{metodo}}</model></run>
            </{{cron_name}}>
        </jobs>
    </crontab>
</config>


El valor del nodo <cron_expr>, equivale a una expresion del programa crontab de linux.

    <schedule><cron_expr>0 * * * *</cron_expr></schedule>

No hay comentarios:

Publicar un comentario