Domino Références : Site francophone de ressources pour les développeurs Lotus Notes / Domino Domino Références
Site francophone de ressources pour les développeurs Notes/Domino
Annuaire Articles Forums Contact
Recherche
 
Mot exact résultats
Au Sommaire ...
Annuaire commenté des sites traitant de Lotus Notes/Domino
Articles d'actualité
Les forums de discussion
Une remarque, une critique, un encouragement. N'hésitez pas à me contacter.
The Team that meets in Forum.
Newsletter
email:   
s'abonner se désabonner 
Statistiques
 Stats du site

 

Le premier script
par Lionel

Nous allons maintenant creer nos premieres lignes de code. Pour cela, il faut cliquer sur Initialize, dans la liste de gauche. Le code qui s'affiche est alors le suivant:

Sub Initialize

End Sub

Comme toutes les procedures, Initialize est precedee du mot reserve Sub et se termine par les mots reserves End Sub. C'est entre ces deux lignes que nous allons saisir le code LotusScript.

Tout agent doit commencer par la creation d'une nouvelle session, faute de quoi vous declencherez des erreurs d'execution. Une nouvelle session se cree a l'aide de la classe d'objets NotesSession. La syntaxe correcte est la suivante :

Sub Initialize
'
Dim S As New NotesSession
'
End Sub

Voila, c'est tout. C'est le code minimal qu'un agent doit contenir pour pouvoir fonctionner correctement. Les simples guillemets (') qui entourent la ligne de code principale sont des commentaires : tout ce qui est ecrit apres ces guillemets n'est pas interprete par LotusScript et permet simplement au developpeur de documenter son travail. Dans cet exemple, j'utilise les guillemets pour aerer un peu le code (j'aurais d'ailleurs pu utiliser un simple retour chariot).

L'objet NotesSession permet d'acceder a de nombreuses informations telles que le nom de l'utilisateur, les variables CGI passees en parametres, et bien dautres encore. Nous aurons l'occasion de revenir sur certaines de ses methodes et proprietes.

Mais pour l'instant comencons par un petit exercice pratique : l'affichage du traditionnel et incontournable 'Hello, world!' dans la fenetre de notre navigateur prefere. C'est parti :

Sub Initialize
'
Dim S As New NotesSession
print |Hello, world !|

print |<hr width="60%">|
'
End Sub

Ces deux lignes de code appellent plusieurs commentaires :

  • La commande Print sert a ecrire des informations sur la fenetre de sortie, en l'occurence l'ecran du navigateur. Comme vous pouvez le constater, son usage est d'une grande simplicite. Il suffit de l'utiliser avec n'importe quel chaine de caractere ou code HTML pour que cela fonctionne. Dans cet exemple, on va afficher un texte suivi d'une barre horizontale (balise HTML : <hr>).
  • Dans mon exemple, les chaines de caractere ne sont pas delimitees par de classiques guillemets ("), mais par des barres verticales (|). Et je vous encourage vivement a utiliser ce delimiteur car il vous simplifiera l'ecriture du code HTML. En effet, les proprietes des balises HTML utliisent le guillemet comme delimiteur de chaine, ainsi que l'illustre l'exemple precedent avec la balise <hr>. Vous pouvez egalement utiliser les accolades { et } pour delimiter vos chaines de caracteres.
  • Il n'est pas necessaire d'ecrire l'integralite du code HTML de la page qui sera generee : l'agent ajoutera de lui-meme les informations d'en-tete ainsi que les balises <body> et <html>. Vous pouvez vous faire une idee en consultant le code source du navigateur.

Maintenant, il ne nous reste plus qu'a tester notre programme. Pour cela, nous allons simplement l'executer dans notre navigateur en tapant l'URL suivante :

http://www.acme.com/tests/client.nsf/basics?OpenAgent

Avec

  • www.acme.com : adresse du serveur web, eventuellement suivi du numero de port si celui-ci est different de 80
  • tests/client.nsf est le chemin relatif de la base Notes
  • basics est l'alias de notre agent

Je n'ai pas reproduit la fenetre du navigateur mais vous pourrez constater par vous-meme que cela affiche bien le texte "Hello, World!" suivi d'une barre horizontale.

Comme vous pouvez le constater, l'URL permettant de generer un agent est du type:

http://adresse_du_serveur/base_domino/nom_de_l_agent?OpenAgent

Cette syntaxe est facilement comprehensible et je me contenterai donc de quelques commentaires pour terminer :

  • On ne peut pas lancer un agent avec un numero d'ID. On est oblige d'utiliser un nom ou un alias de nom d'agent.
  • Si le nom de votre agent comporte des espaces, remplacez les par des signes plus dans l'URL.
  • On peut passer des parametres en utilisant le symbole & suivi d'une chaine de caractere. Nous etudierons cette operation en detail prochainement.
  • Comme vous pouvez le constater, il est tres facile d'executer un agent pour peu que l'on connaisse son nom. C'est important pour la securite comme nous allons le voir des a present.
Mise à jour: 18/09/2003
Conception: Lionel, 2001-2002