Скрытие Action в EmbeddedView

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

  1. SkinGreek

    SkinGreek Гость

    Всем привет.

    Подскажите плз, можно ли скрыть кнопку в View, которая в последсвии будет внедрена в форму, в зависимости от поля определенного в форме-вндренца(форма в которую будет внедрено данное представление).

    В действительности это поле конечно там не поределено, но текущий документ будет иметь значение этого поля:rolleyes:).(Речь идет о LWF поле ACTIVITYOS)
    Но думаю это не принципиально важно, так как если смогу сослаться на поле определенное в форме-внедренца, то и к ACTIVITYOS смогу сослаться.

    Не хочется создавать 2 одинаковых представления отличающихся лишь наличием Action'a:(
     
  2. Xellos

    Xellos Гость

    Попробуйте прописать в свойствах action в разделе "Hide then" формулу скрытия, которая будет зависеть от свойств вашего документа. Не обращая внимания на содержание представления.
    Обратитесь к полю просто по имени, как в любой формуле для формы. Например, напишите
    Код (Text):
    ACTIVITYOS="Linux"&OSRELEASE="Debian"|ACTIVITYOS="MacOS"
     
  3. SkinGreek

    SkinGreek Гость

    ага так и пробовал, а он не хочет. она ему пуста:(
    Хотя в другом view action пишу
    Код (Text):
    Sub Click(Source As Button)
    Dim curdoc As NotesDocument
    Dim newdoc As NotesDocument
    Dim w As New NotesUIWorkspace

    Set curdoc = w.CurrentDocument.Document
    Set newdoc = w.CurrentDatabase.Database.CreateDocument

    newdoc.form="InfoMng"

    Call newdoc.ReplaceItemValue("txtParentInputDocId", curdoc.GetItemValue("txtInputDocId"))

    Call w.EditDocument(True, newdoc)
    End Sub
    И он видит curdoc и его поле txtInputDocId, хотя Action поставлен на view(она конечно внедрена в форму)
     
  4. Xellos

    Xellos Гость

    Ну там-то понятно, что он видит curdoc, потому что его на самом деле "видит" workspace. Скрипт не имеет таких ограничений как формулы, если получил workspace - делай с ним что хочешь. Всё, что видно - всё можно получить.
     
  5. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    - прерывать выполнение кода видимой всегда кнопки в зависимости от значения поля в текущем документе;

    - если кнопка лишь одна-две и скрываются они вместе, то можно одно и то же представление внедрить дважды, но в одном случае с видимыми кнопками, а в другом с невидимыми, и в зависимости от значения поля скрывать то одно, то другое;

    - сделать кнопки на форме, над внедренным представлением чтобы было похоже на действия в виде.
     
  6. Xellos

    Xellos Гость

    >сделать кнопки на форме, над внедренным представлением чтобы было похоже на действия в вид

    Возможно, самый простой способ. Но будет неудобно, если представление включается в несколько форм.
     
  7. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    подформы не пробовал еще?.. :(
     
  8. SkinGreek

    SkinGreek Гость

    Akupaka
    кнопки надо скрывать и показывать не одновременно, причем 2 показывать - 1 скрывать и наоборот. 2 кнопки надо показать в одной активности Lotus Workflow, а другую в другой. Форма сама не меняется. Активности определяю по ACTIVITYOS. Сейчас сделал 2 представления и меняю их в формуле внедренной формы.

    1 - В этой активности они вообще не должны видеть эту кнопочку
    2 - кнопки чередуются, поэтому похоже не подойдет если я правильно понял
    3 - сам не пробовал но слышал есть проблемы определения выделенного документа и решаются она как раз экшенами внутри view

    В принципе я уже смирился что будет у меня 2 одинаковых view, просто теплилась надежда что можно все ж сделать управление кнопками в зависимости от полей формы-вндренца


    Спасиб всем за советы.
     
  9. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    ну, а те доки, что в виде висят, они как-то соотносятся с активностями? если каждый из них как-то отвечает определенным активностям, то сделай тогда в тех доках флаги, чтобы на их основании скрывать кнопки...
     
  10. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    SkinGreek
    В зависимости от полей формы, в которую вложено view, кмк, нормально не сделать.
    Можно попытатся пописать/почитать environment или профайлы, но это не джедайское решение.

    А у тебя в нижних документах поля ACTIVITYOS нету?
    Потому как в зависимости от выдеоленного документа в embedded view, кнопки прятать можно очень хорошо.
     
  11. SkinGreek

    SkinGreek Гость

    ACTIVITYOS нет смысла добавить в те документы((, а Env юзать опасно.лучше копипаст сделаю))), то есть 2 вьюхи.

    если полностью описать задачу то выглядит она так.

    есть две активности в LWF вормы у них одна, та самая с внедренной вьюхой.
    В первой активности нужно создавать набор документов в этой внедренной вьюхе.
    Во второй активности нужно для каждого документа из этого набора нужно создать зависимый документ.

    То есть для первой активности во вьюхе стандартные экшены(добавить редактировать удалить)
    Во второй активности у вьюхи 1 экшен типа "создать/редактировать карточку"
    Выделяется документ и по нажатию на экшен открывается на создание/(редактирование уже существующего) зависимого документа(по сути между ними связь "один к одному")

    В общем то я уже понял что я слишком много захотел от лотуса. А то что от выделенного дока могут зависеть набор кнопки - это в принципе логично и если б лотус такого не давал было бы совсем плохо)

    Спасиб большое за помощь
     
  12. nor

    nor Гость

    SkinGreek

    try hidden formulas with @GetDocField(docunid, fieldname)

    docunid - UNID of a parent note
    fieldname - target field's name of a parent note

    in the view select option "Evaluate action for every document change"

    as example:

    actionExecutors := @GetDocField(parentUnid; "$EVAContactRemove");
    @If(
    @IsError(actionExecutors);
    @Return(@True);
    !(
    @UserRoles *= actionExecutors | @IsMember(@UserName; actionExecutors)
    )
    )
     
  13. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Всем привет!
    Вот столкнулся с проблемой....
    Есть форма... в ней Embedded View. У View есть Action... Action надо прятать при возведении определенного поля формы в "1".
    Ну так вот... обычное условие <поле> = "1" не работает. :)
     
  14. Klido

    Klido Гость

    не работает... по крайней мере мне неизвестно :) делается вторая вьюха БЕЗ кнопок, а внедряется вьюха - по формуле относительно требуемого поля...
     
  15. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Evaluate action on every document change стоит у view?
     
  16. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Это не помогает. Точнее не для этого случая.
    Klido
    Почти так и сделали. Только обошлись одним видом.
    Создали еще один Embedded-элемент для того же самого View. А формулу повесили на Action bar

    Вопрос снят!
    Всем спасибо
     
  17. Klido

    Klido Гость

    у него же экшен во внедренной вьюхе, а поле - в форме... хотя надо проверить - если везде насажать рефрешей, может как-то и проглючит :)
     
  18. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Не усёк.
    Я уже и забыл, что так когда-то делалось.
     
  19. Klido

    Klido Гость

    ага, ща ещё ToxaRat заглянет и скажет перегружать вьюху через xml при изменении поля :)
     
  20. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    о, а через переменные окружения никто не пробовал?.. интересно, схавает ли?..
     
Загрузка...
Похожие Темы - Скрытие Action EmbeddedView
  1. bsi
    Ответов:
    0
    Просмотров:
    935
  2. bsi
    Ответов:
    0
    Просмотров:
    849
  3. Dragon108
    Ответов:
    1
    Просмотров:
    1.205
  4. cLif
    Ответов:
    5
    Просмотров:
    2.152
  5. maks00793
    Ответов:
    6
    Просмотров:
    1.965

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