26 октября 2010 г.

Продолжение работы с массивами

Пробежка по коллекции документов с возможностью использования Type total для формирования массива содержащего в себе значения lable, value, value_percent. Удобно для использования в сортировке коллекции документов по выбранному ключу (полю)

[Declarations]
Type total
lable As String
value As Double
value_percent As Double
End Type
[Sub/Function]
dim suf
suf = "_1"
Dim doc As NotesDocument
Dim progolos As NotesItem
Dim proc As NotesItem
Dim a As Integer
Dim progolos As String, proc As String, progolos_val As Variant, proc_val As Variant
progolos = "progolos_" & suf
proc= "proc_" & suf
Set doc = coll.GetFirstDocument
Do While Not(doc Is Nothing)
Set progolos = doc.GetFirstItem(progolos_izbiratel)
Set proc = doc.GetFirstItem(proc_izbiratel)
If ( progolos Is Nothing ) Then
progolos_val = ""
Else
progolos_val = progolos.values(0)
End If
If ( proc Is Nothing ) Then
proc_val = ""
Else
proc_val = proc.values(0)
End If

ReDim Preserve array(a%) As total_progolos
array(a%).lable = doc.n_kom(0)
array(a%).value = progolos_val
array(a%).value_percent = proc_val

Set doc = coll.GetNextDocument(doc)
a% = a% + 1
Loop

Комментариев нет:

Отправить комментарий