Pourquoi des fichiers séparés ?
Il peut arriver qu’on souhaite regrouper plusieurs fichier en une seule solution. Elles sont séparées parce que:
- On fabrique une solution à partir de différents modèles.
- On décide de séparer certaines données sur des fichiers différents, par exemple pour avoir les adresse, la compta ou d’autres choses ailleurs.
- On a différentes personnes qui ont chacune fabriqué une partie de la solution.
- On a créé les fichiers avec une ancienne version d’avant mars 2004, date à laquelle la version 7 a permis de regrouper plusieurs tables en une seule solution.
Si vous êtes dans l’un de ces cas, vous aurez probablement fait l’expérience que de regrouper le tout en une seule solution serait bénéfique, mais vous aurez peut-être aussi renoncé, devant la quantité d’opérations et le temps nécessaire à une telle fusion.
Quels avantages à les regrouper ?
- Faciliter l’établissement de liens entre les tables
- Stabiliser la solution et la cohérence du modèle de données.
- Une seule stratégie de sécurité s’appliquant à toute la solution.
- Idem concernant la gestion des utilisateurs.
- Offre la possibilité de bénéficier des mêmes scripts partout.
- Permet le partage des variables et des données d’environnement, ainsi que des images.
- La possibilité de partager la même charte graphique et le même thème au sein de la solution.
- Faciliter les mises à jour et les mises en production.
Comment faire ?
Il existe des outils qui promettent de permettre cette opération. Pour en avoir testé, ils sont très longs à paramétrer, coûteux et n’offrent aucune garantie de réussite.
Filemaker ne propose pas cette fonctionnalité et ne va pas le faire, même s’il y a des tentatives en direction de la possibilité de séparer la structure applicative des données. Pour l’instant, la seule solution viable est de s’atteler à la tâche et d’effectuer cette opération soi-même.
Mais rassurez-vous, la marche à suivre que je vais vous fournir devrait vous permettre de gagner passablement de temps, je l’ai éprouvée maintes fois et elle permet de garder un contrôle total sur la fusion des solutions.
Voici la procédure que je conseille, pour fusionner plusieurs fichiers Filemaker en un seul
1 – Choisir un fichier qui deviendra la solution
Plutôt que de partir d’un fichier vide, choisir celui qui possède déjà le plus de liens avec d’autres tables, celui dont la structure est la plus complexe ou/et celui qui contient le plus de scripts
2 – Importer toutes les tables
Dans ce fichier qui deviendra la solution, importer toutes les tables. Lorsqu’on importe, il n’est pas nécessaire de saisir manuellement les tables et les rubriques. Dans les options d’importation, on peut choisir:
Ce qui va recopier tous les champs et la structure
3 – Editer les liens entre les tables
Fabriquer le modèle de donnée en effectuant les liaisons, veillez à nommer les occurrences de tables de la même façon que dans chacun des fichiers. Il sera toujours possible de les renommer à la fin, lorsque la fusion sera complète.
4 – Créez tous les modèles de saisie et les rapports, mais vides
Créez tous les modèles en les associant à leurs tables. Mais n’y copiez aucun contenu, fabriquez-les vide. Choisissez tout de même formulaire, liste ou tableau selon leur apparence originale, mais gardez les vide, on les remplira plus tard.
Très important, les noms des modèles doivent être identique à l’origine, ceci afin que l’étape suivante fonctionne correctement.
5 – Importer les scripts de chaque fichier
Dans l’espace de travail des scripts, pour chaque fichier, sélectionnez-les tous, copiez-les et vous allez ensuite les coller dans la solution définitive.
Il est suggéré de créer un dossier pour chaque groupe de script, ceci afin de faciliter le débogage.
6 – Créez les listes de valeurs
Avant de copier-coller le contenu des modèles, ceux-ci contiennent probablement des listes, menus, cases à cocher ou boutons radios. Fabriquez les listes de valeurs qu’ils utilisent et gardez le même nom que l’original.
7 – Copiez tous les modèles et les rapports
A présent que la solution de destination possède toutes les tables, toutes les listes de valeurs et tous les scripts, on est prêt à effectuer la fusion finale.
Un modèle après l’autre effectuez les opérations suivantes
- Créez les éléments si nécessaire (en-têtes, pieds de page, sous-récapitulatifs,…)
- mesurez les éléments de l’original et reportez les valeurs sur celui de destination
- dans le modèle original, placez un objet (par exemple un rectangle) collé au bord supérieur gauche du modèle.
- Sélectionnez tout et copiez
- dans le modèle de destination, cliquez n’importe où vers le coin supérieur gauche et collez. Ainsi tous les objets se collent exactement à le même place que l’original.
- Supprimez le rectangle qui a servi aux objets de garder leur emplacement d’origine.
- Répétez cette opération pour chaque modèle
8 – Test et débogage
C’est en principe terminé, mais en fait c’est là que tout commence.
Ouvrez chaque table et corrigez les calculs qui contiennent des parties en commentaire « /* …. */ »
Ouvrez chaque script et corrigez les étapes qui font appel à des occurrences ou des tables inconnues « <inconnu> »
Testez la solution et améliorez là. Ça y est, tout est au même endroit.
J’espère que cette marche à suivre vous servira. N’hésitez pas à poser des questions ou me laisser un commentaire ci-dessous.