1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Присвоить названия поля в название вложения при сохранении на диск

Тема в разделе "Lotus - Программирование", создана пользователем Ренат, 28 май 2015.

  1. Ренат

    Ренат New Member

    Репутация:
    0
    Регистрация:
    26 май 2015
    Сообщения:
    1
    Симпатии:
    0
    Привет всем! нашел скрипт который сохраняет все вложения на диск, теперь пытаюсь присвоить названия поля в название вложения, не получается. вот код:

    Код:
    Sub Click(Source As Button)
    	Dim session As New NotesSession
    	Dim doc As NotesDocument
    	Dim db As NotesDatabase
    	Dim rtitem As Variant
    	Dim filename As String
    	Dim collection As NotesDocumentCollection
    	Dim form As NotesForm
    	Dim queryString As String
     
    	Set db = session.CurrentDatabase
    	queryString = {Form = "RabDoc"}
    	Set collection = db.Search(queryString, Nothing, 0)
    	Set doc = collection.GetFirstDocument
     
    	While Not doc Is Nothing
    		Call session.UpdateProcessedDoc( doc )
    		Set rtitem = doc.GetFirstItem( "Appends" )
    		If (IsArray(rtitem.EmbeddedObjects)) Then
    			ForAll obj In rtitem.EmbeddedObjectS
    				If (obj.Type = EMBED_ATTACHMENT) Then
    					filename = obj.Source
    					Call obj.ExtractFile ( "C:\App\" & filename)
    					Call doc.save(False, False)
    				End If
    			End ForAll
    		End If
    		Set doc = collection.GetNextDocument(doc)
    	Wend
    End Sub
     
    #1 Ренат, 28 май 2015
    Последнее редактирование модератором: 28 май 2015
  2. savl

    savl Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    28 окт 2011
    Сообщения:
    2.116
    Симпатии:
    157
    filename = obj.name
     
  3. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    filename = rtitem.Name & "_"& obj.name
    Call obj.ExtractFile ( "C:\App\" & doc.UniversalID & "\" & filename)
     
  4. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.375
    Симпатии:
    336
    /* пространно рассуждая...
    а вот почему есть такая практика - хардкодить пути, и не бывает проверки на существование каталога
     
  5. savl

    savl Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    28 окт 2011
    Сообщения:
    2.116
    Симпатии:
    157
    @lmike, потому что подразумевается, что все уже будет.
    А чаще всего: за создание папок отвечают другие люди...
     
  6. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.375
    Симпатии:
    336
    тем более - нечего делать этому в коде
    --- Добавлено 28 май 2015. Первое сообщение размещено 28 май 2015 ---
    я не к конкретному случаю, просто не раз натыкаюсь на подобное
    --- Добавлено 28 май 2015 ---
    нужно временно - ф-ции временных папок и файлов
    нужно постоянно - д.б. настройка (хоть из нотес.ини) но должна быть
     
  7. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.375
    Симпатии:
    336
    и вапще - для того что озвучено - просто выгрузка через SAX без перебора коллекции
     
  8. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Интересно! Покажите, как это делается.
     
  9. savl

    savl Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    28 окт 2011
    Сообщения:
    2.116
    Симпатии:
    157
    @lmike, все приходит с опытом.
     
  10. alexas1

    alexas1 Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 апр 2014
    Сообщения:
    649
    Симпатии:
    227
    @lmike здесь свою базу постил (и там не только сакс).
    Ищите - хороший сабжект.
     
  11. Shandrik

    Shandrik Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    30 дек 2010
    Сообщения:
    268
    Симпатии:
    26
    Да сакс-то у меня есть. Мне бы базу. :)
     

    Вложения:

    • Присвоить названия поля в название вложения при сохранении на диск
      213214535.jpg
      Размер файла:
      294,7 КБ
      Просмотров:
      8
  12. alexas1

    alexas1 Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 апр 2014
    Сообщения:
    649
    Симпатии:
    227
Загрузка...

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