Нужна помощь

Тема в разделе "Lotus - Программирование", создана пользователем sanch, 16 авг 2006.

  1. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    Set dcol = db.Search({@IsUnavailable(AgentCheck) },Nothing,0), что необходимо дописать в запрос что б выбрать документы из ($Inbox)? грубо говоря необходим аналог GetView("($Inbox)").
    ЗЫ dcol объект NotesDocumentCollection
     
  2. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    наверно подойдет HasItem

    но для этого надо пройтись по всем докам view "($Inbox)"
     
  3. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    А можно немного по конкретней про HasItem? что это за ф-ция с какого языка , форма записи?
     
  4. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Given the name of an item, indicates whether that item exists on the document.
    Defined in
    NotesDocument
    Syntax
    flag = notesDocument.HasItem( itemName$ )
    Parameters
    itemName$
    String. The name of an item.
    Return value
    True indicates that an item with itemName$ exists in the document.
    False indicates that there is no item with itemName$ in the document.

    This script displays a message about a document.
    Код (Text):
    Dim doc As NotesDocument
    '...set value of doc...
    If doc.HasItem( "Subject" ) Then
    Messagebox _
    ( "There is a Subject item on this document." )
    Else
    Messagebox _
    ( "There is no Subject item on this document." )
    End If
     
  5. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    Спасибо.Но я так понял HasItem лог. ф-ция и мне не подойдет
     
  6. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    ну канечно , в отборе не сработает, вариант пройтись по всем докам папки и проверить hasitem
     
  7. oshmianski

    oshmianski Гость

    что в конечном итоге нужно получить7 коллекцию документов из представления7
    тогда не понимаю зачем колбасить всю бд7 у представления есть метод FTSearch.
     
  8. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    <!--QuoteBegin-oshmianski+17:08:2006, 12:30 -->
    <span class="vbquote">(oshmianski @ 17:08:2006, 12:30 )</span><!--QuoteEBegin-->что в конечном итоге нужно получить7 коллекцию документов из представления7
    тогда не понимаю зачем колбасить всю бд7 у представления есть метод FTSearch.
    [snapback]42369" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Я понимаю.Но проблема не в этом, я не могу понять как в Search вписать, что нужно взять документы только из ($Inbox) :)
     
  9. oshmianski

    oshmianski Гость

    копируешь формулу выбора в ($Inbox) и добавляешь свое условие
     
  10. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    <!--QuoteBegin-oshmianski+17:08:2006, 14:20 -->
    <span class="vbquote">(oshmianski @ 17:08:2006, 14:20 )</span><!--QuoteEBegin-->копируешь формулу выбора в ($Inbox) и добавляешь свое условие
    [snapback]42377" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    я искал искал так и не нашел. :) можешь подсказать формулу?
     
  11. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    <!--QuoteBegin-sanch+17:08:2006, 14:45 -->
    <span class="vbquote">(sanch @ 17:08:2006, 14:45 )</span><!--QuoteEBegin-->я искал искал так и не нашел. можешь подсказать формулу?
    [snapback]42380" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    да ты же сам написал формулу !!!

    <!--QuoteBegin-sanch+16:08:2006, 13:30 -->
    <span class="vbquote">(sanch @ 16:08:2006, 13:30 )</span><!--QuoteEBegin-->@IsUnavailable(AgentCheck)
    [snapback]42311" rel="nofollow" target="_blank[/snapback]​
    [/quote]
     
  12. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    <!--QuoteBegin-Morpheus+17:08:2006, 15:04 -->
    <span class="vbquote">(Morpheus @ 17:08:2006, 15:04 )</span><!--QuoteEBegin-->да ты же сам написал формулу !!!
    [snapback]42382" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Да нет :).Эта формула проверяет наличие поля в документе, а мне нужна формула котрая выберает все письма из ($Inbox)
     
  13. oshmianski

    oshmianski Гость

    если речь идет о почтовой бд, то $Inbox - это папка.
    попробуй вот так:
    Код (Text):
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim colEntry As NotesViewEntryCollection
    Dim search As String
    Dim folder As notesview

    search = {[Твое_поле] contains твое_значение} 'это если строка
    Set db = Session.CurrentDatabase
    Set folder = db.GetView("($Inbox)")
    folder.FTSearch search, 0
    Set colEntry = folder.AllEntries
    Notes 6.5
     
  14. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Обратись к папке в скрипте, пройдись по всем докам с проверкой HasItem и те что подойдут запихивай в колекцию и дальше с ней(колекцией) мона работать!
     
  15. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    <!--QuoteBegin-oshmianski+17:08:2006, 16:17 -->
    <span class="vbquote">(oshmianski @ 17:08:2006, 16:17 )</span><!--QuoteEBegin-->Dim db As NotesDatabase
    Dim colEntry As NotesViewEntryCollection
    Dim search As String
    Dim folder As notesview

    search = {[Твое_поле] contains твое_значение} 'это если строка
    Set db = Session.CurrentDatabase
    Set folder = db.GetView("($Inbox)")
    folder.FTSearch search, 0
    Set colEntry = folder.AllEntries
    [snapback]42385" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Вроде делаю все правильно но в colEntry ниче не передается
     
  16. oshmianski

    oshmianski Гость

    что пишешь в строку запроса7
     
  17. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    <!--QuoteBegin-oshmianski+17:08:2006, 16:38 -->
    <span class="vbquote">(oshmianski @ 17:08:2006, 16:38 )</span><!--QuoteEBegin-->что пишешь в строку запроса7
    [snapback]42389" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    я вообще ниче не писал. сразу без ftsearch написал colEntry= folder.AllEntries.
    а когда писал в ftsearch {@IsAvailable(Agentchek)},0 то вылетала ошибка.Я так понял Search и ftsearch разные вещи. Если можешь помоги написать запрос в ftsearch.
    запрос аналог "@IsUnavailable(AgentCheck)"
     
  18. oshmianski

    oshmianski Гость

    здесь моно пойти от обратного.
    если у тебя поле AgentCheck может принимать значения "0" и "1", то попробуй вот так
    search = {Not (([AgentCheck] contains 0) or ([AgentCheck] contains 1))}
     
  19. sanch

    sanch Well-Known Member

    Регистрация:
    17 июл 2006
    Сообщения:
    216
    Симпатии:
    0
    <!--QuoteBegin-oshmianski+17:08:2006, 17:09 -->
    <span class="vbquote">(oshmianski @ 17:08:2006, 17:09 )</span><!--QuoteEBegin-->здесь моно пойти от обратного.
    если у тебя поле AgentCheck может принимать значения "0" и "1", то попробуй вот так
    search = {Not (([AgentCheck] contains 0) or ([AgentCheck] contains 1))}
    [snapback]42394" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    а можно как нить сделать тоже самое только потом folder.AllEntries передать в переменную типа NotesDocumentCollection?
     
  20. oshmianski

    oshmianski Гость

    для чего7
     
Загрузка...

Поделиться этой страницей