• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Как такое может быть?!

  • Автор темы Автор темы fedotxxl
  • Дата начала Дата начала
F

fedotxxl

Прошу прощения за название темы, но подругому никак... Вот такой простой код
Код:
Dim ns As New NotesSession
Dim db As NotesDatabase

Dim ndTemp As NotesDocument
Dim nv As NotesView

Set db = ns.CurrentDatabase 
Set ndTemp = db.CreateDocument

Call ndTemp.Save(True, True)

Set nv = db.GetView("(UNID)")
Call nv.Refresh
nv.AutoUpdate = False

Set ndTemp = nv.GetDocumentByKey(ndTemp.UniversalD, True)
Вид отбирает все документы, первый столбец сортирован, код столбца @Text(@DocumentUniqueID). Метод nv.GetDocumentByKey(ndTemp.UniversalD, True) возвращает nothing... ПОЧЕМУ?!
 
D!m@n
Галка не стоит
Во-вторых в хелпе написано - If the force parameter is True, the createResponse parameter has no effect.
 
Такая же проблема, дебагеом смотрю

Dim col As NotesDocumentCollection
Set view = db.GetView( "view" )
Set col = view.GetAllDocumentsByKey(name_field_curdoc, True)
name_field_curdoc - string величина, и она определена
во view первый столбец показывает значения, с данным ключем во view есть 3 док-та

Но коллекция пустая

????
 
D!m@n
Галка не стоит
Во-вторых в хелпе написано - If the force parameter is True, the createResponse parameter has no effect.
Хм, да... Встречный вопрос - зачем тогда второй аргумент в True выставили? :ph34r:
Кстати, а Вы вручную не проверяли - создаваемые документы во вьюхе есть?
 
Прошу прощения за название темы, но подругому никак... Вот такой простой код
Код:
Dim ns As New NotesSession
Dim db As NotesDatabase

Dim ndTemp As NotesDocument
Dim nv As NotesView

Set db = ns.CurrentDatabase 
Set ndTemp = db.CreateDocument

Call ndTemp.Save(True, True)

Set nv = db.GetView("(UNID)")
Call nv.Refresh
nv.AutoUpdate = False

Set ndTemp = nv.GetDocumentByKey(ndTemp.UniversalD, True)
Вид отбирает все документы, первый столбец сортирован, код столбца @Text(@DocumentUniqueID). Метод nv.GetDocumentByKey(ndTemp.UniversalD, True) возвращает nothing... ПОЧЕМУ?!

Попробуйте немного модифицировать код, а именно после Call ndTemp.Save(True, True):
Dim unid as String
unid = ndTemp.UniversalID
Set ndTemp = Nothing

и в конце уже Set ndTemp = nv.GetDocumentByKey(unid)

Кстати, еще вариант попробуйте nv.GetDocumentByKey(ndTemp.UniversalD, True) заменить на nv.GetDocumentByKey(ndTemp.UniversalD)
 
D!m@n
Что-то туда вставить нужно было

K-Fire
Если nv.GetDocumentByKey(ndTemp.UniversalD), то находился вообще какой-то бредовый документ

Вобщем взял из другой базы данных такое же по смыслу представление и проблема решилась...
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab