выборка из Sendto для колонки представления

Тема в разделе "Lotus - Программирование", создана пользователем phantom76, 6 мар 2009.

  1. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    Надо в представлении в колонке показать часть содержимого из поля SendTo , поле в данном случае содержит струк. список из smtp-адресов. Нужно чтобы, когда письмо адресовано десятку чужих адресатов + на 1 адрес своего домена, в представлении отображались только адреса своего домена.

    пушу формулу для колонки:

    @If( @Contains(@LowerCase(SendTo) ;"@domain1.ru"); @MiddleBack(SendTo; "@domain1.ru";" ")+"@domain1.ru"; @Contains(@LowerCase(SendTo) ;"domain2.ru"); @MiddleBack(SendTo; "domain2.ru"; " ")+"domain2.ru"; @Nothing)

    работает не всегда корректно, аналогично если использовать @LeftBack..
    что можно еще придумать?
     
  2. lionk

    lionk Well-Known Member

    Регистрация:
    5 апр 2007
    Сообщения:
    308
    Симпатии:
    3
    попробуй список перестроить, удалив из него всех ненужных адресатов @Transform( list ; variableName ; formula )

    токо хз как это будет влиять на производительность вида, может и понизить
     
  3. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    _SendTo := @Explode(SendTo);
    @For(n := 1;n <= @Elements(_SendTo);n := n + 1;
    @do(
    @if(@Contains(_SendTo[n];"@domain1.ru");_ret:=_ret:_SendTo[n]);
    @if(@Contains(_SendTo[n];"@domain2.ru");_ret:=_ret:_SendTo[n])
    );
    @trim(@implode(_ret;","))
     
  4. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.288
    Симпатии:
    0
    Код (Text):
    a:=SendTo;
    b:=@Left(SendTo;"@")+("@domain1.ru":"@domain2.ru");
    @Trim(@Replace(a; b:a; b))
     
  5. phantom76

    phantom76 Lotus team
    Lotus team

    Регистрация:
    25 фев 2005
    Сообщения:
    363
    Симпатии:
    9
    Спасибо! тестирую методы... :)
     
Загрузка...

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