1. Спонсор публикаций Marketplace codeby. Сервис, который так долго ждали. При расчетах используем биткоин. Первый товар уже в продаже: Консультация на тему ИБ от Ondrik8

    Скрыть объявление
  2. Спонсор публикаций Marketplace codeby. Сервис, который так долго ждали. При расчетах используем биткоин. Второй товар маркетплейса: Надёжная обфускация вашей программы от PingVinich

    Скрыть объявление

Прверка на уникальность

Тема в разделе "Lotus - Программирование", создана пользователем Ogion7, 4 июл 2007.

Статус темы:
Закрыта.
  1. Ogion7

    Ogion7 Гость

    Репутация:
    0
    Усем привет. Такая проблемка: в поле Name висит формула валидации
    Код (Text):
    x:= @DbLookup("Notes":"Nocache";@DbName;"groups"; Name;1;[FailSilent]);

    @If(
    @ThisValue="";@Failure("Название - обязательное поле");

    (@IsNewDoc & @Elements(x)>=1);@Failure("Обнаружен дубликат группы");

    @Elements(x)>1;@Failure("Обнаружен дубликат группы");

    @Success
    )
    при создании дока все нормально. Открываю уже существующий, и меняю поле Name на неуникальное(т.е есть документ с таким значением в поле Name). Жму кнтрл+с -- молчание, жму второй раз -- сообщение об дубликации названия поля.
    Заковыка по моему в строке перед @Success -- в представлении еще нет данных о новом значении(одно есть), полсе первого сохранения вьюха обновилась и их уже два. Если поставить >= то будет плеваться при сохранении. Есть идея сделать поле в котором хранить старое имя, и если оно не совпадает с новым, а элементов нашло 1 -- то ошибка. Но может можно как то проще?
     
  2. Ogion7

    Ogion7 Гость

    Репутация:
    0
    Решил с помощью представления (Duplicate_groups) из двух столбцов: первый категория по Name, второй--унид документа. В валидации след-й код:
    :)
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей