Exemple d'importation d'une famille avec ses documents associés

Exemple d'importation d'une famille avec ses documents associés

But de ce document

Le but de ce document est de montrer comment créer dans Freedom une famille avec ses documents associés par importation d'un fichier OOo.

Au final, nous allons créer tous ces documents automatiquement en important un simple fichier OOo :

Pré-requis

Conseils pour apprendre à importer des documents

Le plus facile pour apprendre à importer des documents est encore de les créer manuellement dans Freedom et d'utiliser l'outil d'exportation de documents. Ensuite il suffit en général dans OOo de :

  • Supprimer les données superflues.
  • Remplacer les ID numériques par des ID alphanumériques pour que l'importation soit utilisable sur différentes installations de Freedom.

Créer une famille

Dans ce document, nous allons créer une famille toute simple. Voici sa définition :

héritagetitreidclassname
BEGIN0Importation famille complète IMPFAM
TYPEC
DFLDIDIMPDIRRACINE
CVIDIMPCV
// idattridframelabelTAtypeordvisneed
ATTRimp_fr Importation famille complèteNNframe10WN
ATTRimp_titleimp_frTitreYNtext20WY
ATTRimp_commentaireimp_frCommentaireNNtext30WN

Remarques :

  • Pour le moment, le contrôle de vue (IMPCV) et le dossier racine (IMPDIRRACINE) n'existent pas, mais nous allons les créer dans les chapitres suivants.
  • Il est important de bien renseigner le champ “name”, car le nom de notre famille (IMPFAM) sera utilisé lors de la création des documents liés à la famille dans les chapitres suivants.

Créer un dossier contenant les documents liés à la famille

dossier(DIR) <specid> <fldid> titre
ORDERDIR ba_title
DOCDIRIMPDIRFLDHOME_1Importation famille complète

Remarques :

  • Le seul but de ce dossier est d'y placer tous les documents que nous allons créer pour les retrouver plus facilement.
  • Ce dossier sera placé à la racine du dossier “Freedom Master” (FLDHOME_1).
  • Il est important d'indiquer l'ID spécifique “IMPDIR” pour pouvoir l'utiliser dans les autres documents.

Attention : Les ID spécifiques indiqués doivent être uniques dans tous les documents de Freedom.

Créer un dossier contenant les documents par défaut de la famille

dossier(DIR) <specid> <fldid> titre
ORDERDIR ba_title
DOCDIRIMPDIRRACINEIMPDIRracine de Importation famille complète

Remarques :

  • Il est possible de créer ce dossier automatiquement en mettant “auto” au paramètre “DFLDID” de la famille. Cependant, il est intéressant de créer le dossier manuellement avec un ID spécifique pour pouvoir y placer des documents automatiquement après (ex : les recherches).
  • Pour que ce dossier soit bien le dossier par défaut de la famille, il ne faut pas oublier son ID (IMPDIRRACINE) dans le paramètre “DFLDID” de la famille.
  • J'ai choisi de placer ce dossier à l'intérieur du dossier précédent mais cela n'est absolument pas obligatoire.
  • Une fois ce dossier créé avec la famille correctement paramétrée, il doit être possible d'utiliser notre famille dans le module “ONEFAM”.

Ajouter une référence au document famille dans notre dossier IMPDIR

Le seul but étant d'avoir accès rapidement à notre famille depuis notre dossier :

() <specid> <fldid>
DOC IMPFAMIMPDIR

Créer des documents pour cette nouvelle famille

Dans certains cas, il peut être intéressant d'avoir quelques documents disponibles dés la création de la famille. Dans notre cas, nous allons créer 3 documents avec chacun un ID spécifique :

IMPFAM <specid> <fldid> Titre Commentaire
ORDERIMPFAM imp_titleimp_commentaire
DOCIMPFAMIMPDOC1IMPDIRTest 1Commentaire 1
DOCIMPFAMIMPDOC2IMPDIRTest 2Commentaire 2
DOCIMPFAMIMPDOC3IMPDIRToto et tutuPas de commentaire

Remarque : Si aucun ID spécifique n'est précisé, à chaque importation du fichier nous aurons 3 nouveaux documents.

Créer une recherche permettant de retrouver les documents de la famille

recherche(SEARCH) <specid> <fldid> titre mot-clef révision mode fid amille
ORDERSEARCH ba_titlese_keyse_latestse_casese_famid
DOCSEARCHIMPSEARCHIMPDIRLes documents de la famille Importation famille complète yesnoIMPFAM

