Собаки + Lwf

Тема в разделе "Lotus - Программирование", создана пользователем SkinGreek, 8 сен 2008.

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

    SkinGreek Гость

    Всем привет
    нарвался на очередную сложность в понимании работы лотус машины.

    В общем не могу понять почему данную формулу он выполняет
    Код (Text):
    mng := @Relation([Manager of Employee]; @JobProperty([DDInitiator]));mng
    а эту нет
    Код (Text):
    emp:= @JobProperty([DDInitiator]);mng := @Relation([Manager of Employee]; emp);mng
    По сути я просто скидываю значение другого JobProperty в локальную переменную, и передаю уже переменную в @Relation. Но почему то вторая версия формулы мне выдает "More than one document matches criteria for relation: @Relation([Manager of Employee]; emp)"
    По сути мне нужно узнать прямого подчиненного владельца предыдущей активности, зная инициатора.иерархия подчиненный-начальник строго иерархична. То есть у DDInitiator ну никак не может быть несколько начальников.
    Изначальная формула выглядит так
    Код (Text):
    mng := @JobProperty([DDInitiator]);
    emp := "";
    @DoWhile(
    emp := mng;
    mng := @Relation([Manager of Employee]; emp);
    @JobProperty([Previous Activity Owner]) = mng
    );
    emp
    Но она конечно не работает из-за непонятной проблемы описанной выше.
    В описании JobProperty не нашел не одного ограничения на использование формул, да и формула не такая уж сверх требовательная

    Есть идеи как побороть это?
     
  2. SkinGreek

    SkinGreek Гость

    Может есть идеи как создать стек из пользователей через который пройден документ?
    Вообще нужно решить простейшую задачу...
    Документ проходит визирование от подчиненого к начальнику. Отношение начальник подчиненый

    Например есть 4 пользователя
    Код (Text):
    Usr1
    |-Usr2
    |-Usr3
    |-Usr4
    Usr1 отправляет док на визирование
    Usr2 одобряет - док переходит Usr3
    Usr3 одобряет - док переходит Usr4
    Usr4 отклоняет - док переходит Usr3
    Usr3 отклоняет - док переходит Usr2
    Usr2 отклоняет - док переходит Usr1

    Вот как раз последние 2 шага я никак не могу сделать((. как определить кому передать если Usr3 сначала одобрил, а после того как док отклонил, usr4 тоже отклонил.

    Сначала решил что такая простая формула мне поможет, но эта проблема с переменной меня просто убила.
    Есть идеи как еще можно решить эту задачу? У меня фантазия ужо закончилась(
     
  3. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Используй многозначное поле, структуры например:

    1. Иванов - принял
    2.Петров - принял
    3.Сидоров - отклонил

    и делай с ним что душе угодно. дополняй, удаляй....
     
Статус темы:
Закрыта.

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