In sales_flat_order i m adding custom column. Now when i place order that time i want to save data in custom column
I m trying this code:
config.xml
<global>
<events>
<checkout_onepage_controller_success_action>
<observers>
<price_observer>
<type>singleton</type>
<class>Company_Example_Model_Observer</class>
<method>setIdInOrder</method>
</price_observer>
</observers>
</checkout_onepage_controller_success_action>
</events>
<global>
observer.php
public function setIdInOrder($observer) {
$event = $observer->getEvent();
$orderId = $observer->getEvent()->getOrderId();
$id = Mage::getSingleton('core/session')->getStudentId();
$order = Mage::getModel('sales/order')->load($orderId);
$order->setData('student_id',$id);
$order->save();
Mage::getSingleton('core/session')->unsStudentId();
}
set session like this
$id = 1;
Mage::getSingleton('core/session')->setStudentId($id);
Now i m getting this error
Fatal error: Call to a member function getMethodInstance() on a non-object in F:\wamp\www\tution\app\code\core\Mage\Payment\Model\Observer.php on line 46
I can't get it where i m wrong. After Add this event this error occured. How to fixed this error
Best Answer
In config.xml add the event
sales_order_place_after
Change in observer.php,it worked for me