private static function queryStock($warehouse_id)
 {
     $archive_table = self::$archive_query_in_excel;
     $stock_list = Product::getOldProductFunction()->stockRetrieveDetailAll($warehouse_id);
     if ($archive_table) {
         //Create new excel object
         $excel_row = 1;
         $obj_excel = new PHPExcel();
         $obj_sheet = $obj_excel->getActiveSheet();
         $obj_sheet->getColumnDimension('A')->setWidth(15);
         $obj_sheet->getColumnDimension('B')->setWidth(15);
         $obj_sheet->getColumnDimension('C')->setWidth(15);
         $obj_sheet->getColumnDimension('D')->setWidth(15);
         $obj_sheet->getColumnDimension('E')->setWidth(15);
         $obj_sheet->getColumnDimension('F')->setWidth(15);
         $obj_sheet->getColumnDimension('G')->setWidth(15);
         //Set Header Row
         $obj_sheet->setCellValue('A1', 'Product ID');
         $obj_sheet->setCellValue('B1', 'EAN');
         $obj_sheet->setCellValue('C1', 'Purchase Price');
         $obj_sheet->setCellValue('D1', 'Stock Qty');
         $obj_sheet->setCellValue('E1', 'Stock Value');
         $obj_sheet->setCellValue('F1', 'Last Order Date');
     }
     $stock_qty_total = 0;
     $stock_value_total = 0;
     foreach ($stock_list as $stock_detail) {
         $pid = $stock_detail['products_id'];
         $aid = $stock_detail['articles_id'];
         $stock_available = $stock_detail['stock'];
         if (!isset($obj_product) || $obj_product->id != $pid) {
             $obj_product = new Product($pid);
         }
         $stock_booked = $obj_product->getStockBookedByRealOrderQuantity($aid, WAREHOUSE_ID_FOR_HANDLING_ORDERS);
         $stock_qty = $stock_available + $stock_booked;
         if ($stock_qty > 0) {
             $purchase_price = $obj_product->getCOGSObject()->purchase_price;
             $stock_value = $stock_qty * $purchase_price;
             $stock_qty_total += $stock_qty;
             $stock_value_total += $stock_value;
             if ($archive_table) {
                 $excel_row++;
                 $ean = $obj_product->getEAN($aid);
                 $last_order_date = $obj_product->getLastOrderDate($aid);
                 //Set Data Row
                 $obj_sheet->setCellValue('A' . $excel_row, $pid);
                 $obj_sheet->setCellValue('B' . $excel_row, $ean);
                 $obj_sheet->setCellValue('C' . $excel_row, $purchase_price);
                 $obj_sheet->setCellValue('D' . $excel_row, $stock_qty);
                 $obj_sheet->setCellValue('E' . $excel_row, $stock_value);
                 $obj_sheet->setCellValue('F' . $excel_row, $last_order_date);
             }
         }
     }
     if ($archive_table) {
         $period = date(self::PERIOD_DATE_FORMAT, strtotime('-1 day'));
         self::saveArchiveFile($obj_excel, $period, self::ARCHIVE_FILENAME_STOCK);
     }
     self::$current_stock_qty = $stock_qty_total;
     self::$current_stock_value = $stock_value_total;
 }