I made a modification in a query in classes/order/orderInvoice.php. I made some mistake in the process. The result was no error message (despite dev mode on). Instead I got a white page when I tried to generate an invoice or a delivery slip.
Predictably it took me much longer to find out what caused this bug then would have happened if there had been an error message. So my questions are: why does this happen? And can this be fixed?
BTW. What I did was that I replaced the function getProductsDetail() with the following:
public function getProductsDetail()
{
return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(
(new DbQuery())
->select('od.*,p.*,ps.*,m.name AS manufacturer')
->from('order_detail', 'od')
->leftJoin('product', 'p', 'p.`id_product` = od.`product_id`')
->leftJoin('product_shop', 'ps', 'ps.id_product = p.id_product AND ps.id_shop = od.id_shop')
->leftJoin('manufacturer', 'm', p.'id_manufacturer` = m.`id_manufacturer`')
->where('od.`id_order` = '.(int) $this->id_order)
->where($this->id && $this->number ? 'od.`id_order_invoice` = '.(int) $this->id : '')
->orderBy('od.`product_name`')
);
}
So I added a line for the manufacturer but in that line I put the quotes wrong.