getEntryByNoteID (NotesCalendar - JavaScript)

Gets a calendar entry given its note identifier.

Defined in

NotesCalendar

Syntax

getEntryByNoteID(noteid:string) : NotesCalendarEntry
Parameter Description
noteid The note identifier of the Domino® document containing the entry.
Return value Description
NotesCalendarEntry The calendar entry. An exception occurs if the identifier is invalid.

Examples

This button event gets a calendar entry using the Note ID for a document from the ($Calendar) view in the mail database of the current user.
// requestScope.calentry is bound to an edit box whose data is decimal, integer only
var n = Math.floor(requestScope.calentry);
var dbdir:NotesDbDirectory = session.getDbDirectory("");
var maildb:NotesDatabase = dbdir.openMailDatabase();
var calview:NotesView = maildb.getView("($Calendar)");
var caldoc:NotesDocument = calview.getNthDocument(n);
if (caldoc == null) {
	requestScope.status = "Calendar entry out of range";
	return;
}
var noteid:string = caldoc.getNoteID();
var cal:NotesCalendar = session.getCalendar(maildb);
requestScope.status = "Calendar entry for Note ID " + noteid + "\n";
requestScope.status = requestScope.status + cal.getEntryByNoteID(noteid).read();

} catch(e) {
	requestScope.status = e;
}

LotusScript® syntax and examples

NotesCalendar.GetEntryByNoteID(Byval noteid As String) As NotesCalendarEntry
This agent gets a calendar entry using the Note ID for a document from the ($Calendar) view in the mail database of the current user.
Sub Initialize
	Dim session As New NotesSession
	Dim maildb As New NotesDatabase("", "")
	Dim calview As NotesView
	Dim caldoc As NotesDocument
	Dim noteid As String
	Dim cal As NotesCalendar
	Dim db As NotesDatabase
	Dim doc As NotesDocument
	Dim body As NotesRichTextItem
	Dim s As String
	Dim n As long
	REM Get calendar for current user
	Call maildb.Openmail()
	Set cal = session.getCalendar(maildb)
	Set db = session.CurrentDatabase
	REM Get number of calendar entry
	s = InputBox("Enter an integer", "calentry", 1)
	If IsNumeric(s) Then
		n = Clng(s)
	Else
		MessageBox "Not numeric: " & s,, "Error"
	End If
	REM Create document to post results
	Set doc = db.CreateDocument
	doc.Form = "main"
	doc.Subject = "Calendar entry"
	Set body = doc.Createrichtextitem("body")
	REM Get entry and put in body of document
	Set calview = maildb.Getview("($Calendar)")
	Set caldoc = calview.Getnthdocument(n)
	If caldoc Is Nothing Then
		body.Appendtext("Calendar entry out of range")
	Else
		noteid = caldoc.Noteid
		body.Appendtext("Calendar entry for Note ID " & noteid)
		body.Addnewline(1)
		body.Appendtext(cal.Getentrybynoteid(noteid).Read())
	End If
	Call doc.Save( True, True )
End Sub

Java syntax and examples

NotesCalendarEntry NotesCalendar.getEntryByNoteID(String noteid)
This agent gets a calendar entry using the Note ID for a document from the ($Calendar) view in the mail database of the current user.
import lotus.domino.*;

public class JavaAgent extends AgentBase {

    public void NotesMain() {

      try {
          Session session = getSession();
          AgentContext agentContext = session.getAgentContext();

          // (Your code goes here)
          // calentry environment variable must previously be set
          Integer n = (Integer)session.getEnvironmentValue("calentry");
          DbDirectory dbdir = session.getDbDirectory("");
          Database maildb = dbdir.openMailDatabase();
          View calview = maildb.getView("($Calendar)");
          Document caldoc = calview.getNthDocument(n.intValue());
          // Create document to post results
          Database db = agentContext.getCurrentDatabase();
          Document doc = db.createDocument();
          doc.appendItemValue("Form", "main");
          doc.appendItemValue("subject", "Calendar entry");
          RichTextItem body = doc.createRichTextItem("body");
          // Get entry and put in body of document
          if (caldoc != null) {
              String noteid = caldoc.getNoteID();
              NotesCalendar cal = session.getCalendar(maildb);
              body.appendText("Calendar entry for Note ID " + noteid + "\n");
              body.appendText(cal.getEntryByNoteID(noteid).read());
          } else {
        	  body.appendText("Calendar entry out of range");
          }
          doc.save(true, true);

      } catch(Exception e) {
          e.printStackTrace();
       }
   }
}