/** * Check if increment id already exists, unset it if this is the case * * @param Varien_Object $object * @return SSE_AutoSku_Model_Entity_Attribute_Backend_Increment */ protected function checkDuplicateValue($object) { /* @var $resource Mage_Eav_Model_Entity_Abstract */ $resource = $object->getResource(); $code = $this->getAttribute()->getName(); /* @var $adapter Varien_Db_Adapter_Interface */ $adapter = $object->getResource()->getWriteConnection(); $bind = [$code => $object->getIncrementId()]; /* * increment id should be a static attribute (field in entity table), so we access it directly */ $select = $adapter->select()->from($resource->getEntityTable(), [$resource->getEntityIdField()])->where("{$code} = :{$code}"); $result = $adapter->fetchOne($select, $bind); if ($result) { $object->setIncrementId(null); } return $this; }
/** * Set new increment id to object * * @param Varien_Object $object * @return Mage_Eav_Model_Entity_Abstract */ public function setNewIncrementId(Varien_Object $object) { if ($object->getIncrementId()) { return $this; } $incrementId = $this->getEntityType()->fetchNewIncrementId($object->getStoreId()); if ($incrementId !== false) { $object->setIncrementId($incrementId); } return $this; }
/** * Enter description here... * * @param Varien_Object $object * @return Mage_Eav_Model_Entity_Abstract */ public function setNewIncrementId(Varien_Object $object) { if ($object->getIncrementId()) { return $this; } $incrementId = $this->getConfig()->fetchNewIncrementId($object->getStoreId()); if (false !== $incrementId) { $object->setIncrementId($incrementId); } return $this; }