• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Функция вместо результата возвращает Nothing

  • Автор темы shaggyone
  • Дата начала
S

shaggyone

У меня в коде есть вызов функции, которая описана в библиотеке

<!--shcode--><pre><code class='basic'>Function AAAA(srcDoc As NotesDocument, DestDocCode As String) As NotesDocument
' Тут destDoc -- полноценный экземлпяр класса NotesDocument
Set AAAA = destDoc
End Function[/CODE]

Функция вызывается таким образом:
<!--shcode--><pre><code class='basic'> Dim rtfDoc As NotesDocument
Set rtfDoc = AAAA(doc, "0048")
url$ = rtfDoc.NotesURL
Call ws.URLOpen(url$)[/CODE]

rtfDoc -- какого то хрена оказывается пустым. Гляжу в отладчике, внутри функции значение ненулевое, а результат оказывается нулевым.

Уже 2 часа над этим бьюсь, может кто ещё с подобным сталкивался, как можно решить эту проблему?
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Может названия функций не совпадают? Function AAAA и Set AAAA
Option Declare стоит?
 
K

K-Fire

Такая проблема часто бывает если внутри функции destDoc как-то получается или создается от переменной NotesDatabase.

NotesDatabase надо вне функции определять и передавать внутрь.
 

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
BIT
0
а либа в этой же базе/?

если нет - то надо еще определить базу
 
H

hosm

и чем он не настоящий? :)))
и вообще - нечего придираться к словам: тут, скорее всего, просто док и либа в разных БД.
И не вздумай рассказывать мне, что ты с такой ошибкой никогда не сталкивался :huh:
Да и автор, думаю, давно уже разобрался с этой ошибкой...
 
S

shaggyone

Такая проблема часто бывает если внутри функции destDoc как-то получается или создается от переменной NotesDatabase.

NotesDatabase надо вне функции определять и передавать внутрь.
Хм... типа при уничтожении экземпляра NotesDatabase память подчищается, а заодно и все относящиеся к ней объекты? Интересный, однако, уборщик мусора :)

Спасибо, доберусь до работы, проверю.

p.s. чую на жабу агента перепишу.
 
S

shaggyone

Ура-а-а, заработало-о-о-о.

Грассиас синьоры :).
 
Мы в соцсетях:

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