1. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

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

Можно Ли На Собаках Получить Альтернативное Имя?

Тема в разделе "Lotus - Программирование", создана пользователем Shandrik, 19 май 2014.

  1. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Хочу в Input-Translation превратить выбранные по "Use Address dialog for choices" имена в альтернативные.
    Возможно ли?
     
  2. savl

    savl Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    28 окт 2011
    Сообщения:
    2.116
    Симпатии:
    157
    Можно попробовать использовать "Use View dialog for choices", указать базу, представление, колонку.
    Либо через @DbLookUp, но думаю это будет дольше.
    Чистой собаки нет.
     
  3. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Отличная идея! Спасибо!
    Как я сам не дотумкал? :D
     
  4. garrick

    garrick Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    26 окт 2009
    Сообщения:
    853
    Симпатии:
    68
    @NameLookup([Exhaustive]; @Username; "AltFullName")[1]
     
  5. garrick

    garrick Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    26 окт 2009
    Сообщения:
    853
    Симпатии:
    68
    В принципе через @NameLookup можно считать любое поле из документа пользователя в адресной книге.
     
  6. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Да, я совсем забыл про эту функцию..


    Вобщем, вот, что вышло:

    @Name([CN];@Transform(@ThisValue;"v";
    @Do(alt:=@NameLookup([Exhaustive]; v; "AltFullName")[1];
    @If(alt="";v;alt))
    ))
     
  7. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.375
    Симпатии:
    336
    а не проще @Subset(@Trim(...);-1)
     
  8. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Нет, не проще @ThisValue - список, а после @NameLookup-а получается список списков. @Subset вернет его последний элемент. Мне же нужны первые элементы каждого списка.

    @Trim тут вообще вреден.
     
  9. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.375
    Симпатии:
    336
    не понятный тезис - чем вреден? ;) вот пробелы и лишние пробелы - это вредно
    а смысл @Trrim - убрать пустые элементы списка - если они есть

    с массивом - да, я ошибся - просто не понял логики и забыл что [] - считают не от 0 - просто 1 надо (вместо -1)

    не заметил - чтобы alt соединял списки
    @Subset предполагалось вместо @Do и @if

    Добавлено:
    а такое есть в собаках ? ;)
     
  10. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Если в Person-документе нет AltFullName, то, разумеется, берем FullName, и @Trim тут всё сломает.


    Разумеется, получается плоский список, но мы-то знаем...
     
  11. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.375
    Симпатии:
    336
    кажется понял чего хочется достичь ;)...
    да - @Subset не спасет при таком алгоритме
     
  12. Kee_Keekkenen

    Kee_Keekkenen Well-Known Member

    Репутация:
    0
    Регистрация:
    5 сен 2006
    Сообщения:
    639
    Симпатии:
    6
    а так @username(1) ?
     
  13. swyatogor

    swyatogor Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    24 фев 2014
    Сообщения:
    475
    Симпатии:
    13
    а еще вот так можно)
    Код:
    Server := "server";
    DbName := "names.nsf";
    View := "($LDAPCN)";
    Registrator := @LowerCase(@Name([CN];какой-то юзер));
    
    @Certificate([AlternateSubject];@DbLookup("":"NoCache"; Server : Dbname; View; Registrator; "Certificate"))
     
  14. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Я обрабатываю не текущего юзера, а выбранного.
     
Загрузка...

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