Генерация артикулов более 99999

Данный раздел посвящен обсуждению работы программного продукта S-Market версия 3 (СУБД FireBird).
Конвертация на СУБД FireBird.

Модератор: nk_dk

Генерация артикулов более 99999

Сообщение Roman 23 ноя 2010, 15:59

Здравствуйте. Сейчас в нашей базе кол-во артикулов приближается к 99999, при этом генератор articul_gen_id в их создании уже участия не принимает, а работает процедура get_last_articul (я предполагаю). Вот вопрос - почему генератор не пускают работать дальше 99999? Работа с генератором в многопользовательской базе намного логичнее чем поиск пустых значений. и что будет, когда кол-во артикулов превысит этот таинственный порог? Дело в том, что я хочу скриптом создать несколько тысяч карточек с артикулом скажем 100000 и выше. Проблем не будет?
Roman
 
Сообщения: 45
Зарегистрирован: 07 авг 2009, 15:12

Re: Генерация артикулов более 99999

Сообщение sergk 23 ноя 2010, 16:34

Когда количество артикулов превысит этот "таинственный" порог ничего не случится, т.к. ограничения на количество артикулов нет. Номер артикула не может превышать 30 символов.
Из ограничений имеется параметр конфигуратора DelimWeightArticul, который резервирует диапазон артикулов для весового товара (необходим для связки с одной из версий старинного ПО, которым нужен не PLU или любое число, а артикул для генерации весового ШК - сейчас почти нигде не используется).
В генерации номера артикула генератор действительно участия не принимает:
во-первых, ввиду невысокой активности одновременного добавления новых карточек
во-вторых, хочется чтоб артикулы были более-менее последовательными, без "пустот". Генератором же пустоты образуются намного чаще.
Начальник отдела программных разработок ЗАО "НПФ ДатаКрат-С"
sergk
 
Сообщения: 53
Зарегистрирован: 07 апр 2009, 19:38

Re: Генерация артикулов более 99999

Сообщение Roman 23 ноя 2010, 17:16

боюсь не так всё просто. Сейчас на тестовой базе я провёл эксперимент - создал карточку с артикулом 999999. При создании следующей карточки программа выдала предупреждение "Переполнение диапазона. Необходимо обновить параметры генерации артикула". Артикул сгенерировался 1 000 000. Следующая карточка предложила такой же артикул, на нажатие кнопки генерации нового артикула снова появляется эта же ошибка и номер артикула не меняется, артикул по прежнему предлагается 1000000. т.е. надо угадать новый артикул. Как грамотно разрулить такую ситуацию?
Roman
 
Сообщения: 45
Зарегистрирован: 07 авг 2009, 15:12

Re: Генерация артикулов более 99999

Сообщение Roman 23 ноя 2010, 17:47

Вообще если не тайна, не откроете секрет, по какому принципу генерируется номер карточки, надо то создать 4000 карточек, вручную это нереально. Если я просто тупо задам добавление с 100 000, с инкрементом 1, конфликта с вашей генерацией не будет?
Roman
 
Сообщения: 45
Зарегистрирован: 07 авг 2009, 15:12

Re: Генерация артикулов более 99999

Сообщение sergk 23 ноя 2010, 17:53

Конфликта с генерацией не будет.
Для генерации из интерфейса артикулов более 5 символов необходимо установить параметр в конфигураторе GenArtLength в нужное для вас значение.
Начальник отдела программных разработок ЗАО "НПФ ДатаКрат-С"
sergk
 
Сообщения: 53
Зарегистрирован: 07 апр 2009, 19:38

Re: Генерация артикулов более 99999

Сообщение Roman 23 ноя 2010, 18:05

Спасибо
Roman
 
Сообщения: 45
Зарегистрирован: 07 авг 2009, 15:12


Вернуться в S-Market версия 3 (FireBird)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron