Доступ к документу-родителю

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

  1. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Можно ли в формуле значения по умолчанию для поля документа-ответа получить доступ к документу-родителю? Проблема в том, что поле $Ref почему-то в момент вычисления значения по умолчанию оказывается пустым.
     
  2. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Создавай документ-ответ на скрипте.
     
  3. Elena Nefedova

    Elena Nefedova Гость

    1. Это редко требуется, так как в момент создания ответного документа наследуются значения родительских полей и используются в вычислении Default-значений, если галка в поле стоит Formula inherit values from selected document. (При всех последующих вычислениях используются значения текущего созданного документа!!)
    2. Но если все же это нужно, то @InheritedDocumentUniqueID вернет нужный UNID
     
  4. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    1. Проблема в том, что значения наследуются именно из выбранного документа, а во вьюхе присутствуют документы нескольких типов (ответы на данный ответ). Какой будет выбран - заранее неизвестно
    2. если мне не изменяет память, то @InheritedDocumentID опять же вернет UNID выбранного документа, коим не обязательно будет нужный мне родитель
    Одним словом, придется и впрямь все руками на LS собирать
     
  5. Elena Nefedova

    Elena Nefedova Гость

    1. Если нужно создавать ответ всегда только к главному документу, то надо выбрать тип Response (а не Response-to-Response). Тогда новый документ автоматически прицепится к корню ветки.
    2. Если ответ должен прикрепляться к другому ответу вполне определенного вида, то делается действие
    Код (Text):
    @If(Form="myform"&MyField="MyText";
    @Command([Compose];"MyResponse";
    @Prompt([OK];"Ошибка";"Ошибка"))
    3. @InheritedDocumentUniqueID вернет, конечно, UNID документа курсора, ну а у этого документа, конечно, будет собственное поле $Ref, значение которого можно получить, если потребуется

    LS это в данном случае излишество, как мне кажется
     
  6. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    1. форма у меня делает именно Response, однако документ все равно цепляет значения у того документа, который был выбран в этот момент во вьюхе. Конечно, он делается ответом на то, что надо, однако значение поля вычисляется корректно лишь если был выбран док верхнего уровня
    2. как уже отметил, ответом он делается как надо, так что это не потребовалось :)
    3. вью содержит четырехуровневую иерархию.. на каком из документов при этом будет указатель - неизвестно, так что ориентироваться на $Ref в общем случае сложно (в 5ке ведь даже @While нет, чтобы быстро "добежать" по $Ref'ам до вершины иерархии)
     
  7. Elena Nefedova

    Elena Nefedova Гость

    Печально это все.
    Тут только серия @If-ов прокатит. Либо их писать, либо и правда - скриптом.
     
  8. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.288
    Симпатии:
    0
    Цикла в 4-ке/5-ке нет, зато есть рекурсия.
    Задача решабельна (из спортивного интереса) на чистых "собаках". Но LS тут уместнее
     
Загрузка...
Похожие Темы - Доступ документу родителю
  1. Kizarek86
    Ответов:
    9
    Просмотров:
    1.822
  2. NickProstoNick
    Ответов:
    5
    Просмотров:
    1.401
  3. DoberGroup
    Ответов:
    0
    Просмотров:
    51
  4. systeman
    Ответов:
    1
    Просмотров:
    70
  5. Гринго
    Ответов:
    38
    Просмотров:
    1.096

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