index du manuel

Fonctions Wsh

Les fonctions bash sont activables via le programme “wsh.php”. Elles doivent être exécutées dans une fenêtre shell sur la machine serveur.

Comment exécuter une fonction WSH

Pour exécuter une fonction WSH, il y a deux méthodes :

1 - Indiquer le chemin complet de la fonction. Exemple :

<wiff_context_root>/wsh.php --listapi

Le <wiff_context_root> est le répertoire d'installation de freedom.

2 - Utiliser un alias wsh. Exemple :

alias wsh="<wiff_context_root>/wsh.php"
wsh --listapi

Remarque : Il est possible de charger ce fichier de configuration automatiquement au démarrage en ajoutant ces lignes au fichier ”~/.bashrc”:

alias wsh="<wiff_context_root>/wsh.php"

ATTENTION : Pour faciliter la lecture et la saisie des commandes, nous allons utiliser uniquement l'alias “wsh” dans ce document.

listapi

Cette commande, permet de connaître les fonctions de l’API disponible :

wsh --listapi

Remarque : Le résultat de cette commande, donne en faite la liste des fichiers .php du répertoire ”/usr/share/what/API

fdl_adoc

Permet de reconstruire les classes PHP conformément à la définition décrite dans la table docattr de la base Postgresql Freedom.

Paramètres :

  • docid : référence de la famille à mettre à jour. Si non précisé toutes les familles sont mises à jour.
wsh --api=fdl_adoc --docid=100



À utiliser si des modifications ont été faites directement dans la base de données.

freedom_clean

Supprime les documents temporaires et nettoie les contenus des dossiers.

Paramètres : aucun.

wsh --api=freedom_clean

Ce nettoyage est effectué tous les jours de manière automatique.

freedom_convert

Convertit un document dans une autre famille. Le document perd tous les attributs qui n'existent pas dans la nouvelle famille.

Paramètres :

  • tofamid : référence de la nouvelle famille
  • docid : référence du document
wsh --api=freedom_convert --tofamid=124 --docid=4568

freedom_groups

Mets à jour la table des groupes FREEDOM par rapport à base de données WHAT. Copie la table groups de la base anakeen vers la base freedom.

Paramètres : aucun

wsh --api=freedom_groups

Cette fonction est appelée par l'application USER de WHAT à chaque changement de groupes.

freedom_import

Permet d'importer des documents au format CSV ou OpenOffice.org dans la base Freedom.

Paramètres :

  • file : chemin du fichier
  • analyze : (optionnel) si Y alors analyse le fichier seulement. Si N (défaut), l'importation est effectuée.
  • dirid : (optionnel) référence du dossier par défaut pour classer les documents. Le document est classé dans ce dossier si sa référence de dossier (3ème colonne) est vide ou égale à zéro. Si cet attribut vaut zéro et qu'il n'a pas de référence dossier, alors le document n'est pas classé. Si cet attribut n'est pas précisé et qu'il n'a pas de référence dossier, il est classé dans le dossier par défaut de la famille s'il existe sinon il est classé dans le dossier« Import » (référence 10).
  • double : (optionnel) : si Y alors autorise l'import d'un nouveau document de même titre et de même famille qu'un document existant. Si N (défaut), les nouveaux documents de même titre sont ignorés.
  • reinitattr : (optionnel) : si yes, dans le cas d'un import de description de famille, alors les précédentes descriptions des attributs (dans la table docattr) sont supprimées. Le fichier de Class (Method.*.php) est re-généré. Dans le cas de l'import des familles de type cycle de vie, il faut “initialiser” tous les documents de ces familles pour reconstituer les attributs. Dans tous les cas, les valeurs en base de données ne sont pas affectées. Remarque : cette option n'a pas à être utilisée autrement que pour importer des familles (par exemple, à ne pas utiliser pour l'import de paramétrages de documents “système” (masque, contrôle de vue, profils, …))
wsh --api=freedom_import --file=/home/eric/Banques.csv --analyze=Y

Le rapport des documents importés est écrit sur la sortie standard.

freedom_refresh

Permet de recalculer les valeurs des attributs dynamiques d'un document ainsi que de leur titre. Le raffraichissement se fait pour tous les documents d'une même famille.

Paramètres :

  • famid : référence de la famille des documents à raffraîchir.
wsh --api=freedom_refresh --famid=100

freedom_refresh avec une méthode en argument

La méthode freedom_refresh permet de passer une méthode en argument. Cet exemple montre comment changer le profil d'un document et de tous les documents d'une famille.

Paramètres :

  • famid = id (logique ou nombre) de la famille
  • method = méthode de la famille à activer
  • docid (OPTIONNEL) = id du doc (si pas précisé = tous les documents)
  • arg = chaîne de caractère étant les arguments passé à la méthode

Affecter le profil 1234 au document 8776 de la famille MA_FAMILLE :

wsh --api=freedom_refresh --famid=MA_FAMILLE --docid=8776 --method=setProfil --arg=1234

Affecter le contrôle de vue 2345 à tous les documents de la famille MA_FAMILLE :

wsh --api=freedom_refresh --famid=MA_FAMILLE --method=setcvid --arg=2345

Affecter le contrôle de vue 2345 uniquement au document 8776 de la famille MA_FAMILLE :

wsh --api=freedom_refresh --famid=MA_FAMILLE --docid=8776 --method=setcvid --arg=2345

ods2csv

Cette fonction permet de convertir un fichier OpenOffice.org Calc (.ods) en fichier CSV. Le fichier CSV peut ensuite être utilisé pour réaliser des importations avec la fonction “freedom_import” documentée ci-dessus.

Paramètres :

  • odsfile : Permet d'indiquer le nom du fichier .ods à convertir
  • csvfile (optionnel) : Permet d'indiquer le nom du fichier .csv de destination. Si cette option n'est pas utilisée, le résultat est donné sur la sortie standard.
wsh --api=ods2csv --odsfile=/MonChemin/MonFichier.ods
wsh --api=ods2csv --odsfile=/MonChemin/MonFichier.ods --csvfile=/MonChemin/MonFichier.csv

Remarque : Il n'est pas nécessaire de convertir un fichier OpenOffice.org en fichier CSV avant de l'importer dans Freedom, car Freedom est capable d'importer directement le fichier OpenOffice.org.

freedom_2.14/admin/wsh.txt · Dernière modification: 27/05/2010 17:02 par charles