Lotus Notes — рабочий инструмент программиста.

Обсуждения программирования на Lotus Notes/Domino

Export Selected documents as CSV

leave a comment »

Sub Initialize Dim I As Long Dim ExportedFields List As Long
Dim NombreExportedFields As Long Const NomCSVFile = "C:\TEMP\Export.CSV" Dim CSVFile As Long
CSVFile = Freefile() Open NomCSVFile For Output Access Write As CSVFile Dim session As New NotesSession
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments I=1
Set doc = collection.GetFirstDocument()
While Not(doc Is Nothing) And (I<50) Forall ANotesItem In Doc.Items
If Not Iselement( ExportedFields( ANotesItem.Name ) ) Then
NombreExportedFields = NombreExportedFields + 1
ExportedFields( ANotesItem.Name ) = NombreExportedFields
End If
End Forall I = I +1
Set doc = collection.GetNextDocument(doc)
Wend Redim LigneOut( 1 To NombreExportedFields) As String Forall UC In ExportedFields
LigneOut( UC ) = Listtag( UC )
End Forall Call FlushLineOut( CSVFile , LigneOut ) Set doc = collection.GetFirstDocument()
While Not(doc Is Nothing) Forall ANotesItem In Doc.Items
If Not Iselement( ExportedFields( ANotesItem.Name ) ) Then Error 9995
LigneOut( ExportedFields( ANotesItem.Name ) ) = ANotesItem.Values(0)
End Forall Call FlushLineOut( CSVFile , LigneOut ) Call session.UpdateProcessedDoc( doc )
Set doc = collection.GetNextDocument(doc)
Wend Close #CSVFile End Sub Sub FlushLineOut( FileNum As Long , LigneOut() As String ) Dim i As Long For I = 1 To Ubound( LigneOut ) If I>1 Then Print #FileNum, |;| ; Print #FileNum, |"| + LigneOut( I ) + |"| ; LigneOut( I ) = "" Next I Print #FileNum, "" End Sub

Original source : http://www.openntf.org/projects/codebin/codebin.ns…

Реклама

Written by lotusnotes

Январь 13, 2009 в 7:34

Опубликовано в Lotus Notes

Добавить комментарий

Please log in using one of these methods to post your comment:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: