Lotus Software-Logo
IBM Lotus Domino Designer 8.5
  Versionen 8.5 und 8.5.1






Examples: Actions

  1. This LotusScript action prints the name of each Domino database in the Domino data directory on the computer running the script. The FirstDatabase and NextDatabase methods of NotesDbDirectory walk through all the databases for the specified server where null defaults to the current computer.
  2. Sub Click(Source As Button)
    
    Dim directory As New NotesDbDirectory("")
    Dim db As NotesDatabase
    Set db = directory.GetFirstDatabase(DATABASE)
    While Not(db Is Nothing)
    Messagebox db.Title
    Set db = directory.GetNextDatabase()
    Wend
    Messagebox "The End"
    End Sub
  3. This formula lists the names in the Address Book on the CORP1 server, lets the user select any number of names, combines the selected names into a string using a comma and a space to separate names, and inserts the string into the current field. This action works best when the user is in the SendTo field of a mail database.
  4. last := @Left(@DbColumn(""; "CORP1" : "NAMES.NSF"; "People"; 1); ",");
    
    first := @RightBack(@DbColumn(""; "CORP1" : "NAMES.NSF"; "People"; 2); " ");
    list := first + " " + last;
    name := @Prompt([OKCANCELLISTMULT]; "Send To"; "Who are you sending this memo to?"; ""; list);
    @Command([EditInsertText]; @Implode(name; ", "))
  5. This formula is a "Hide action if formula is true" formula. The action becomes available on the form menu or action bar only if the field OrderTotal is 100 or less. (If the user just entered a value for Order_Total in the current document, a document refresh must occur before the new value is effective.)
  6. OrderTotal > 100
  7. These scripts collectively force the user to use an action to place an existing document in Edit mode. The action script places the current document in Edit mode. The Postopen and Querychangemode event scripts prevent the user from changing to Edit mode through other means such as Actions - Edit Document (CTRL+E).
  8. '(Globals) object, (Declarations) event
    
    Dim allowEdit As Integer
    '(Form) object, Postopen event
    
    Sub Postopen(Source As Notesuidocument)
    'Let document pass if new or not in EditMode
    'Otherwise if existing document is in EditMode
    ' Set allowEdit so Querymodechange doesn't reprocess
    ' Turn EditMode off so document opens in Read mode
    ' Tell the user to use the action
    If source.EditMode And Not source.IsNewDoc Then
    allowEdit = True
    source.EditMode = False
    Messagebox _
    "Use Edit mode action to edit document"
    Else
    allowEdit = False
    End If
    End Sub
    '(Form) object, Querymodechange event
    
    Sub Querymodechange(Source As Notesuidocument, Continue As Integer)
    'Allow user to proceed, and turn off allowEdit if
    ' user clicked the action (allowEdit on)
    ' already processed by Postopen (allowEdit on)
    ' trying to get out of Edit mode
    ' (allowEdit off but EditMode on)
    'Tell user to click action if changing existing document
    ' to Edit mode and not already processed by Postopen
    ' (allowEdit and EditMode off)
    If allowEdit Or (source.EditMode And Not allowEdit) Then
    allowEdit = False
    Else
    Messagebox _
    "Use Edit mode action to edit document"
    continue = False
    End If
    End Sub
    '(Action) object, Click event
    
    Sub Click(Source As Button)
    Dim workspace As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Set uidoc = workspace.CurrentDocument
    'Turn on allowEdit so Querymodechange will let it pass
    'Turn on EditMode
    allowEdit = True
    uidoc.EditMode = True
    End Sub
Siehe auch
Actions




Bibliothek | Unterstützung | Nutzungsbedingungen |

Letzte Aktualisierung: Montag, 5. Oktober 2009