2014-09-26 5 views
2

Мне нужно переназначить статус из состояния в процессе миграции.статус несанкционированного заказа от статуса

$status->setStatus('approved') 
     ->unassignState(Mage_Sales_Model_Order::STATE_NEW) 
     ->assignState(Mage_Sales_Model_Order::STATE_PROCESSING, false) 
     ->save(); 

Если статус присвоен миграции, он работает. Но если состояние не назначено, есть исключение, а ошибки . Каков наилучший способ решить эту проблему?

ответ

0

Единственное решение, которое возникло для меня, заключается в создании функции trapper, которая ловит исключение. В этом случае кажется, что миграция работает, даже если статус не назначен состоянию.

function unAssignStatusFromState($status, $state) 
{ 
    try { 
     $status->unassignState($state); 
     return true; 
    } catch(Exception $e) { 
     return false; 
    } 
} 
Смежные вопросы