29 $this->request = $request;
43 $id = $numeratorConfig [
'id'] ??
null;
46 $result = $this->updateNextSequentialNumber($id);
55 $result = $numerator->setConfig($this->request->getPostList()->toArray());
71 private function updateNextSequentialNumber($id)
75 if ($sequenceConfig !==
null && is_array($sequenceConfig)
76 && array_key_exists(
'nextNumberForSequence', $sequenceConfig) && $sequenceConfig[
'nextNumberForSequence'])
78 $nextNumber = $sequenceConfig[
'nextNumberForSequence'];
79 if (is_numeric($nextNumber))
82 ->registerRuntimeField(
'',
85 NumeratorSequenceTable::class,
86 [
'=this.ID' =>
'ref.NUMERATOR_ID']
90 ->addSelect(
'ref.NEXT_NUMBER',
'NEXT_NUMBER')
91 ->addSelect(
'ref.TEXT_KEY',
'TEXT_KEY')
96 if ($sequence &&
count($sequence) == 1)
101 $res = $numerator->setNextSequentialNumber($nextNumber, $sequence[0][
'NEXT_NUMBER'], $sequence[0][
'TEXT_KEY']);
102 if (!
$res->isSuccess())
112 return $result->addError(
new Error(Loc::getMessage(
'MAIN_NUMERATOR_EDIT_ERROR_NUMBER_NOT_NUMERIC')));
static update($numId, $config)
static load($numeratorId, $source=null)