Проверка Ввода Для Связанных Полей

Тема в разделе "Lotus - Программирование", создана пользователем admigator, 21 янв 2012.

  1. admigator

    admigator Active Member

    Регистрация:
    20 дек 2010
    Сообщения:
    40
    Симпатии:
    0
    Добрый день, Господа!
    Подскажите, вот с такой задачкой:
    Есть поля fl_1 и fl_2 тип "Список с окном"
    Поле fl_1 принимает значение из представления view_1 формулой @Dbcolumn("":"";"view_1";1)
    Поле fl_2 тоже из представления view_1 формулой @DbLookup("":"";"view_1";fl_1;2)
    Ситуация такая:Пользователь выбирает несколько значений в поле fl_1, ( тип товара: бытовая техника, компьютерная техника)
    в соответствии с ними по ключу fl_1 выбирает значения для поля fl_2 (выбирает сам товар: чайник, системный блок)
    Надо: проверять, если пользователь выбрал тип товара и "бытовая техника" и "компьютерная техника" а в поле
    выбора товара поставил только "системный блок" то "бытовая техника" из поля fl_1 удалить.
    Может есть какие идеи?
    Спасибо.
     
  2. rinsk

    rinsk Lotus team
    Lotus team

    Регистрация:
    12 ноя 2009
    Сообщения:
    799
    Симпатии:
    78
    Модифицировать view_1 для добавления эээ... "обратного" поиска ключа по его значению.
    т.е. первая колонка будет что то вроде @Trim(">"+key:"<"+value).
    формула для fl_1 будет @Unique(@Dbcolumn("":"";"view_1";2))
    для fl_2 - @DbLookup("":"";"view_1";">"+fl_1;3)

    в Translate fl_1 получаем типы товаров по выбранным товарам:
    @Unique(@DbLookup("":"";"view_1";"<"+fl_2;2))
    Для уменьшения вероятности возникновения проблем с 32к - для fl_1 можно использовать
    @DbLookup("":"";"view_1";">";2;[PartialMatch])

    как то так...
    P.S.
    а можно тупо через @For побегать по выбранным типам товара и глянуть - выбран ли товар по этому типу...
     
  3. admigator

    admigator Active Member

    Регистрация:
    20 дек 2010
    Сообщения:
    40
    Симпатии:
    0

    А что значит "в Translate fl_1"?, и как-то не отображается @DbLookup("":"";"view_1";">"+fl_1;3)
    пишет что не существует значений
    Спасибо.
     
Загрузка...

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