Скопировать NotesRichTextItem с галочкой Store contents as HTML and Mime

Gandliar

Lotus Team
16.02.2004
564
26
BIT
110
Здравствуйте!

В первом документе поле было сохранено в UI с галочкой Store contents as HTML and Mime

Как скопировать это поле в другой документ на скрипте, чтобы в другом документе осталась такая же галочка?

Заранее благодарю.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
Здравствуйте!

В первом документе поле было сохранено в UI с галочкой Store contents as HTML and Mime

Как скопировать это поле в другой документ на скрипте, чтобы в другом документе осталась такая же галочка?

Заранее благодарю.
что не получается?
 

Gandliar

Lotus Team
16.02.2004
564
26
BIT
110
При обычном копировании

Dim item As NotesRichTextItem
Set item = doc.Getfirstitem(fieldName)
If docNew.hasItem(fieldName) Then Call docNew.removeItem(fieldName)
Call item.Copyitemtodocument(docNew, fieldName)

Документ превращается в "как без галочки" и частично слетает форматирование.

В самом документе в основном инлайн-картинки. В исходном доке в просмотре полей они видны как $file а после копирования файлы в полях не видны.

Если потом поправить форматирование и пересохранить через ui то получается как надо.

Но надо на скрипте добиться такого же.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
При обычном копировании

Dim item As NotesRichTextItem
Set item = doc.Getfirstitem(fieldName)
If docNew.hasItem(fieldName) Then Call docNew.removeItem(fieldName)
Call item.Copyitemtodocument(docNew, fieldName)

Документ превращается в "как без галочки" и частично слетает форматирование.

В самом документе в основном инлайн-картинки. В исходном доке в просмотре полей они видны как $file а после копирования файлы в полях не видны.

Если потом поправить форматирование и пересохранить через ui то получается как надо.

Но надо на скрипте добиться такого же.
почему не копировать все айтемы? ;) а затем поменять нужные "на взад" и там еще с опицей сессии не забыть (про конвертацию РТ)
 
  • Нравится
Реакции: Gandliar

Gandliar

Lotus Team
16.02.2004
564
26
BIT
110
все как раз копировать не надо
надо скопировать часть и поменять названия.
вопрос остается как скопировать rtItem чтобы осталось предыдущее сохранение
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
все как раз копировать не надо
надо скопировать часть и поменять названия.
вопрос остается как скопировать rtItem чтобы осталось предыдущее сохранение
эт почему не надо? ;)
как правило больше-всего инфы в РТ, и зачем боятся скопировать в инмемори док и "возвратить" нужные поля?
Оверхед на возню с маймами будет больше, тамже выползет и "блокировка" существующего поля (РТ) и прочая фигня...
 

Gandliar

Lotus Team
16.02.2004
564
26
BIT
110
То есть скопировать все в инмемори док все, затем удалить "ненужные поля" в инмемори доке, а затем скопировать еще раз из инмемори дока.
Наверное так все получится.
можно ли как то поменять имя рт поля в новом доке?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
можно ли как то поменять имя рт поля в новом доке?
формально оно не РТ, а майм и изменение имени врядли пройдет безболезненно
а зачем это надо?
тупо пересоздать поле майм можно если известен текст, кот. туда вставлять, но тогда все что изложено выше теряет смысл ;)
 

oshmianski

Достойный программист
Lotus Team
25.04.2012
711
59
BIT
8
а если попробовать RenderToRTItem?
 

Gandliar

Lotus Team
16.02.2004
564
26
BIT
110
Всем спасибо!

написал функцию, в которой создается темповый док, отключается convertMime, copyallitems, вычищаются ненужные поля (оставляю правильный item и $file) и еще раз copyallitems в нужный док, включаю convertMime
 
  • Нравится
Реакции: Мыш
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!