Поле Quote Number в SugarCRM является автоинкрементным полем (инкрементирование происходит не в самой SugarCRM, а в базе данных). Он также имеет индекс поля с ограничением unique.
Из-за этого поле не может быть просто сброшено. Номер котировки должен быть уникальным и автоматически увеличиваться.
Чтобы иметь сбрасываемое поле «Номер заявки» в SugarCRM, вам потребуется создать новое поле с некоторой специальной логикой и/или создать пакет SugarCRM, который настраивает поведение поля «Номер заявки» по умолчанию или нового, но эквивалентного поля. и обновляет все остальное, используя поле Quote Number в функции конкатенации, чтобы использовать новое поле.
Это был бы лучший способ, хотя и потребовал бы наибольшей работы. Это также лучший способ выполнить то, что вам нужно, если вы используете SugarCRM On Demand, а не размещаете его на своем собственном сервере. И это единственный безопасный способ сделать это. Возможно, уже существует пакет, позволяющий это сделать, поэтому вам, вероятно, следует проверить SugarExchange.
В качестве альтернативы вам нужно будет изменить vardefs таблицы базы данных Quotes, удалить ограничение unique для индекса quote_num, а затем сбросить значение автоматического приращения таблицы базы данных, чтобы она начала подсчет с любого числа, которое вы хотите.
Чтобы сделать это, хотя и нерекомендуемое (поскольку это нарушает совместимость с будущими обновлениями SugarCRM и может иметь непреднамеренные побочные эффекты для всего, что зависит от этого конкретного поведения поля Quote Number), выполните следующие шаги.
Это предполагает, что вы размещаете свой экземпляр SugarCRM на собственном сервере, а не на SugarCRM On Demand, и что вы используете MySQL. Существует также несколько различных способов сделать номер котировки сбрасываемым; это всего лишь один из них - он может быть не самым лучшим.
Сделайте резервную копию вашей базы данных и экземпляра SugarCRM. Вы должны делать эти резервные копии регулярно, несмотря ни на что, конечно.
Отредактируйте {SugarCRM root}/modules/Quotes/vardefs.php, чтобы удалить ограничение unique для индекса quote_num. Вы можете найти это в элементе indices массива $dictionary['Quote'] в нижней части файла.
До:
array('name' =>'quote_num', 'type'=>'unique', 'fields'=>array('quote_num', 'system_id'))
После:
array('name' =>'quote_num', 'type'=>'index', 'fields'=>array('quote_num', 'system_id'))
Выполните быстрый ремонт и восстановление. Вы делаете это, перейдя на страницу администратора SugarCRM, нажав «Восстановить», затем «Быстрое восстановление и перестроение». После завершения первого прохода внизу страницы вы увидите текстовое поле с одним или двумя операторами SQL. Нажатие на кнопку «Выполнить» применит сделанные вами обновления к записи индекса Quotes vardefs.
Сбросить значение автоматического приращения таблицы quotes. Если вашей базой данных является MySQL, вы можете сделать это, выполнив: ALTER TABLE quotes AUTO_INCREMENT=1 (если вы хотите начать считать с 1 в дальнейшем).
Как только эти шаги будут выполнены, ваши номера котировок снова начнутся с 1 (или любого другого числа, указанного вами в вашем операторе ALTER TABLE), и вы сможете снова сбросить номер в будущем, повторно выполнив оператор ALTER TABLE.
person
Kyle Lowry
schedule
06.03.2013