Уникальный, не первичный ключ

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
artgkx
Бывалый
Сообщения: 58
Зарегистрирован: 25 Декабрь 2010, 12:23

Уникальный, не первичный ключ

Сообщение artgkx »

Clarion 6.3 В словаре два ключа IDkey по полю ID и NameKey по полю Name. IdKey первичный, уникальный. NameKey уникальный.
При вводе в Form Id присваивается AutoIncrement. Предполагал что Name будет проверяться и выдаст ошибку DuplikateKey при дублирующемся значении. Но этого не происходит и добавляются повторяющиеся значения.
Control Value Validation Conditions .. стоит. В чем я неправ?
kreator
✯ Ветеран ✯
Сообщения: 5169
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Re: Уникальный, не первичный ключ

Сообщение kreator »

А база какая? По-моему, на уровне шаблонов нет проверки, только на уровне БД. Если у Вас TPS, то filemanager отработает нормально, проверено 20 годами работы :lol: .
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8071
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 29 раз
Поблагодарили: 97 раз

Re: Уникальный, не первичный ключ

Сообщение Игорь Столяров »

kreator писал(а):При вводе в Form Id присваивается AutoIncrement.
Если в словаре для ключа задан параметр AutoIncriment, то увеличение значение последнего поля ключа делается ДО открытия FORM.
Но делается это действительно, либо кодом шаблона, либо на стороне сервера для SQL БД.

Нужно смотреть описание (структуру) таблицы БД и более подробная информация о коде (какие шаблоны используются и как добавляется запись в список).
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5169
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Re: Уникальный, не первичный ключ

Сообщение kreator »

Игорь Столяров писал(а):Если в словаре для ключа задан параметр AutoIncriment, то увеличение значение последнего поля ключа делается ДО открытия FORM.
Для Name здесь нет autoincrement (я так понял), только уникальность.
We are hard at work… for you. :)
artgkx
Бывалый
Сообщения: 58
Зарегистрирован: 25 Декабрь 2010, 12:23

Re: Уникальный, не первичный ключ

Сообщение artgkx »

База TPS. Шаблоны ABC. Стандартная Browse/Form. Раньше вроде-бы проверял, работало как надо. Просто вернулся к старому проекту, переработал для заказчика, начали вводить справочники и вот засада! Оператор (девушка) даже не смотрит что вводит.
kreator
✯ Ветеран ✯
Сообщения: 5169
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Re: Уникальный, не первичный ключ

Сообщение kreator »

Специально проверил у себя. Всё работает как надо. А что, если в словаре стоит уникальность ключа, а в файле TPS нет. При загрузке проверяется это дело? К сожалению, больше работаю с SQL, поэтому не могу однозначно сказать. Но то, что при записи проверяется на уровне класса FileManager, это точно. На уровне формы ничего нет, притом, что можно и без формы ввести (например, EIP).
We are hard at work… for you. :)
Ответить