Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/90: Рейтинг темы: голосов - 90, средняя оценка - 4.67
DmT

как определить выделенные документы?

01.04.2007, 20:04. Показов 16643. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начало агента такое:

Dim vw As notesView
Dim vw_ecol As NotesViewNavigator
Dim vw_ent As NotesViewEntry
....
Set vw = ws.CurrentView.View back-end объект текущего представления
Set vw_ecol = vw.CreateViewNav
....


Set vw_ent = vw_ecol.GetFirst Формирование отчета
While Not vw_ent Is Nothyng

....выгрузка в Эксель

Set vw_ent = vw_ecol.GetNext(vw_ent)
Wend


Т.е. формирую NotesViewNavigator и потом выгружаю каждый NotesViewEntry в Эксель.
Вопрос: как мне выгрузить только выделенные документы из вьюхи?
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.04.2007, 20:04
Ответы с готовыми решениями:

как достать выделенные документы
subject

Вставка ссылок на выделенные ячейки в выделенные ячейки другой книги
Очень прошу помочь в решении такой задачи: Так как , единственное что усвоила из информатики школьной программы это то что правильная и...

Как передать выделенные элементы?
На форме есть ListView ,как второй форме лучше передать выделенные элементы? Щас передаю массивом : procedure TForm1.AccountUses; var...

7
1 / 1 / 0
Регистрация: 01.10.2006
Сообщений: 615
01.04.2007, 21:23
используй свойство базы UnprocessedDocuments
Set notesDocumentCollection = notesDatabase.UnprocessedDocuments
0
DmT
01.04.2007, 22:14
Цитата Сообщение от Kee_Keekkenen
используй свойство базы UnprocessedDocuments
Set notesDocumentCollection = notesDatabase.UnprocessedDocuments
не, не то.
что в моём случае даст коллекция? если я экспорт делаю с помощью NotesViewNavigator?

я уже нашел ответ, спасибо за реакцию.
0 / 0 / 0
Регистрация: 01.04.2007
Сообщений: 43
04.04.2007, 14:52
Я эту проблему так решил:
1. Создаю коллекцию UnprocessedDocumenst.
2. Когда копирую,документы(а копирую я их построчно из View, наверно, как и ты), то проверяю, есть ли текущий документ в коллекцииUnprocessedDiocuments. Если есть, то копирую, если нет, то беру следующий.

А как ты решил эту проблему? Вот мой код:
**************************************** ********
jj%=-1
nid = vw_ent.UniversalID
Set docc = collect.GetFirstDocument()
flag=0
While Not(docc Is Nothyng)
nid1= docc.UniversalID
If nid=nid1 Then
flag=1
End If
Set docc = collect.GetNextDocument(docc)
Wend далее, если
If flag=1 Then то копирую в EXCEL
**************************************** ********
0
DmT
04.04.2007, 15:43
Для: Mikhail

я сделал примерно так-же. Но есть проблема: у меня вьюха категоризированная, а пользуясь этим способом можно проверить на "выбранность" только документы. Другими словами выгружаются пустые категории, чего быть не должно... Пока не знаю как побороть. :D
0 / 0 / 0
Регистрация: 01.04.2007
Сообщений: 43
04.04.2007, 17:06
Первое, что приходит в голову по поводу твоей проблемы - написать макрос на VBA для Excel. запускать этот макрос из лотуса примерно так: xls.Application.Run("My"). Где "My" - название макроса.

Если до этого не сталкивался с VBA - там не сложно. Я за сутки освоил.
Так вот, потом проверять, в уже готовом Excel-файле, и, если это категория, то удалять строку.

А вообще лучше не загоняться с макросом - из Лотуса тоже можно определить, категория это или нет:
If vw.Columns(j%).IsCategory - то тогда не копировать, пропускать. :ph34r:

У меня другая проблема :( , задумался вот:
Моим методом выгрузка работает существенно медленее, чем когда просто экспорт всех документов.
Моим методом база в 1200 документов выгружается за 2-2,5 часа.
А так где-то полчаса.

А что значит - "примерно так же"? посто если ты придумал как-то подругому, как это быстрее сделать - напиши, плиз.
0
DmT
04.04.2007, 18:15
Для: Mikhail

1. Про макрос: а как я узнаю что текущая категория это не та, которая пустая и её нужно грохнуть, а та которая мне нужна и её необходимо оставить в Экселе. Вот главное...

2. f vw.Columns(j%).IsCategory не катит по той-же причине. Как знать выбрана она лил нет?

3. Это не мой метод, в смысле, я им пользуюсь но не автор (с форума Интертраста):

Sub Initialize
Dim s As New NotesSession
Dim w As New NotesUIWorkspace
Dim CurDB As NotesDatabase
Dim dc As NotesDocumentCollection
Dim view As NotesView
Dim nav As NotesViewNavigator
Dim doc As NotesDocument, doc0 As NotesDocument
Dim entry As NotesViewEntry, entry0 As NotesViewEntry
Dim UNIDs() As Variant
Dim UNIDsCount As Long
Dim Counter As Long
Dim Flag1 As Variant

Set CurDB=s.CurrentDatabase
Set view=w.CurrentView.View
view.AutoUpdate=False line updated 08.08.2003: чуть не забыл! - для ускорения и во избежание ошибок
Set dc=CurDB.UnprocessedDocuments
Set nav=view.CreateViewNav

Print "."
Print "Starting..."

создание списка UNID отмеченных документов
UNIDsCount&=dc.Count
Redym UNIDs(1 To UNIDsCount&) As Variant
If UNIDsCount& > 0 Then
Counter&=0
Set doc=dc.GetFirstDocument
Do While Not doc Is Nothyng
Counter&=Counter& + 1
UNIDs(Counter&)=doc.UniversalID
Set doc0=doc
Set doc=dc.GetNextDocument(doc0)
Delete doc0 освобждение предыдущего полученного объекта
Loop
End If

перебор всех элементов ViewEntry в текущем представлении
Set entry=nav.GetFirst
Do While Not entry Is Nothyng
If entry.IsDocument Then
проверка, имеется ли UNID текущего Entry в списке UNID отобранных документов
Flag1=Arraygetindex(UNIDs, entry.Document.UniversalID)
If Not Isnull(Flag1) Then
сюда вставить обработчик
Print entry.ColumnValues(0) пример обработчика
End If
End If
Set entry0=entry
Set entry=nav.GetNext(entry0)
Delete entry0 освобждение предыдущего полученного объекта
Loop
End Sub
VVyS
05.04.2007, 11:37
Для: DNT
Может попробовать выбранные документы поместить в folder со структурой такой же как у view, и навигатор строить уже по ней
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.04.2007, 11:37
Помогаю со студенческими работами здесь

Как закрасить выделенные элементы матрицы?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace...

Как суммировать выделенные элементы из TextBox ?
Очень нужна ваша помощь! Задача: Через редактор VB на Excel необходимо создать форму с Названиями фирм ,Товаров и их цен. При этом...

Как сохранить выделенные элементы из ListBox?
Доброго времени суток! Не могу понять как сохранить выделенные элементы с ListBox, именно выделенные. Могу сохранить либо один элемент,...

Как удалить выделенные элементы ListView?
SelectedItems.Clear();Просто снимает выделение.

как использовать выделенные IP адреса на сервере?
всем привет. есть выделенный сервер. у него три IP адреса. используется только один. каким образом я могу использовать другие, для, к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru