Проблема с Rt Item

  • Автор темы Alex_Sun
  • Дата начала
A

Alex_Sun

#1
В одном документе в RT поле хранится заголовок таблицы, который копирую в новый документ (пробовал и AppendRTItem, и CopyItemToDocument), а затех добавляю необходимое кол-во строк и по средствам NotesRichTextNavigator заполняю необходимыми данными, но проблема в том что rtnav.FindFirstElement(RTELEM_TYPE_TABLE) после того, как я скопировал Item возвращает False т.е. не видет таблицу. Хотя если открыть документ ( call workspace.EditDocument( False, memo ) ) то видно что таблица вставилась. Заметил, что если документ открыть сохранить и закрыть, то таблица находится, но мне это необходимо в агенте по расписанию, поэтому ни о каком открытии речи быть не может.

Потратил кучу времяни, но проблему не решил. Буду безгранично благодарен за помощь.
 

Omh

Lotus team
04.07.2007
2 210
1
#2
Признавайся, в том документе, из которго копируется RTItem, он находиться в таблице (на форме)?
 
D

dobozy

#3
В одном документе в RT поле хранится заголовок таблицы, который копирую в новый документ (пробовал и AppendRTItem, и CopyItemToDocument), а затех добавляю необходимое кол-во строк и по средствам NotesRichTextNavigator заполняю необходимыми данными, но проблема в том что rtnav.FindFirstElement(RTELEM_TYPE_TABLE) после того, как я скопировал Item возвращает False т.е. не видет таблицу. Хотя если открыть документ ( call workspace.EditDocument( False, memo ) ) то видно что таблица вставилась. Заметил, что если документ открыть сохранить и закрыть, то таблица находится, но мне это необходимо в агенте по расписанию, поэтому ни о каком открытии речи быть не может.

Потратил кучу времяни, но проблему не решил. Буду безгранично благодарен за помощь.
Может быть проблема в том, что RT появляется в доке реально, только после сейва

When you change the value of a NotesRichTextItem object, the change is not written to disk until you call the Save method for the parent NotesDocument.

Может прийдется делать лишний сейв, чтобы доступиться к тому, что нужно...

Это так, навскидку.
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#4
NotesRichTextItem.Update делал?

После добавления таблицы конечно.
 
A

Alex_Sun

#5
Omh, как обещал, безгранично благодарен тебе!!! :) :) :)
Да, дело было в том, что я копировал RTItem, который находился в таблице. Когда перенёс поле за пределы таблицы всё стало на свои места.
Вывод: Таблица в таблице не является полноценной таблицей.

2 Medevic

Попробовал NotesRichTextItem.Update, не помогло (
Помог только перенос кипируемого поля за пределы таблицы, в моём случае это приемлимо.

Проблему можно считать решённой.

2 dobozy
Save помогает только для NotesUIDocument, о котором не может быть речи в серверном агенте.

Всем спасиба!
 
A

Alex_Sun

#7
Не пойму, как повашать кому-либо репутацию?
Толи лыжы не едут, толи я на асфальте стою...
 

Omh

Lotus team
04.07.2007
2 210
1
#8
Вот, с nested tables в лотусе беда.
Я не помню сколько бился, пока до меня допёрло в чём проблема :)

Репутацию повышать не можешь, т.к. ещё "Новенький".
Вроде так.