mardi 11 mai 2010

Tirer le maximum des Google Apps script

Depuis septembre 2009, on peut développer au sein des feuille de calcul google des scripts. De quoi s'agit-il ? A quoi cela sert il ?  Quel est le niveau de compétence nécessaire à la mise en oeuvre de ces petits programmes ? Cet article à pour objectif de présenter les Google Apps Script, pour vous permettre de tirer le meilleur profit des données de votre entreprise hébergées sur Google Apps.

En quelques mots les Google Apps script permettent de faire circuler les données Google Apps, d'un service à un autre, d'un utilisateur à un autre.

On pourrait présenter la chose autrement : Les Googles Apps script sont  à Google Apps ce que les macros VBA sont aux fichiers Excel. Pourquoi est ce intéressant ? Parce que avec Google Apps vous êtes "sur le web", vos données sont accessibles depuis n'importe où. Une macro Excel, même bien conçue et développée, est condamnée à rester accessible aux personnes étant "proches sur le réseau", soit le même site LAN. Vos développements en javascript Google Apps seront accessibles à toute personne qui aura un accès au document.

Côté fonctionnel, que va t on pouvoir faire avec des Google script ?
Les Google scripts permettent de lire et d'écrire sans complexité technique dans les services suivants :

  1. Feuilles de calcul Google (spreadsheet)
  2. Agendas Google
  3. Contacts
  4. Google Sites
  5. Dossiers Google Docs
Ils proposent quelques services en plus :
  1. Possibilité d'envoyer des mails
  2. Accès aux appels SOAP (Web services)
  3. Possibilité de planifier les traitement à intervalles réguliers
  4. Une classe permet d'utiliser les outils de traductions Google...


En quelques mots, c'est surtout à chaque entreprise d'inventer la vie qui va avec ces quelques simples exemples :

  1. Récolter les données dans plusieurs feuilles de calcul et formulaires Google, dans un agenda, les reformater,
  2. Publier le contenu html ainsi créé dans un Google Site, soit créé tout exprès, ou bien ajouter des pages à un site existant
  3. Envoyer un mail aux personnes présentes dans l'un des groupes de votre carnet d'adresse avec un lien vers le site ainsi mis à jour...

On peut faire le scénario dans l'autre sens :

  1. Parcourir un ou plusieurs Google Sites pour récupérer les derniers articles, 
  2. Utiliser ces informations pour mettre à jour une feuille de calcul
  3. Toutes les personnes ayant configuré (en deux clics) une notification sur cette feuille de calcul google recevront alors un mail d'alerte...
N'oublions pas que l'on peut depuis une feuille de calcul Google récupérer les données d'un ou plusieurs autres feuilles de calcul. Et que peut on faire dans une feuille de calcul Google ? A peu près la même chose que dans un document Excel, à deux différences près :

  1. Les performances d'Excel sont tout de même meilleures pour manipuler un volume important de données
  2. Les feuilles de calcul Google sont accessibles à n'importe quelle personne ayant les autorisations
  3. Les feuilles de calcul Google peuvent être intégrées à un google site pour en faciliter l'accès

Nous avons chez Ogys réalisé sur cette base "feuille de calcul + Google sites" des fonctions complètes de pilotage projet : indicateur d'avancement, saisie des temps, budget consolidé, tableau de bord de pilotage.

Coté technique
Il s'agit de programmes javascript, langage connu par la plupart des "développeurs Web". Les objets javascript mis à disposition sont extrêmement simples dans leur description et leur fonctionnement. Tout simplement,  ils permettent de naviguer dans la plus grande majorité les données des Google Sites, des feuilles de calcul, des contacts, sans aucune complexité technique superflue. Les Google Apps script sont associés à une feuille de calcul Google, et peuvent être édités au moyen de la console en ligne proposée par Google. Quoi que relativement basique, elle fonctionne bien, elle dispose entre autres d'une fonction de Log. Même avec une connexion bas débit (250Mb/s), il est possible de développer...


  • Créer un site intranet en une ligne de code : 

mySite =  SitesApp.createSite("ogys.fr""nom-de-mon-site",
                              "titre de mon site""résumé du site");

  • Ajouter une page dans ce site avec du contenu html
myPage = mySite.createWebPage("nouvelle page""nouvelle-page"
                              "mon texte formaté ici");

  • Ajouter un utilisateur en lecture sur le site
mySite.addCollaborator("user@ogys.fr");


On pourrait continuer longtemps comme cela, mais au risque de dupliquer le contenu de la documentation Google, mieux vaut aller directement voir l'original.


Autres articles relatifs à Google Apps

www.ogys.fr