Добавление аттачей без удаления и исправления

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

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

    Ruku Гость

    Добрый день

    мне нужно реализовать возможность добавления в документ аттачей, но так чтобы в каждый момент времени можно было добавить новый, но нельзя было удалить уже имеющийся.

    Как это правильнее реализовывать

    первое что пришло в голову создать раздел с ограничением доступа разместить в него rtf поле и добавлять туда аттачи, а потом закрыть на него доступ, но тогда если потом понадобится снова добавить туда аттач, придется открывать поле на редактирование а это позволит удалить старые файлы или изменить их что не хотелось бы допускать.

    я еще пробовал играться с вычисляемыми rtf-полями, но почему-то аттачи добавляются не в них а вместо этого в нижней части документа появляется раздел с добавленными аттачами. Вроде бы оттуда файлы не удалить, но может я просто не вижу как.

    кто-нибудь решал такую задачу?
     
  2. pbnoob

    pbnoob Well-Known Member

    Регистрация:
    25 авг 2006
    Сообщения:
    135
    Симпатии:
    0
    Есть следующая идея.
    Создаешь RTI поле типа Computed (чтобы грязными пальцами в секретную аппаратуру не тыкали :))

    Затем создаешь Action->Button "Добавить", и на нее цепляешь действие добавки некой формы(Response) с одним RTI полем уже редактируеммым, в котором и будет работать пользователь.

    @Command([Compose]; @DbName; "имя редактируемой формы")

    так же делаешь еще кнопочку (опять же рядом, типа "Обновить")

    Sub Click(Source As Button)
    Dim ws As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Dim doc As NotesDocument
    Set uidoc=ws.CurrentDocument
    Set doc=uidoc.Document
    EM=uidoc.EditMode
    If EM Then Call uidoc.Save
    Call uidoc.Close
    Call ws.EditDocument(EM, doc)
    End Sub

    для автоматического сохранения и повторного открытия, с тем самым чтобы изменения вступили в силу

    и в QueryOpen или PostOpen пишешь свою функцию, которая будет "склеивать" все респонз формы в одну в RTI (Computed) поле родительского документа.

    Это почти общая идея, если нужно более подродно пиши - отвечу.
    (Постараюсь еще скрины прицепить)
    Посмотреть вложение 001.bmp
    Посмотреть вложение 002.bmp
     
  3. Elena Nefedova

    Elena Nefedova Гость

    Ну я бы попробовала программно добавлять в поле, которого нет на форме.
    Проверить наличие поля и его тип - если все подходит, добавляем аттач.
     
  4. Ruku

    Ruku Гость

    <!--QuoteBegin-Elena Nefedova+8:09:2006, 16:45 -->
    <span class="vbquote">(Elena Nefedova @ 8:09:2006, 16:45 )</span><!--QuoteEBegin-->Ну я бы попробовала программно добавлять в поле, которого нет на форме.
    Проверить наличие поля и его тип - если все подходит, добавляем аттач.
    [snapback]43480" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Тогда не понятно как их просматривать.
    каюсь сразу этого не оговорил в задаче.
    мне нужно чтобы просмотреть аттачи было возможно, но невозможно их удалить или поменять, только добавить новый.
     
  5. pbnoob

    pbnoob Well-Known Member

    Регистрация:
    25 авг 2006
    Сообщения:
    135
    Симпатии:
    0
    <!--QuoteBegin-Ruku+8:09:2006, 14:53 -->
    <span class="vbquote">(Ruku @ 8:09:2006, 14:53 )</span><!--QuoteEBegin-->Тогда не понятно как их просматривать.
    каюсь сразу этого не оговорил в задаче.
    мне нужно чтобы просмотреть аттачи было возможно, но невозможно их удалить или поменять, только добавить новый.
    [snapback]43485" rel="nofollow" target="_blank[/snapback]​
    [/quote]

    Почитай пожалуйста внимательнее мой пост. Я так как раз описал всю технологию, так как сам только что ее реализовал. Если трудности с функцией, то и ее код могу выложить!!!
     
  6. Ruku

    Ruku Гость

    Думаю пойду по пути ответных документов, каждый из которых будет содержать аттачи, но уже не сможет быть отредактирован
    И внедренное представление в саму форму.
    Захотел открыть - щелкнул на ответном документе и пользуйся аттачем
     
  7. Ruku

    Ruku Гость

    Думаю пойду по пути ответных документов, каждый из которых будет содержать аттачи, но уже не сможет быть отредактирован
    И внедренное представление в саму форму.
    Захотел открыть - щелкнул на ответном документе и пользуйся аттачем
     
  8. Andre

    Andre Well-Known Member

    Регистрация:
    29 июл 2004
    Сообщения:
    108
    Симпатии:
    0
    А если попробовать вариант с хранением каждого attach в отдельном документе и привязывать их к основному документу. ОТображать их привязанными к документу в embedded view с галкой show single category.
    Доступ разруливается доступом на уровне author и reader fields к документу содержащему attach.
    Просмотр тоже реализуется - как вариант свойством формы Auto launch - first attachment
     
  9. Elena Nefedova

    Elena Nefedova Гость

    Для просмотра рисуем кнопку на скрипте, которая нам выведет список всех аттачей, а мы выберем, что открыть нужно

    И с ответными документами тоже вариант хороший.
    Если привязать к EmmbeddedView редактор, то быстренько все аттачи будут показываться в окне редактора (только хайдинг ответных форм надо корректно настроить)
     
  10. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.291
    Симпатии:
    0
    Ну,эт просто. Закрываешь док-т на редактирование (полем AUTHORS), а добавляющая аттачи кнопа запускает фоновый агент (автор которого ИМЕЕТ права на правку)
     
Загрузка...
Статус темы:
Закрыта.

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