Is there a way to give a store id as parameter when executing a model with cronjob ?
You cannot specify store scope for Magento Cron Job, but you can add additional arguments that you can use inside of it.
Specify additional node that you can process via your cron method:
<crontab>
<jobs>
<job_name>
<schedule>
<cron_expr>* * * * * *</cron_expr>
</schedule>
<run>
<model>module/observer::myJob</model>
</run>
<store>store_code</store>
</job_name>
</jobs>
</crontab>
And method where you receiving the schedule object with current job code:
public function myJob($schedule)
{
$jobsRoot = Mage::getConfig()->getNode('crontab/jobs');
$jobConfig = $jobsRoot->{$schedule->getJobCode()};
$yourStoreNode = (string) $jobConfig->store;
// Here goes store related functionality
}
All the store related models can load data only for a particular store, so I hope it solves your problem.