я что-то забыл?! Shared Actions

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

  1. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.082
    Симпатии:
    300
    я не уверен, по поводу влияния внешних факторов (звёзды, погода в африке...)
    или в памяти стали стираться подробности данной фичи...
    у мя были экшены, во вьюшке (а может в форме) и была подцеплена либа, в кот. описаны "глобальные" объекты (воркплэйс, БД...)
    тута я задумал пошарить эти экшены..., и сделал - скопировал (Копи-Паст) прям из экшн панели, в шаредакшены
    всё работало (и даже перекомпиляция), до очередной перекомпиляции
    и тута оно заругалось - ошибка во вью, к кот. подрубил эти экшены

    Причину-то я нашёл ;) (глобальные объекты-то не перенёс), но дальше интересней - экшены (кот. пошарены), при вхождении в них и сохранении, при взведённом Declare - не ругаются на ошибки компиляции (да и без него, всякая хрень - "компилится", вернее - сохраняется)

    лотусня розлива 7.0.4, выполняю под вайном (но как показывала 4-летняя практика - не должно влиять)
     
  2. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Так оно и есть
    Потом в рантайме ошибки сыпет...
     
  3. ToxaRat

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

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

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.082
    Симпатии:
    300
    ToxaRat моя ситуация неск. отличается ;), хотя не меняет сути (шареды не компилятся)
    у мя всё работало - до одной из перекомпиляций (были и другие перекомпиляции!)
    т.е. интересно то, что перекомпиляция ругнулась, а до того - не ругалась!
     
  5. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    А не задвоился ли документ дизайна, который шаред акшены держит? Через нотеснотеколлекшин можно глянуть, иначе не знаю как - в дизайнере он не отображается
     
  6. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    Akupaka
    можно сделать копию дизайна БД и попробовать удалить элемент шаредакшен, тогда можно увидеть дубликат.
     
  7. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    OKEN
    Ага, оригинальные акшены сразу же проступят снизу.
    Вообще, когда задваиваются акшены там другие симптомы: в отладчике показывает новый код (в котором всё нормально), а в рантайме отрабатывает старый код (даёт ошибку, когда делаешь изменения в используемых библиотеках). Собственно, в чём и сложность "диагностики", особенно, когда вначале и не предполагаешь, что такое вообще может случиться...
     
  8. Darker

    Darker Гость

    Хороший SharedAction - метрвый SharedAction. Из-за этого код храню в библах, а SharedAction-ы лишь "толкают" его.
     
  9. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    Ну или в агентах, если код специфический (без перспективы повторного использования).
    И это правильно! Потому что при добавлении хотя бы одного SharedAction'а на форму/вид, при открытии их, в память вытягиваются все SharedAction'ы, т.к. это одна нота дизайна.
     
  10. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.082
    Симпатии:
    300
    в большинстве случаев так и есть (тока вызов агентов или библиотек) и чаще на собаках
    НО ежели вызывать LS какие-то действия, полюбасу, нужно написать на LS ;), хоть пару строк...
    да и пошареных акшенов, у мя, не более 5-ти бывает (я их тоже не лю)
     
  11. Darker

    Darker Гость

    раз все так сурово, тогды через Execute
     
  12. ToxaRat

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

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    а перекомпиляция не на другом компе была? :welcome:
     
  13. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.082
    Симпатии:
    300
    ToxaRat
    Неа - в том-то и прикол, и к томуже - в др. вьюшках тоже были эти акшены, но ругалось, тока для одного!
    а потом (когда стал эксперименты с изменениями, в экшенах, делать), для других ругаться стало
     
  14. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    Содержат. Объектник не генерится если хотябы в одном экшене есть синтаксическая ошибка (не обязательно в сохраняемом из UI экшене). А вот если ошибок нет $SCRIPTOBJ_ появляются в ноте шаред-экшенов
     
  15. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    Тьфу-ты!.. да (а чего-то думалось, что они не компилятся) /то агенты такого айтема не содержат/
    Тогда не понимаю, почему компилятор не ругается (это была общая версия).

    P.S. Прошу прощения за прогон...
     
Загрузка...

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