powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / (Lotus) Хранение файлов в Lotus
6 сообщений из 6, страница 1 из 1
(Lotus) Хранение файлов в Lotus
    #37508590
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите пожалуйста, каким образом в Lotus хранятся файлы и можно ли их достать без Lotus?


Заранее благодарен.
...
Рейтинг: 0 / 0
(Lotus) Хранение файлов в Lotus
    #37508641
Фотография Абсолют
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это ад.

Там своя база и хрен знает какая.

Не могу с 100% уверенностью сказать, но мне не кажется, что их можно достать без Lotus'а. Работал очень мало и слава Б-гу!
...
Рейтинг: 0 / 0
(Lotus) Хранение файлов в Lotus
    #37508812
vah,

Дык там же DB2, не?
...
Рейтинг: 0 / 0
(Lotus) Хранение файлов в Lotus
    #37508834
Фотография Абсолют
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bla_bla_bla_bla_bla_blavah,

Дык там же DB2, не?
И да и нет. Я уверен, что накрутить можно Lotus на Db2, но из коробки идет вроде своя другая бэдэ. Могу ошибаться, так как щупал очень мало и не сервеную часть.
...
Рейтинг: 0 / 0
(Lotus) Хранение файлов в Lotus
    #37514630
dimonz80
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Абсолют,

Файлы хранятся как вложения. Достать без клиента Notes можно:
1) HTTP (если поднят web сервер и разрешен доступ через web к базе а по дефолту так и есть). Нужно знать а) UNID документа б) имя вложения.
тогда URL такой http(s)://yourServer/path/to/database.nsf/0/<UNID>/$FILE/<nameOfAttachmentFile>
минусы - надо знать UNIDы документов и наименования файлов вложений. Есть правда еще варианты сделать собственные представлния с еменами вложений и отдачей этих вьюх в виде JSON или XML, но если с лотусом туго, то они не стоят упоминания.

2) Java + DIIOP (CORBA в Lotus так называется)
для этого нужно
а) поднять на сервере DIIOP (load diiop на консоли сервера, по умолчанию не поднят)
б) взять ncso.jar из клиента или сервера (%PathToNotes%/data/domino/java/ncso.jar например)
ц) запустить что-то типа этого (модифицированный пример из хелпы):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
 import  lotus.notes.*; //для этого нужен ncso.jar
 import  java.util.Vector;
 import  java.util.Enumeration;

 public   class  SuperFileExtractor {
   public   void   static   void  main(String argv[]) {
     try  {
      Session session = NotesFactory.createSession("serverName","userName","password");
    
      Database db = session.getDatabase("serverName","Path/to/yourDatabase.nsf");
      DocumentCollection dc = db.getAllDocuments();
      Document doc = dc.getFirstDocument();
     
       while  (doc !=  null ) {
	    // вариант 1 - выбрать все вложения из RTF поля BODY (может и по другому называться)
        RichTextItem body = (RichTextItem)doc.getFirstItem("Body");
        Vector v = body.getEmbeddedObjects();
        Enumeration e = v.elements();
         while  (e.hasMoreElements()) {
          EmbeddedObject eo = (EmbeddedObject)e.nextElement();
           if  (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT) {
            eo.extractFile("path/To/Extaction/Dir/" + eo.getSource());
		  }
        }
		//END OF вариант 1
	
		//вариант 2 - выбрать вложение по имени (Аttachment.doc например)		
		 EmbeddedObject eo = doc.getAttachment("Attachment.doc");
		  if (oe !=  null ){
			eo.extractFile("/path/To/Extraction/Dir/" + oe.getSource());
		 }
		 // END OF вариант 2
		 
        doc = dc.getNextDocument();
      }
    }  catch (NotesException e) {
      System.out.println(e.id + " " + e.text);
      e.printStackTrace();
    }
  }
}

можно еще смотреть поля $Filе (их может быть несколько по к-ву вложений). Но это в основном для писем с атачами, пришедших через SMTP. Хотя так можно узнать об именах всех вложений без инфы о полях RTF и именх вложений. Пример кода приводить лень.

PS
может я не понял ТС и под файлами имеются ввиду базы *.nsf?
...
Рейтинг: 0 / 0
(Lotus) Хранение файлов в Lotus
    #37525683
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahСкажите пожалуйста, каким образом в Lotus хранятся файлы и можно ли их достать без Lotus?
Заранее благодарен.
Есть несколько способов. Конкретизируйте вопрос. Ещё важно какими инструментами и навыками вы располагаете (Domino Designer, Lotus Script, Java, C/C++, VBA/OLE).
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / (Lotus) Хранение файлов в Lotus
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]