Динамические таблицы - как?

Тема в разделе "Lotus - Программирование", создана пользователем rocsolanka, 9 сен 2005.

Статус темы:
Закрыта.
  1. rocsolanka

    rocsolanka Гость

    А можно ли как-то сделать, чтоб по нажатию кнопки пользователем , к таблице добавлялись новые строки (содержащие поля). Есть что-нибудь почитать на эту тему?
     
  2. Chernom0r

    Chernom0r Гость

    вечная тема :D
    Можно. Но поля автоматически добавляться не будут.
    Ищите на форуме компании Интертраст

    http://www.intertrust.ru/site3/forum.nsf/
     
  3. Domino6

    Domino6 Гость

    Через Notes API
     
  4. Chernom0r

    Chernom0r Гость

    <!--QuoteBegin-Domino6+9:09:2005, 22:08 -->
    <span class="vbquote">(Domino6 @ 9:09:2005, 22:08 )</span><!--QuoteEBegin-->Через Notes API
    [snapback]24673" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    М-м-м... Коллега, можно и без Notes API.
    Таблица вида
    [textList] | [textList] | [textList] | [textList]
    довольно просто решается при помощи LS + @Formulas.
    Только в этом случае не нужно забывать про ограничение на количество информации в текстовом поле.

    [​IMG]
     

    Вложения:

    • sample.gif
      sample.gif
      Размер файла:
      10,2 КБ
      Просмотров:
      140
  5. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Для: Chernom0r
    А редактировать как ? Например, 14 запись. Или удалить.
    Уж лучше встроеное представление.
     
  6. Domino6

    Domino6 Гость

    <!--QuoteBegin-Medevic+12:09:2005, 10:35 -->
    <span class="vbquote">(Medevic @ 12:09:2005, 10:35 )</span><!--QuoteEBegin-->А редактировать как ?
    [snapback]24704" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Да-да и + если запись длиннеее чем ширина колонки то влезут перносы

    Я про API говорил - на нем можно таблицу постоить и управлять ее
     
  7. Chernom0r

    Chernom0r Гость

    <!--QuoteBegin-Medevic+12:09:2005, 11:35 -->
    <span class="vbquote">(Medevic @ 12:09:2005, 11:35 )</span><!--QuoteEBegin-->А редактировать как ? Например, 14 запись. Или удалить.
    [snapback]24704" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Например, так.
    Против Notes API я не возражаю.
    Но для реализации простенькой таблицы со строго структурированными данными этот вариант наиболее быстрореализуемый и приемлемый.
    Это чисто моя реализация. Похожих можно найти много на просторах инета.
    Есть хорошая реализация на openntf (не помню точного названия)


    ==========================================

    [​IMG]

    ==========================================

    [​IMG]

    ==========================================

    [​IMG]

    ==========================================
     
  8. Domino6

    Domino6 Гость

    Согласен пусть роксоланка выбирает что "по душе"
     
  9. rocsolanka

    rocsolanka Гость

    <!--QuoteBegin-Chernom0r+12:09:2005, 08:17 -->
    <span class="vbquote">(Chernom0r @ 12:09:2005, 08:17 )</span><!--QuoteEBegin-->М-м-м... Коллега, можно и без Notes API.
    Таблица вида
    [textList] | [textList] | [textList] | [textList]
    довольно просто решается при помощи LS + @Formulas.
    Только в этом случае не нужно забывать про ограничение на количество информации в текстовом поле.

    [​IMG]
    [snapback]24703" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Спасибо, этот способ я знаю, но, к сожалению, этот он мне не подходит, так как в строках таблицы должны быть ричтекстовые поля, да и общее количество информации не имеет верхнего предела- может быть одна строка, а может быть 100 :-(
     
  10. Chernom0r

    Chernom0r Гость

    <!--QuoteBegin-rocsolanka+14:09:2005, 11:04 -->
    <span class="vbquote">(rocsolanka @ 14:09:2005, 11:04 )</span><!--QuoteEBegin-->так как в строках таблицы должны быть ричтекстовые поля
    [snapback]24796" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    <!--QuoteBegin-rocsolanka+14:09:2005, 11:04 -->
    <span class="vbquote">(rocsolanka @ 14:09:2005, 11:04 )</span><!--QuoteEBegin-->может быть одна строка, а может быть 100 :-(
    [snapback]24796" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    А сколько при этом будет весить документ вы задумывались?
     
  11. zigfrid

    zigfrid Гость

    Для: Chernom0r

    У меня просьба, нельзя ли немного подробнее описать Ваш вариант создания динамической таблицы.
    Или хотя бы объяснить, что можно по этой теме прочитать.
     
  12. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    <!--QuoteBegin-zigfrid+21:09:2005, 16:52 -->
    <span class="vbquote">(zigfrid @ 21:09:2005, 16:52 )</span><!--QuoteEBegin-->У меня просьба, нельзя ли немного подробнее описать Ваш вариант создания динамической таблицы.
    Или хотя бы объяснить, что можно по этой теме прочитать.
    [snapback]25046" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Расскажу, как я делал. Есть поля для ввода информации. И есть поля (с галкой allow multiple values) для отображения ее - это и есть наша "таблица".
    Мы забиваем поля для ввода и жмем кнопку для добавления. Значение этих полей добавляется (операция конкатенация. на собаке это ":". на скриптах ArrayAppend) к полям для отображения.
    Работаем с таблицей через метод notesUIWorkspace.Prompt. В нем в качестве значений выбираем значение одного из полей для отображения (в примере, это поле с ФИО).
    Когда мы выбираем значение, то с помощью ArrayGetIndex получаем номера выбранных значений. По этим номерам определяем значение других полей для отображения (в примере, это "доля", "с", "по", "примечание").
    Но этот метод имеет много недостатков. Например, если у нас есть одинкаовые значения в поле "ФИО), значения которого используются для выбора через notesUIWorkspace.Prompt, то нельзя определить какое точно мы выбрали значение. Первое или второе. Вероятность такого случая можно снизить, если ввести скрытое поле, где хранить комплексную информацию. Например, ФИО + доля + примечание (или еще каких-нибудь уникальных значений). И в notesUIWorkspace.Prompt использовать это поле в качестве значений.
    Также в один прекрасный момент, можно обнаружить, что мы исчерпали лимит объема поля в 32 килобайта.

    Но, на мой взгляд, лучше использовать встроенное представление.
    Во-первых, метод ввода данных можно сделать таким же..
    Во-вторых, пропадает проблема дублирования значений.
    В-третьих, редактирование значений делается по-крайней мере не сложней. Удаление даже проще.
    В-четвертых, практически неограниченное количество строк.
    В-пятых, будет нормальный поиск.
     
  13. Chernom0r

    Chernom0r Гость

    <!--QuoteBegin-Medevic+22:09:2005, 14:35 -->
    <span class="vbquote">(Medevic @ 22:09:2005, 14:35 )</span><!--QuoteEBegin-->notesUIWorkspace.Prompt
    [snapback]25085" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    DialogBox в моём случае, ибо красивше :p

    <!--QuoteBegin-Medevic+22:09:2005, 14:35 -->
    <span class="vbquote">(Medevic @ 22:09:2005, 14:35 )</span><!--QuoteEBegin-->Вероятность такого случая можно снизить, если ввести скрытое поле, где хранить комплексную информацию
    [snapback]25085" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    именно так всё и есть.

    <!--QuoteBegin-Medevic+22:09:2005, 14:35 -->
    <span class="vbquote">(Medevic @ 22:09:2005, 14:35 )</span><!--QuoteEBegin-->Также в один прекрасный момент, можно обнаружить, что мы исчерпали лимит объема поля в 32 килобайта.
    [snapback]25085" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Вот это -- действительно проблема. Так что использование этого метода годится только для небольших таблиц.

    <!--QuoteBegin-Medevic+22:09:2005, 14:35 -->
    <span class="vbquote">(Medevic @ 22:09:2005, 14:35 )</span><!--QuoteEBegin-->Но, на мой взгляд, лучше использовать встроенное представление.
    Во-первых, метод ввода данных можно сделать таким же..
    Во-вторых, пропадает проблема дублирования значений.
    В-третьих, редактирование значений делается по-крайней мере не сложней. Удаление даже проще.
    В-четвертых, практически неограниченное количество строк.
    В-пятых, будет нормальный поиск.
    [snapback]25085" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    С этим согласен. Тем более,что в R6 - R7 можно использовать редактируемые столбцы в представлениях -- вообще красотищщща :)
     
  14. zigfrid

    zigfrid Гость

    Сдела с использованием встроенных представлений.
    Вобщем нормально получилось.
    Спасибо за помощь B)
     
  15. Гость

    Подскажите, пожалуйста:

    есть две формы - основная (с данными по весу) и форма ввода "расход".
    Надо, чтоб в основной форме отображалась история расхода: куда этот вес ущел.
    Поля для истории в основной форме Computed и multiple values, значения выбераются из скрытого вьювера.

    Проблема следующая: чтобы посмотреть историю, нужно заходить в каждую форму в режим редактирования и по Hotspot'у делать @Command([ViewRefreshFields]).

    Вопрос: можно ли не меняя принципа организации истории избавиться от hotspot, чтобы при просмотре формы история отображалась сразу?
     
  16. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Для: Начинающий
    Когда (или в каком событии) происходит отбор значений в историю ?

    И лучше бы ты создал новую тему. А то твой вопрос не вписывается в эту. :D
     
  17. Domino6

    Domino6 Гость

    <!--QuoteBegin-Начинающий+28:09:2005, 12:45 -->
    <span class="vbquote">(Начинающий @ 28:09:2005, 12:45 )</span><!--QuoteEBegin-->Computed
    [snapback]25253" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Computed for display
     
  18. Гость

    Для: Domino6

    При использовании Computed for display, вся история в документе будет каждый раз пересчитываться при его открытии?

    В дальнейшем предполагается делать архивирование старых документов (пока не знаю как), история для каждого из документов потеряется?
    Как корректно отобразить историю?

    Для: Medevic

    Вся история берется из скрытого вьювера, где отобираются значения при каждом расходе.
    В оновной форме отбирается через @DbLookup.
     
  19. Guest_

    Guest_ Гость

    А кто-нибудь знает как избежать искажения при печати Embedded View ?
     
  20. Medevic

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

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Для: Guest_Игорь_*
    Никак.
    Для печати документов с embedded view я использую HTML. Гораздо лучше и красивее получается.
     
Загрузка...
Похожие Темы - Динамические таблицы как
  1. AvasKvas
    Ответов:
    25
    Просмотров:
    6.159
  2. Rinulik
    Ответов:
    2
    Просмотров:
    1.389
  3. Julia61
    Ответов:
    1
    Просмотров:
    1.228
  4. vladis222
    Ответов:
    2
    Просмотров:
    2.252
  5. Omh
    Ответов:
    9
    Просмотров:
    5.169
Статус темы:
Закрыта.

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