Россыпь мелких вопросов

  • Автор темы Vagor.ini
  • Дата начала

garrick

Lotus Team
26.10.2009
1 367
152
BIT
348
NotesDatabase.Search() всегда медленее чем getAllDocumentsByKey() из представления.
 

erdi

Green Team
20.08.2008
264
17
BIT
0
numDocs& = notesView.FTSearch( query$, maxDocs% ) еще быстрее будет
 

savl

Lotus Team
28.10.2011
2 624
314
BIT
515
@alexas1, я бы не был столь уверен.
по умолчанию ограничение на результат FT 5000 документов, но его можно обойти через ini, о чем я и пишу.
Про скорость, так же спорно, делал отчет по вьюхе, через FT, работал он быстрее search.
Через ByKey всё не обработаешь. Если запрос сложный, то это не прокатит.
 

garrick

Lotus Team
26.10.2009
1 367
152
BIT
348
Это, кажется, настройкой в ini снять можно.
Можно, конечно, но если сразу при развёртывании инфраструктуры об этом не позаботились, то потом править NOTES.INI на всех серверах и всех клиентах весьма сомнительное удовольствие.
 
P

proteam

У меня есть такой вот кусок кода, который загружает картинку из темповой папки в документ.
Код:
Set body = uidoc.Document.GetFirstItem("Photo")
If body Is Nothing Then
Set body = uidoc.Document.CreateRichTextItem("Photo")
Else
Call body.Remove()
Set body = uidoc.Document.CreateRichTextItem("Photo")
End If
 
Set stream = ss.CreateStream
Call stream.Open(Environ("Temp") + "\\_temp_photo.jpg")
Dim dummyRichText As NotesItem
Set dummyRichText = uidoc.Document.GetFirstItem("DummyRichText")
If Not dummyRichText Is Nothing Then
Call dummyRichText.Remove()
End If
Set MIMEbody = uidoc.Document.CreateMIMEEntity("DummyRichText")
Set MIMEheader = MIMEbody.CreateHeader("Content-Type")
Call MIMEheader.SetHeaderVal("multipart/mixed")
Set MIMEchild = MIMEbody.CreateChildEntity() 'Set childEntity = richTextItemObj.CreateChildEntity()
fileFormat = "image/jpeg" 'Other formats are "image/gif" "image/bmp"
Call MIMEchild.Setcontentfrombytes(stream, fileFormat, 1730)
Call stream.Close()
Call uidoc.Document.save(True, True) 'JUST TO REFRESH
 
Set temp = uidoc.Document.GetFirstItem("DummyRichText")
Call body.AppendRTItem(temp)
Call temp.Remove()
Call body.Update
Все бы ничего, работает. Но мне теперь нужно выгрузить эту картинку. И тут я немного в растерянности.
Изначально поле Photo это NotesRichTextItem, но картинка как то странно там лежит, в дебаггере ее не видно, в свойствах тоже. У NotesRichTextItem есть метод Getmimeentity но возвращается пустой объект.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
Через DXL я получил в формате Base64. Теперь как сохранить его в формат jpeg? На LS есть стандартный метод?
принципиально мои сообщения не читаете?
[DOUBLEPOST=1436360629,1436360588][/DOUBLEPOST]в БД уже все сделано, только путь подставить
 
P

proteam

принципиально мои сообщения не читаете?
[DOUBLEPOST=1436360629,1436360588][/DOUBLEPOST]в БД уже все сделано, только путь подставить
Почему не читаю))) Читаю, я видел эту базу, там как я понял все вложения документа выгружается. А мне нужно чтобы выгружалось из конкретного поля. Через DXL я получил Base64, вот думал его можно на ls преобразовать в картинку. Получается на lotusScripte нет способа сделать этого (исключая варианты с com-объектами). Буду теперь ваш метод разбирать. Кстати, может подскажите, как сделать проверку на название поля?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
Получается на lotusScripte нет способа сделать этого (исключая варианты с com-объектами).
есть но медленные и нек. с ограничением по объему
вот ссылки от @rinsk
и старт топика от Дмитрия
по LAX - написать доп. класс (и подклоючить), кот. при открытии тега (событие start...) выставит флаг в родительском классе, при выходе (end...) снимет его
прям брать шаблон класса выгрузки и по аналогии..., анализировать надо будет атрибут с именем поля
ну и в коде выгрузки (кот. уже работает) - просто анализировать этот ключ
 
  • Нравится
Реакции: proteam

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 983
611
BIT
453
- это как атрибуты анализировать
 
  • Нравится
Реакции: proteam
P

proteam

по LAX - написать доп. класс (и подклоючить), кот. при открытии тега (событие start...) выставит флаг в родительском классе, при выходе (end...) снимет его
прям брать шаблон класса выгрузки и по аналогии..., анализировать надо будет атрибут с именем поля
ну и в коде выгрузки (кот. уже работает) - просто анализировать этот ключ
Спасибо за ссылки, но что то не могу понять какой флаг нужно выставить? Первый раз столкнулся с этим LAX(
 
Мы в соцсетях:

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