Ejemplo n.º 1
0
 /**
  *
  * @param int $product
  * @return array $status
  */
 private function updateProductInSAP($idProduct)
 {
     $product = ProductQuery::create()->findByPK($idProduct);
     $connectorClient = new SAPConnectorClient();
     $status = array();
     try {
         $productSapExists = SapProductQuery::create()->whereAdd(SapProduct::ITEMCODE, $product->getItemCode())->count();
         //     		echo SapProductQuery::create()->whereAdd(SapProduct::ITEMCODE, $product->getItemCode())->createSql();
         //     		echo $productSapExists;
         //     		die;
         if (!$productSapExists) {
             $result = $connectorClient->createProduct($product);
         } else {
             $result = $connectorClient->updateProduct($product);
         }
     } catch (Exception $e) {
         $status['code'] = 500;
         $status['message'] = $e->getMessage();
         return $status;
     }
     if ($result->SapProductoResult->code == 200) {
         $status['code'] = $result->SapProductoResult->code;
         $status['message'] = $this->i18n->_('The product ') . $product->getIdProduct() . $this->i18n->_(' has been syncronized with SAP');
     } else {
         $status['code'] = $result->SapProductoResult->code;
         $this->setFlash('warning', $result->SapProductoResult->message);
         $status['message'] = $this->i18n->_($result->SapProductoResult->message);
     }
     return $status;
 }