Утилита наката дизайна

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

  1. fedotxxl

    fedotxxl Well-Known Member

    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Возникла идея утилиты... возможно, уже такая есть - посоветуйте

    Идея:
    Есть база из которой в некий набор баз наследуются элементы дизайна. Если мы в эту базу вставим новый элемент, то нам придется распространять его ручками. Это неудобно и непрактично. Утилита будет сама актуализировать набор элементов дизайна

    Есть такая? А то писать ее очень лень =)
     
  2. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Если исходная база является шаблоном, то наследование идёт автоматом по ночам или вручную при refresh/replace. Зачем изобретать велосипед?
     
  3. fedotxxl

    fedotxxl Well-Known Member

    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    А если из нужно наследовать часть элементов из одной базы, часть из другой, часть из третьей?

    Еще такой вопрос - есть ли набор классов, который позволяет оперировать с элементами дизайна? А то возиться в dxl совершенно нет желания
     
  4. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Что бы наследование шло,надо сначала поместить этот элемент в destination базу, fedotxxl хочет это дело автоматизировать.
    Я думаю спец утилитки такой нет, да и если есть, то тебя не удовлетворит скорее всего.

    Я вижу дело так:
    Есть база апдейтер, в ней есть документы-правила в которых указывается source база + элементы, которые надо пропогейтить.
    Ну и списочек destination баз.

    По кнопке строиться NotesNoteCollection из src базы, проверяется нет ли таких элеменов в dst базе и копируется всё это дело туда (с сохранением наследования или нет - в зависимости от желания).


    Добавлено:
    NotesNoteCollection - с головой хватит
     
  5. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Первый раз ручками, далее пойдёт автоматом по ночам. Refresh/replace в данном случае не помощник. В принципе сам сталкивался с подобным - добавляешь функцию в ЛС-библиотеку и вынужден дублировать её и в шаблоне и в отлаживаемом приложении, чтоб не ждать ночи. Подумывал об автоматизации, но руки не дошли.
     
  6. ToxaRat

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

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    fedotxxl
    поделюсь тем, что я натворил
    так как мну разработчик СЭДа то всем клиентам мне положено выдавать обновление
    обновление выполнено в виде одной базы с одной кнопкой
    внутри этой базы надоб документов вниутри которых аттач в виде шаблона необходимой базы
    я запрещаю выкладывать шаблоны на сервер, поэтому
    админ зайдя в базу клацает на кнопку "обновить"
    она запрашивает лишь сервер и путь к каталогу
    выкладывает все шаблоны из атачей доков
    подписывает эти шаблоны
    делает бекапы рабочик баз админу
    обновляет рабочие базы по этим локальным шаблонам
    шлет мне репорт
    и все довольны

    при необходимости если тебе нужно точечные ракетные удары по базам то юзай DXML это может красимо заменять нужные тебе элементы дизайна, но только не скомпилированные LS код, который при каждом открытии будет рекомпилироваться, что для LS не очень удобно, на крайнять рекомпил всей БД
     
  7. Akupaka

    Akupaka А че я?.. О.о

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

    а если дизайн скрыт? кака получится.

    если надо делать такую операцию, то необходимо менять все дерево элементов, которые используют код.
     
  8. fedotxxl

    fedotxxl Well-Known Member

    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Omh
    Да, идея-то у меня уже созрела... а вот реализация страдает =)

    Получу набор документов... дальше-то что? мне-бы классы обертки =)... лана, будем реализовывать так
     
  9. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    работаешь с документами дизайна как с обычными
     
  10. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Что-что?
    Копировать :)

    Проблема в том, что ты не хочешь руцями копировать, правильно?
     
  11. fedotxxl

    fedotxxl Well-Known Member

    Регистрация:
    9 ноя 2005
    Сообщения:
    614
    Симпатии:
    0
    Давайте подробнее по идее и реализации:
    есть база A, B, C. Это три похожие базы, но несколько разные (например, "Входящие", "Исходящие", "Внутренние"). В этих базах модули (элементы дизайна) поиска, маршрутизации, контроля доступа (это я наобум) одинаковые, а формы, некоторые библиотеки...
    Допустим, в модуль поиска я добавил новую библиотеку. Теперь мне нужно перенести ручками эту библиотеку в A, B, C. Это плохо, т.к. здесь легко ошибиться. Нужно автоматизировать

    Как мы будем автоматизировать:
    1. Каждый модуль отдельная база - в одной базы элементы дизайна поиска, в другой - маршрутизации, в третьей - контроля доступа
    2. База "Обновитель дизайна" содержит код, который обновляет дизайн + настоечные документы.
    Настроечный документ - база источник, базы получатели, элементы, которые переносить, что делать потом (рефрешить дизайн, рекомпилировать)

    Вот так должно быть...
    Нужно будет писать класс обертку на элемент дизайна... здесь можно хорошо ошибиться
     
  12. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    А если не в А,В,С, а только в А,С и ещё в Е? Если есть формализованное правило, по которому ты сможешь ответить на этот вопрос, тогда сможешь и запрограммировать. Иначе придётся в каждом конкретном случае решать пользователю
     
  13. ToxaRat

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

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.047
    Симпатии:
    18
    всё онли сам, стараюсь защищаться и перестраховываться от недалеких как только можно

    fedotxxl
    ну так, а в чем трабла то? :ph34r:
     
  14. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    кому надо - оффтоп насчет "недалеких" и т.п. тут: http://codeby.net/forum/threads/33252.html. Флуд могу наказать предупреждением и даже молчанкой.
     
Загрузка...

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