View или не View

Тема в разделе "Lotus - Программирование", создана пользователем Guest_Den_*, 1 ноя 2005.

Статус темы:
Закрыта.
  1. Guest_Den_*

    Guest_Den_* Гость

    Нужна подсказка... :)

    В одном из документов базы есть поле "Дата создания документа" и "Курс валюты". Необходимо что бы поле "Курс валюты" автоматом заполнялось в зависимости от поля "Дата создания документа". Курсы валют должен вводить ручками один из пользователей БД, Я создал формочку "Курс валют" и вьюху "Курс валют". Соответственно имею данные за каждый месяц. Вопрос : как програмно выбрать во вьюхе документы только за нужный мне месяц и взять из этого вью документ с большей датой за необходимый месяц? Никак не могу разобраться..... А может эта задача решается по другому? Может не надо вью использовать?????

    Спасибо огромное! :(

    Р.S. Если непонятно объяснил - постараюсь исправить.
     
  2. Domino6

    Domino6 Гость

    Вид название "currency"
    1-я колонка категоризация по месяцу (текст)
    2-я колонка сортировка по дате (убывание)
    3-я колонка курс

    Формула определения курса
    REM "номер месяца текстовый";
    m:="11";
    rez:=@DbLookUP("":"NoCache";"":"";"currency";m;3);
    FIELD kurs:=@If(@Iserror(rez);@Failure("Курс не определен");rez);
    ""
     
  3. Guest_Den_*

    Guest_Den_* Гость

    <!--QuoteBegin-Domino6+1:11:2005, 18:34 -->
    <span class="vbquote">(Domino6 @ 1:11:2005, 18:34 )</span><!--QuoteEBegin-->Вид название "currency"
    1-я колонка категоризация по месяцу (текст)
    2-я колонка сортировка по дате (убывание)
    3-я колонка курс

    Формула определения курса
    REM "номер месяца текстовый";
    m:="11";
    rez:=@DbLookUP("":"NoCache";"":"";"currency";m;3);
    FIELD kurs:=@If(@Iserror(rez);@Failure("Курс не определен");rez);
    ""
    [snapback]26565" rel="nofollow" target="_blank[/snapback]​
    [/quote]


    Спасибо за внимание, но чего-то не выходит.
    Попробовал проверить что выдает @DbLookUP : Ошибка сервера: Не найдена запись в индексе.
    База проиндексирована. В чём лажа???
     
  4. Domino6

    Domino6 Гость

    В виде в 1-ой колонке должен быть текстовый номер месяца
    Формула для колонки

    @Text(@Month(DateField))

    Дяа для взятия последнего (первого из списка поскольку сортировка по убыванию)

    FIELD kurs:=@If(@Iserror(rez);@Failure("Курс не определен");@Subset(rez;1));
     
  5. Guest

    Guest Гость

    Спасибо получилось. Причём только тогда когда я сделал ВСЕ столбцы во вьюхе текстовыми.

    Вопрос: я могу "построить" из вьюхи средствами LotusScript что-то вроде массива курсов за определенный месяц и потом уже искать необходимую мне дату?

    Просто задача усложнилась: необходимо брать курс по следующему алгоритму: если за искомое число курс не обнаружен то надо брать ближайшее меньшее число.
    Т.е. если бы это был C++ я бы в цикле построил алгоритм выборки, а как здесь (в lotus) решаются такие таски?
     
  6. Domino6

    Domino6 Гость

    на скриптах получаеш коллекцию

    Set col=view.GetAllDocumentsByKey

    и ходиш по ней как тебе надо
     
  7. Guest

    Guest Гость

    ОК. А col это какой тип данных?
    Нет ли у Вас примерчика использования?
     
  8. Domino6

    Domino6 Гость

    Смотри пример в хелпе по функии GetAllDocumentsByKey в классе NotesView
     
  9. Guest

    Guest Гость

    Понял. Будем разбираться. :blink: Спасибо за ответы!
     
Загрузка...
Статус темы:
Закрыта.

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