Aller à : navigation, rechercher

Procédure de migration MLB to MEP 1.3

Ce guide a pour objectif de vous accompagner dans la migration de vos données issues de Maarch LetterBox vers l'application Maarch 1.3. ette procédure tend à être la plus complète possible et sera mise à jour en fonction de nos retours d'expérience.

Le modèle de données étant sensiblement différent entre les deux applications, des scripts vont permettre d'automatiser au maximum la bascule des données de LetterBox vers MEP1.3. Il n'en reste pas moins que certaines opérations manuelles seront nécessaires.

Cette procédure s'applique à une installation de Maarch LetterBox standard en version 2.6. Nous enrichirons la procédure jusqu'à la version 2.8 dans les plus brefs délais.

Il est également souhaitable de consulter le guide d'administration de Maarch avant de vous lancer dans cette opération afin de bien appréhender les différences entre les deux applications.

Tous les développements spécifiques ne sont pas pris en compte et devrons faire l'objet d'adaptations par l'administrateur de la solution.

Etape 1 - Installation de Maarch 1.3

Dans un premier temps télécharger et installer la dernière version de Maarch .

Effectuer l'installation de MEP 1.3 en suivant la procédure d'installation disponible [|http://wiki.maarch.org/Guide_d%27installation_de_Maarch_Entreprise_1.3_sous_Windows]

Lors de l'installation il sera demandé de charger un jeu de données, sélectionner le data_mini.sql

Etape 2 - Préparation à la migration

Création de la structure temporaire

Les données exportées de MLB vont transiter dans des tables temporaires afin de permettre l'intégration au modèle de données MEP1.3 via une procédure SQL Sur la base de données créée lors de l'installation de MEP, exécuter le fichier Média:Structure_MLBtoMEP.sql

Récupération des données de MLB

En vue de l'intégration des données de Maarch LetterBox vers Maarch, il convient de faire un export de la base de données de MLB.

Maarch LetterBox s'appuie en standard sur une base de données MySQL. Plusieurs outils sont disponibles pour réaliser cette extraction. Ce choix reste à l'appréciation de l'administrateur. Il est également préférable d'exporter les tables les plus volumineuses dans des fichiers à part pour faciliter leurs manipulations (ex : res_x, history…)

Ci-dessous la liste des tables à reprendre, les correspondances dans la structure temporaire et les correspondances dans le modèle de données MEP1.3

Tables de paramétrage
Tables MLBTables MEP TemporairesCorrespondances MEP
basketsbaskets_tmpbaskets
coll_servcoll_serv_tmp
docserversdocservers_tmpdocservers
domainsdomains_tmp
domain_servicedomain_service_tmp
ext_docserverext_docserver_tmp
ext_referenceext_reference_tmp
groupbasketgroupbasket_tmpgroupbasket
groupsecuritygroupsecurity_tmp
listmodellistmodel_tmplistmodels
parametersparameters_tmpparameters
resgroupsresgroups_tmpresgroups
resgroup_contentresgroup_content_tmp
saved_queriessaved_queries_tmpsaved_queries
securitysecurity_tmpsecurity
servicesservices_tmpentities
usergroupsusergroups_tmpusergroups
usergroup_contentusergroup_content_tmpusergroup_content
usersusers_tmpusers
user_absuser_abs_tmpuser_abs


Tables de données
Tables MLBTables MEP TemporairesCorrespondances MEP
arboxesarboxes_tmp
arcontainersarcontainers_tmp
authorsauthors_tmp
doctypesdoctypes_tmpdoctypes
historyhistory
history_batchhistory_batch
listinstancelistinstance_tmplistinstance
modelsmodels_tmptemplates
model_servicemodel_service_tmptemplates_association
notesnotes_tmpnotes
res_xres_x_tmpres_letterbox, res_attachments, mlb_coll_ext, contacts
sendersender_tmp

Chargement des tables temporaires

Le SGBD cible étant PostgreSQL, il est nécessaire de faire des adaptations syntaxiques des différents fichiers obtenus par l'export pour les rendre compatible.

Contrôles et adaptations de données exportées

    • Modifier les requêtes INSERT INTO NomTable par INSERT INTO NomTable_tmp
    • Attention au ' inversé qui encadre les champs et des tables incompatibles sous postgreSQL. Elles sont incluses par défaut durant l'export, une option permet de les omettre.
    • Attention aux problèmes d'encodage, il est très probable que les caractères accentués soient mal convertis durant l'export ce qui rend les données non conformes, il conviendra donc de contrôler les données exportées et d’effectuer les adaptations si nécessaire
    • Remplacer les timestamp '0000-00-00 00:00:00' par NULL
    • Forcer les type_id à blanc avec une valeur par défaut dans la table res_x (si nécessaire)
    • Remplacer OFFSET(blanc) par OFFSET1(blanc) dans l'export de la table res_x,

Chargement des données dans la structure temporaire

Une fois l'export et le contrôle des différentes tables effectués, exécuter les scripts pour alimenter les tables temporaires

Etape 3 - Intégration des données de MLB dans MEP1.3

A ce stade de la procédure, les données de LetterBox sont chargées dans les tables temporaires. L'exécution du script de reprise finalise la procédure en intégrant ces données dans les tables de MEP1.3

Chargement des données

  • Exécuter le script Media:import_data_MLBtoMEP.sql
  • Modifier la séquence history_seq_id en spécifiant une valeur supérieure au dernier id de la table history de MEP


A ce stade vous pouvez vous connecter dans MEP1.3 avec l'utilisateur superadmin. Il reste cependant certaines opérations manuelles à effectuer pour finaliser l'installation et rendre l'application opérationnelle.

Compréhension et adaptations du paramétrage spécifique à MEP

Administration des entités et des groupes d'utilisateurs.

Deux différences majeures sont présentes dans l'administration et le paramétrage entre Maarch et LetterBox :

Les Entités

A la différence de LetterBox, Maarch intègre une notion de hiérarchie entre les entités paramétrées dans l'application. Cette hiérarchisation va permettre la simplification de la gestion des droits avec l'utilisation de mots-clés dans les requêtes et ajoute de la souplesse dans la gestion des utilisateurs.

Cette notion de hiérarchie étant absente dans Letterbox, il est nécessaire de compléter ce paramétrage dans le module "Entities" de Maarch.

Pour ce faire rendez-vous sur le guide d'administration -> Gestion de la sécurité[1]]

Les Groupes

La notion de groupe dans Maarch regroupe la gestion des accès à l'application et le périmètre documentaire de ses membres. Il n'est plus nécessaire de distinguer ces deux catégories comme dans Letterbox. Ceci a pour conséquence de simplifier la gestion et de réduire considérablement le nombre de groupes à administrer pour établir ces règles de sécurité.

Pour en savoir plus sur l'administration des groupes dans MEP et faire les adaptations nécessaires, rendez-vous ici [2]

Administration des corbeilles

Les corbeilles, comme dans Letterbox, sont des vues sur des documents d'une nature particulière, dans un statut particulier et permettent de créer des workflow de traitement, d'information ect... Dans Letterbox, les actions et statuts disponibles sont inscrits dans l'application et ne laissent pas à l'administrateur de grandes possibilités quand à son paramétrage, même si tous les outils nécessaires sont là pour le traitement du courrier, qui est la fonction principale de Letterbox.

L'application Maarch offre tous les outils pour construire et personnaliser sont/ses workflow (création d'actions, de statuts ...).

Il est important de s'assurer lors de la migration que l'ensemble des statuts disponibles dans Letterbox sont bien repris, et de revoir le paramétrage des clauses qui peut être fortement simplifié grâce à la gestion des entités dans MEP


Modèles et notifications

La gestion des modèles et des notifications a entièrement été revue dans MEP et offre des possibilités beaucoup plus étendues que dans Letterbox. L'utilisation de modèles issus de votre suite bureautique préférée (OpenOffice, MSoffice..), la possibilité d'établir des notifications sur tous les évènements du système font qu'il est techniquement difficile de reprendre un existant s'il existe. Il est cependant relativement simple de mettre tout cela en oeuvre : Reportez-vous pour cela au manuel administrateur.

Notifications : ici [3] Modèles de documents : ici [4]