source/Application/Model/Discount.php
public function save()
    {
        // Auto assign oxsort, if it is null
        $oxsort = $this->oxdiscount__oxsort->value;
        if (is_null($oxsort)) {
            $shopId = $this->oxdiscount__oxshopid->value;
            $newSort = $this->getNextOxsort($shopId);
            $this->oxdiscount__oxsort = new \oxField($newSort, \OxidEsales\Eshop\Core\Field::T_RAW);
        }

        // Validate oxsort before saving
        if (!is_numeric($this->oxdiscount__oxsort->value)) {
            $exception = oxNew(\OxidEsales\Eshop\Core\Exception\InputException::class);
            $exception->setMessage('DISCOUNT_ERROR_OXSORT_NOT_A_NUMBER');

            throw $exception;
        }

        try {
            $saveStatus = parent::save();
        } catch (\OxidEsales\Eshop\Core\Exception\StandardException $exception) {
            if ($exception->getCode() == \OxidEsales\Eshop\Core\Database\Adapter\Doctrine\Database::DUPLICATE_KEY_ERROR_CODE && false !== strpos($exception->getMessage(), 'UNIQ_OXSORT')) {
                $exception = oxNew(\OxidEsales\Eshop\Core\Exception\InputException::class);
                $exception->setMessage('DISCOUNT_ERROR_OXSORT_NOT_UNIQUE');
            }

            throw $exception;
        }

        return $saveStatus;
    }
public function save()
    {
        // Auto assign oxsort, if it is null
        $oxsort = $this->oxdiscount__oxsort->value;
        if (is_null($oxsort)) {
            $shopId = $this->oxdiscount__oxshopid->value;
            $newSort = $this->getNextOxsort($shopId);
            $this->oxdiscount__oxsort = new \oxField($newSort, \OxidEsales\Eshop\Core\Field::T_RAW);
        }

        // Validate oxsort before saving
        if (!is_numeric($this->oxdiscount__oxsort->value)) {
            $exception = oxNew(\OxidEsales\Eshop\Core\Exception\InputException::class);
            $exception->setMessage('DISCOUNT_ERROR_OXSORT_NOT_A_NUMBER');

            throw $exception;
        }

        try {
            $saveStatus = parent::save();
        } catch (\OxidEsales\Eshop\Core\Exception\StandardException $exception) {
            if ($exception->getCode() == \OxidEsales\Eshop\Core\Database\Adapter\Doctrine\Database::DUPLICATE_KEY_ERROR_CODE && false !== strpos($exception->getMessage(), 'UNIQ_OXSORT')) {
                $exception = oxNew(\OxidEsales\Eshop\Core\Exception\InputException::class);
                $exception->setMessage('DISCOUNT_ERROR_OXSORT_NOT_UNIQUE');
            }

            throw $exception;
        }

        return $saveStatus;
    }
public function save ( ) { // Auto assign oxsort, if it is null $ oxsort = $ this -> oxdiscount__oxsort -> value ; if ( is_null ( $ oxsort ) ) { $ shopId = $ this -> oxdiscount__oxshopid -> value ; $ newSort = $ this -> getNextOxsort ( $ shopId ) ; $ this -> oxdiscount__oxsort = new \ oxField ( $ newSort , \ OxidEsales \ Eshop \ Core \ Field :: T_RAW ) ; } // Validate oxsort before saving if ( ! is_numeric ( $ this -> oxdiscount__oxsort -> value ) ) { $ exception = oxNew ( \ OxidEsales \ Eshop \ Core \ Exception \ InputException :: class ) ; $ exception -> setMessage ( 'DISCOUNT_ERROR_OXSORT_NOT_A_NUMBER' ) ; throw $ exception ; } try { $ saveStatus = parent :: save ( ) ; } catch ( \ OxidEsales \ Eshop \ Core \ Exception \ StandardException $ exception ) { if ( $ exception -> getCode ( ) == \ OxidEsales \ Eshop \ Core \ Database \ Adapter \ Doctrine \ Database :: DUPLICATE_KEY_ERROR_CODE && false !== strpos ( $ exception -> getMessage ( ) , 'UNIQ_OXSORT' ) ) { $ exception = oxNew ( \ OxidEsales \ Eshop \ Core \ Exception \ InputException :: class ) ; $ exception -> setMessage ( 'DISCOUNT_ERROR_OXSORT_NOT_UNIQUE' ) ; } throw $ exception ; } return $ saveStatus ; }
Save the discount.
Assigns a value to oxsort, if it was null
Does input validation before saving the discount.

Returns saving status

@throws \oxInputException
@throws StandardException

@return bool
Save the discount . Assigns a value to oxsort if it was null Does input validation before saving the discount .