Remarque : Dans cette recherche, nous avons précisé :

  • Un ID spécifique dans la colonne ”<specid>”
  • Le dossier ou sera enregistré cette recherche dans la colonne ”<fldid>”
  • l'ID spécifique de la famille concernée par la recherche dans la colonne ”<se_famid>”

Attention : Tous ces attributs sont obligatoires pour que l'importation se passe correctement.

Créer des recherches pour le module ONEFAM

Pour qu'une recherche soit disponible dans ONEFAM, il suffit de la placer dans le dossier racine de la famille (IMPDIRRACINE) :

recherche(SEARCH) <specid> <fldid> titre mot-clef révision mode fid amille
ORDERSEARCH ba_titlese_keyse_latestse_casese_famid
DOCSEARCHIMPSEARCH2IMPDIRRACINETitre contient testtestyesnoIMPFAM

Créer un rapport

Il est souvent plus intéressant d'utiliser des rapports à la place des requêtes car il est possible d'indiquer un ordre de tri.

Remarques :

  • Je n'ai pas placé l'exemple d'importation des rapports dans le Wiki, car il comporte trop de colonnes pour être lisible. Vous le trouverez dans le fichier OOo indiqué à la fin de ce document.
  • Après avoir créé le rapport dans Freedom et l'avoir exporté dans OOo, il faut supprimer les colonnes inutiles et la colonne contenant la requête SQL pour que l'importation fonctionne correctement. Ensuite, il faut remplacer les ID numériques par les ID spécifiques correspondants.

Créer un service portail

Quand nous avons des recherches associées à une famille, il est intéressant de créer des services-portails associés à ces recherches.

Remarques :

  • Je n'ai pas placé l'exemple d'importation des services-portails dans le Wiki, car il comporte trop de colonnes pour être lisible. Vous le trouverez dans le fichier OOo indiqué à la fin de ce document.
  • Une fois le service-portail et sa recherche associée importés dans Freedom, celui-ci sera disponible sur le portail.

Créer des masques de saisies

Pour notre exemple, nous allons créer deux masque d'éditions et deux masques de consultations :

masque de saisie(MASK) <specid> <fldid> titre id familles attrid visibilité obligatoire
ORDERMASK ba_titlemsk_famidmsk_attridsmsk_visibilitiesmsk_needeeds
DOCMASKIMPMASKV1IMPDIRMasque vue complèteIMPFAMimp_fr\nimp_title\nimp_commentaireR\nR\nR
DOCMASKIMPMASKV2IMPDIRMasque vue titreIMPFAMimp_fr\nimp_title\nimp_commentaireR\nR\nH
DOCMASKIMPMASKE1IMPDIRMasque édition complèteIMPFAMimp_fr\nimp_title\nimp_commentaire-\n-\n--\n-\n-
DOCMASKIMPMASKE2IMPDIRMasque édition TitreIMPFAMimp_commentaireH-

Remarques :

  • Il est possible de créer les masques dans Freedom et de les exporter mais il ne faut pas oublier de remplacer les ID numériques par des ID spécifiques dans les colonnes “FLDID” et “id familles”.
  • Il est important d'indiquer des ID spécifiques dans la colonne ”<specid>” pour pouvoir les utiliser dans le contrôle de vues que nous allons créer au chapitre suivant.

Créer un contrôle de vue

Remarque :

  • Je n'ai pas placé l'exemple d'importation du contrôle de vues dans le Wiki, car il comporte trop de colonnes pour être lisible. Vous le trouverez dans le fichier OOo indiqué à la fin de ce document.
  • Comme pour les autres documents, il est possible de créer le contrôle de vues dans Freedom avant de l'exporter dans OOo mais ensuite il ne faut pas oublier de remplacer tous les ID numériques par des ID spécifiques.
  • Pour associer ce contrôle de vues à notre famille, il faut indiquer son ID spécifique au paramètre “CVID” de la famille.

Fichier OOo contenant tous les exemples de ce document

Ce fichier OOo contient tous les exemples d'importation de ce document.

L'importation de ce fichier doit créer automatiquement tous les documents indiqués.

Pour importer des documents en utilisant la ligne de commandes, il est conseillé de lire ce chapitre pour avoir plus d'explications sur l'utilisation de scripts dans Freedom.

Mais en résumé, voici la commande qu'il faut utiliser pour importer des documents dans Freedom :

/usr/share/what/wsh.php --api=freedom_import --file=VotreFichier.ods

Remarque : Vous pouvez importer directement un fichier OpenOffice.org .ods ou un fichier .csv

freedom_2.14/admin/exemple_importation.txt · Dernière modification: 11/03/2010 14:53 par jerome.auge