2010-11-03 3 views
2

Мне нужно получить 3 определенных поля из формы Lotus и в статическую таблицу Access, из которой я могу сделать больше запросов (2 из этих полей делают первичный ключ, поэтому я могу присоединиться к третьей с другими вещами). В нижеприведенном псевдокоде я создал функцию, чтобы сделать это, но я не могу понять детали (я не думаю, что когда-нибудь пойму, как Lotus работает без формального обучения). Пожалуйста, помогите мне закончить эту процедуру?Как искать документы Lotus с помощью VBA

Function GetFromLotusDocs() As String 
    Dim NtS As New NotesSession 
    Dim NtDb As New NotesDatabase 
    Dim NtF As New NotesForm 
    NtS.Initialize 
    Set NtDb = NtS.GetDatabase("MyServer", "MyDB.nsf") 
    Set NtF = NtDb.GetForm("MyForm") 

    For each document in NtDB 
     DoCmd.RunSQL _ 
     "INSERT INTO TmpTbl (Fld1,Fld2,Fld3) SELECT " & _ 
     Fld1 & "," & Fld2 & "," & Fld3 & ";"  
    Next document 
End Function 

ответ

1

Если вам просто нужно получить данные из Notes и в Access, я предлагаю установить и настроить драйвер Lotus Notes SQL. Я использовал его много раз, чтобы вытащить данные в Access, как правило, чтобы я мог его очистить, прежде чем переместить его в базу данных SQL или SQL express.

Вот ссылка: http://www.ibm.com/developerworks/lotus/products/notesdomino/notessql/

+0

Вот как я обычно извлекать данные из Lotus. Но я не знаю, для какой «таблицы» нужно связать (поле, которое меня интересует, не в любом представлении, а только сам документ). Как называется базовая таблица в Lotus? "Все документы"? – PowerUser

+0

Решенные. Я обошел весь код, просто создав временное личное представление и экспортируя его в текстовый файл. Тем не менее, вы получаете зеленый чек, так как это ваше предложение должно быть первым, что люди пытаются. – PowerUser

+0

Должна быть возможность извлекать данные формы, но в худшем случае вы можете создать представление, которое содержит нужные вам данные, а затем подключить его к Access. Рад, что вы нашли обходной путь! –