Как сделать поле заполняемое только скриптом открытия, но при этом без

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

  1. Sandro

    Sandro Гость

    Столкнулся с такой проблемой, есть поле, оно заполняется при открытии документа, код на LS ищет в зависимости от сервера и некоторых других параметров документ с настройками и заполняет поле, поле редактируемое, всё отлично работает, но вот пользователи ещё умудряются поправлять это поле, чего делать совсем не нужно.
    Его надо как то закрыть от ручек? Делаю вычисляемым, ставлю туда пустое значение, но тогда и скрипт туда ничего не может записать, что делать ??? Подскажите, люди добрые :)
     
  2. Akupaka

    Akupaka А че я?.. О.о

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

    Еще, дополнительно, посмотри в сторону NotesItem.IsProtected
     
  3. Klido

    Klido Гость

    @ThisValue
     
  4. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    ну наф, лучше имя поля )) олдскул, блин

    кстати, где-то она не работала, в валидации?
     
  5. Sandro

    Sandro Гость

    :) Спасиб , сделал имя поля , всё робит как надо
     
  6. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Имя поля олдскул или @ThisValue?
     
  7. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    Имя поля
     
  8. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Так имя поле, не смотря на то что олдскул, лучше? :)
     
  9. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    Это субъективное мнение, не заморачивайся ))
    Мне больше нравится. Кроме того, если клитенты R5 встречаются, то @ThisValue/@ThisName нельзя использовать.
    Кроме того, @ThisName не работает в Hide-when, и чтобы не путаться там сям, люблю в одном стиле писать - имя поля явно.
    Иногда @This... удобнее использовать, так что, это не призыв к действию.
     
  10. Sandro

    Sandro Гость

    Ребят, наткнулся с вычисляемым полем на такой трабл, когда я делаю Вычисляемое поле и указываю в значении само поле, если док уже существовал, всё нормально. Но если я создаю новый из вьюшки , используя @Command([Compose];"mblank") и у меня курсор во вьюшке стоит на каком то документе, то все вычисляемые поля нового дока заполняются данными из этого документа ))) Объясните плиз, новичку, почему так происходит ???
     
  11. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    В свойствах формы установлен флаг наследования значений полей (вторая закладка)
     
  12. Sandro

    Sandro Гость

    :rolleyes: Усё понял
     
  13. divankin

    divankin Senjor developer

    Регистрация:
    13 авг 2009
    Сообщения:
    182
    Симпатии:
    0
    Полями, вычисляемыми при создании, никто не пользуется, что ли?
    Наилучший выход в данной ситуации, ИМХО: ставишь полю тип "вычисляемое при создании" и в формулу кидаешь "". В результате его пользователь изменить не может, при рефреше документа перевычисления не происходит, а скрипт может его менять сколько хочет.
     
  14. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    да ну ребята где ваша фантазия, тут же идей дофига
    самый весёлый по мне это событие онекзитинг - при заходе в поле уводить курсор на другое поле боя с спецэффектами ;)


    а скрип LS может всё, наверно вы чего-то не учитываете
     
Загрузка...

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