Присвоить документу нужный Unid

  • Автор темы Автор темы AlexeyStaf
  • Дата начала Дата начала
A

AlexeyStaf

Здравствуйте!
Возможно ли с использованием Lotus C/C++ API создать документ с определенным UNIDом? Сейчас используется вызов агента, который создает документ с прописывает туда нужный идентификатор, а хочется без него :ya_lamo:
 
В С API можно установить OID, в который UNID входит как составная часть.
Вот выдержка из хелпа

Use _NOTE_OID to reference the Originator ID. Generate a new OID and set the OID in the header before updating the note to ensure the new note has a unique Originator ID. A Domino database must not contain more than one note with the same UNID portion of the OID. NSFNoteUpdate sets the SequenceTime member of the OID and increments the Sequence number.

Sample Usage :


C++:
	NOTEHANDLE	 hOldNote;
NOTEHANDLE	 hNewNote;
STATUS		 error;
OID			 oidNew;

if (error = NSFNoteOpen (
*(DBHANDLE*)db_handle,
NoteID,
0,			/* open flags */
&hOldNote))		/* note handle (return) */
{
printf("Error: unable to open note %lx.\n", NoteID);
return (ERR(error));
}

if (error = NSFNoteCopy(hOldNote, &hNewNote))
{
printf("Error: unable to copy note.\n");
NSFNoteClose(hOldNote);
return(ERR(error));
}

if (error = NSFDbGenerateOID(*(DBHANDLE*)db_handle, &oidNew))
{
printf("Error: unable to generate new OID.\n");
NSFNoteClose(hNewNote);
NSFNoteClose(hOldNote);
return(ERR(error));
}

NSFNoteSetInfo(hNewNote, _NOTE_ID, NULL);
NSFNoteSetInfo(hNewNote, _NOTE_OID, &oidNew);
NSFNoteSetInfo(hNewNote, _NOTE_DB, &db_handle2);

if (error = NSFNoteUpdate (hNewNote, UPDATE_FORCE))
{
printf("Error: unable to update note to DB.\n");
NSFNoteClose(hNewNote);
return(ERR(error));
}

if (error = NSFNoteClose(hNewNote))
{
printf("Error: unable to close new note.\n");
return(ERR(error));
}
 
В С API можно установить OID, в который UNID входит как составная часть.
Вот выдержка из хелпа

Use _NOTE_OID to reference the Originator ID. Generate a new OID and set the OID in the header before updating the note to ensure the new note has a unique Originator ID. A Domino database must not contain more than one note with the same UNID portion of the OID. NSFNoteUpdate sets the SequenceTime member of the OID and increments the Sequence number.
Спасибо, оно самое. Странно только что в C++ API в LNDocument или LNDatabase такого функционала нет уже
 
Ничего странного. С API первично, а вот С++ API такая же надстройка над С API, как LotusScrupt или Java API. И часть возможностей в ней тупо не реализована.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы