Mise à jour majeure 20.03

Nouveaux pré-requis

Version minimum requise de PHP : 7.2
Version minimum requise de postgresql : 9.6
Navigateurs internet compatibles : Firefox ESR >= 60 ou Firefox >= 69 ou Chrome >= 79
Windows 7 n'est plus compatible car l'éditeur a mis fin au support de cette version.

  • Installation de netcat (Utilisé pour vérifier la disponibilité d'une adresse IP) :
    apt-get install netcat (Sous Centos : yum install nmap)
    

La procédure ci-dessous décrit les étapes de migration de la version 19.04 à la version 20.03.

Attention

Si votre version de Maarch Courrier est antérieure à la version 19.04, il faudra exécuter tous les scripts de migration antérieurs (exemple : 1810.sql, 1904.sql et les migrates.sh).
Voir la documentation des migrations antérieures si tel est le cas.

Mise à jour des sources de l'application

git fetch
git checkout tags/$(git tag --sort=committerdate | grep -E '20\.03\.([0-9]+)$' | tail -1) -b $(git tag --sort=committerdate | grep -E '20\.03\.([0-9]+)$' | tail -1)

Script SQL

L'exécution des 3 scripts suivants peut prendre beaucoup de temps (entre quelques minutes et 3 heures) en fonction du nombre d'éléments qu'il y a dans ces vues sql : res_view_letterbox, res_view_attachments, view_contacts

Cette action est à exécuter sur toutes vos instances (customs).

  • Passer le script 2003.sql qui se trouve dans migration/20.03

Script BASH

Cette partie doit être faite uniquement si le script précédent s'est terminé sans erreurs.
Cette action n'est à exécuter qu'une seule fois, le script migrera tous les customs présents dans le dossier custom.

  • Lancer le script migrate.sh qui se trouve dans migration/20.03

Script de finition SQL

Cette partie doit être faite uniquement si les 2 scripts précédents se sont terminés sans erreurs.
Cette action est à exécuter sur toutes vos instances (customs).

  • Passer le script 2003-postScript.sql qui se trouve dans migration/20.03

BREAKING CHANGES

Enregistrement de courrier

  • Le droit d'enregistrer un courrier passe maintenant par une interface dédiée dans l'administration des groupes. Si un utilisateur n'a pas de groupe avec ce droit activé, il ne pourra pas indexer de courrier que ce soit via l'application ou via Maarch Capture.
  • L'utilisateur superadmin ne peut donc plus être utilisé pour enregistrer des courriers (via MaarchCapture par exemple). Il faut créer un utilisateur de webservice dans l'administration des utilisateurs
  • Il n'est plus possible de lier un courrier à un autre depuis la page d'indexation. La fonctionnalité de liaison a été revue et est toujours disponible dans la page de traitement
  • Il n'est plus possible de renseigner le champs "Département concerné". Ce critère est toujours disponible dans la recherche avancée et recherche sur le champs "Code postal" des contacts associés au courrier.

Administration des groupes et bannettes

  • La table mlb_coll_ext a été supprimée, toutes les colonnes sont migrées dans res_letterbox. Toutes références à cette table dans les clauses de bannette doivent être modifiées.
  • La table res_version_attachments ainsi que la vue res_view_attachments ont été supprimées. Toutes références à ces tables dans les clauses de bannette doivent être modifiées.
  • La colonne typist de res_letterbox est maintenant de type integer, et renseigné avec l'identifiant technique de l'utilisateur. Un nouveau mot-clé @user_id (retournant l'id technique de l'utilsateur) est maintenant utilisable dans les clauses de groupe et bannette
  • Les catégories ne sont plus paramétrables en xml, il faut utiliser la mécanique de modèles d'enregistrements pour activer/désactiver une catégorie.

Administration des modèles de document

  • Pour tous les modèles, le périmètre des entités fait référence à l'entité traitante du courrier. Si le courrier n'a pas d'entité traitante, les entités de l'utilisateur sont prise en compte

Administration des actions

  • Il n'est plus possible de créer une action avec le mot-clé indexation. Toutes les actions ayant ce mot-clé ont été redispatchées en plusieurs actions avec chacune un seul statut.
  • Toutes les actions avec le mot-clé 'redirect' doivent obligatoirement avoir au moins une entité ou un mot-clé. Avant, s'il n'y avait ni mot-clé, ni entité, il était possible de rediriger vers toutes les entités.
  • L'action système "Mettre en copie" n'existe plus. Il faut maintenant passer par la fiche détaillée si on veut ajouter des personnes en copies, ou passer par une action de redirection
  • Les actions système' "Envoyer au contact" et "Envoyer au contact avec pièce jointe obligatoire" n'existent plus au profit de l'action système "Générer et envoyer les accusés de réception "
  • L'action système "Transmettre la réponse signée" n'existe plus. Il faut maintenant passer par l'action système' "Poursuivre le circuit de visa", et lui associé un statut.

Administration des utilisateurs

  • L'administrateur ne peut plus réinitialiser le mot de passe d'un utilisateur. Si l'utilisateur a oublié son mot de passe, il peut le redéfinir via le bouton "Mot de passe oublié ?" sur la page de connexion
  • A la création d'un utilisateur, le mot de passe par défaut n'est plus "maarch". Le mot de passe est connu de personne, et l'utilisateur reçoit un courriel pour pouvoir définir son mot de passe.

Administration des types de courriers

  • Il n'est plus possible d'associer un type de courrier à un champs custom. Il faut utiliser la mécanique des modèles d'enregistrement.
  • Il n'est plus possible d'associer un type de courrier à un modèle de document automatiquement chargé. Il faut utiliser la mécanique des modèles d'enregistrement.

Mot-clé

  • La visibilité des mots-clés ne peut plus être restreinte par entité
  • La fonctionnalité Thesaurus a été fusionnée avec la fonctionnalité de mots-clés

Impression des séparateurs

  • Les qrcodes des séparateurs par entité ont été revus pour coïncider avec le nouveau webservice d'enregistrement de courrier, il faut donc re-générer les séparateurs avant de les utiliser via MaarchCapture.

Administration technique

  • L'auto-complétion BAN embarque de nouvelles informations, il est donc obligatoire de remplacer ses indexes BAN pour tous les départements installés sur l'application (https://labs.maarch.org/maarch/addresses_ban).
  • L'indexation plein texte (full text) est maintenant générée à la volée, il faut donc supprimer tous les appels aux batchs FullText ainsi que la purge des logs FullText dans la crontab.
  • La colonne fulltext_result des tables res_letterbox et res_attachments affichera désormais 'SUCCESS' ou 'ERROR'. Si une erreur est survenu lors de l'indexation ('ERROR'), des informations complémentaires pourront être trouvées dans le fichier technique.log à la racine de l'application.

Autres

  • La statistique "Nombre de dossier consultés" a été supprimée
  • Il n'est plus possible de générer des bordereaux d'envoi utilisant le numéro chrono d'une pièce jointe
  • Il n'est plus possible de générer des numéros chrono en fonction des dossiers (chr_by_folder dans le fichier chrono.xml)
  • Le mode de connexion via la plateforme Ozwillo n'est plus disponible
  • L'export SEDA et les actions liées à celui-ci ont été supprimés
  • La traduction en néerlandais est partielle tant qu'il n'y a pas de financement

Migration des champs personnalisables

  • Les colonnes custom_ de la table res_letterbox ont été supprimées. Il faut utiliser la nouvelle table resources_custom_fields. Toutes les valeurs custom de res_letterbox sont migrées dans cette table si les champs étaient déclarés dans le fichier *index_letterbox.xml
  • Si des colonnes custom_ étaient utilisées, mais non déclarées dans le fichier index_letterbox.xml, un fichier exportCustomFields.csv regroupe toutes les valeurs des champs custom, dans le dossier migration/20.03/.

Certains champs étaient déclarés en standard, et sont maintenant des champs personnalisables. Pour ces champs, les valeurs se trouvent maintenant dans la table resources_custom_fields. Les champs impactés sont les suivants :

  • nature_id
  • scan_
  • external_reference
  • reference_number

Si ces variables étaient utilisées dans les clauses de bannette ou de groupes, la migration a été faite via le script migrate.sh
Les champs de fusion [resletterbox.nature_id], [res_letterbox.external_reference], [res_letterbox.reference_number], [res_letterbox.scan] ne sont plus disponible. Il faut utiliser la variable de fusion *[res_letterbox.customField]**

Migration des natures

Les valeurs des champs natures sont migrées comme ceci :

Ancienne valeur Valeur migrée
Courrier simple Courrier simple
Courriel Courriel
Fax, Coursier, Autre Autre
Chronopost, Fedex Courrier suivi
Courrier AR Courrier avec AR

Il est possible de modifier ces valeurs dans l'administration des champs personnalisés

M2M

Dans les versions précédentes, lorsqu'un pli numérique arrivait, la référence était enregistrée dans le champ N° recommandé (reference_number) et la nature était positionnée à "Pli numérique".
Maintenant, la référence du pli est enregistrée dans la colonne "external_id->>m2m" de la table res_letterbox. La nature n'est plus renseignée

Nouvelle fonctionnalité de dossier

Les fonctionnalités affaires, plans de classement et dossiers ont été supprimées.
Ces 3 anciennes méthodes de classement sont remplacées par une nouvelle fonctionnalité de dossiers.

Lors de la migration :

  • les dossiers publics sont migrés en nouveaux dossiers partagés à toutes les entités. Le lien avec les courriers n'est pas conservé. Un export csv des anciennes données est disponible dans le dossier migration/20.03/ .
  • les dossiers restreints à une entité sont migrés en nouveaux dossiers partagés à cette même entité. Le lien avec les courriers est conservé.
  • les plans de classements publics sont migrés en nouveaux dossiers partagés à toutes les entités. Le lien avec les courriers n'est pas conservé. Un export csv des anciennes données est disponible dans le dossier migration/20.03/ .
  • les plans de classements privés sont migrés en nouveaux dossiers privés. Le lien avec les courriers est conservé.
  • les affaires ne sont pas migrés. Un export csv des anciennes données est disponible dans le dossier migration/20.03/ .

Toutes les tables et colonnes liées aux plans de classement, aux affaires et aux anciens dossiers sont supprimés.
Les champs customs liés aux types de dossiers ne sont pas conservés
Il n'est plus possible d'écrire des notes sur un dossier

Champs de fusion

Des nouveaux champs de fusion pour l'entité traitante et l'entité initiatrice du courrier ont été rajoutés ainsi que pour leur parent respectifs.
Tous les champs de fusion disponibles sont documentés ici.
Toutes les variables ont été migrées automatiquement via les scripts de migration ci-dessus.

Voici un résumé des champs ayant changé de noms :

Ancien champ Nouveau champ
res_letterbox.entity_label destination.entity_label
res_letterbox.process_notes notes
resletterbox.contact{...} sender.{...}
contact.{...} attachmentRecipient.{...}
attachments.chrono attachment.chrono
visa.{...} visas
avis.{...} opinions
copies.{...} copies
user.{...} (variables de l'entité primaire) userPrimaryEntity.{...}
res_letterbox_contact.{...} sender.{...} ou recipient.{...}

Privilèges

Les privilèges suivants ont été supprimés :

Identifiant privilège Nom du privilège Nouveau comportement
add_tag_to_res Associer des mots-clés disponibles pour un courrier Il faut avoir le privilège Modifier les métadonnées pour pouvoir ajouter des mots-clés
tag_view Voir les mots-clés des courriers Tout le monde peut voir les mots-clés associés au courrier
put_in_validation Envoyer le document en validation depuis la page détails Il faut passer par une action, ou via l'administration Changement de statut du courrier
print_details Imprimer la fiche de liaison depuis la fiche détail Tout le monde peut imprimer la fiche de liaison, et uniquement depuis les listes de résultats (bannette ou recherche)
print_doc_details_from_list Imprimer les fiches de liaison depuis la recherche Tout le monde peut imprimer la fiche de liaison, et uniquement depuis les listes de résultats (bannette ou recherche)
view_attachments Voir les pièces jointes Tout le monde peut voir les pièces jointes
index_attachment Indexer une pièce jointe Tout le monde peut créer des pièces jointes
modify_attachments Modifier les pièces jointes Il faut avoir le privilège Gérer les pièces jointes (manage_attachments). Un utilisateur peut toujours modifier ses propres pièces jointes
delete_attachments Supprimer les pièces jointes Il faut avoir le privilège Gérer les pièces jointes (manage_attachments). Un utilisateur peut toujours supprimer ses propres pièces jointes
edit_attachments_from_detail Modifier les pièces jointes depuis la fiche détaillée L'utilisateur peut tout le temps modifier ses propres pièces jointes. Pour modifier les autres pièces jointes, il faut avoir le privilège "Gérer les pièces jointes" (manage_attachments)
notes_restriction Restreindre par défaut les annotations à votre entité Par défaut, les annotations sont restreinte aux entités de l'utilisateur et à l'entité traitante
graphics_reports Activer l'affichage graphique dans les statistique L'affichage graphique des statistiques est proposé à tous les utilisateurs
use_date_in_signBlock Inclure la date dans la griffe de signature Il n'est plus possible d'inclure un horodatage lorsque l'on signe un document dans le parapheur
delete_document_in_detail Supprimer un document dans la fiche détaillée Il faut passer par une action, ou demander à un administrateur qui a les droits d'adminsitration pour modifier le statut d'un courrier

Tous les privilèges liés au plan de classement, affaire et dossier ont été supprimés car ces 3 fonctionnalités ont été remplacés par une nouvelle fonctionnalité de dossier.
Tous les privilèges liés au thésaurus ont été supprimés, car la fonctionnalité a été intégré dans les mots-clés.

Les privilèges suivants ont été modifiés :

Identifiant privilège Nom du privilège Nouveau comportement
create_tag Permet d'enregistrer à la volée des Mots-clé inexistants dans la base de données Renommer en "Créer des mots-clés depuis les pages d'actions" (manage_tags_application)
reopen_mail Changement de statut de courrier Id modifié en "update_status_mail"
edit_document_in_detail Modifier les métadonnées d'un courrier dans la fiche détaillée Renommé en "Modifier les données d'un courrier. Cela dépendra aussi du paramétrage du statut" (edit_resource)
save_numeric_package Sauvegarder des plis numérique Renommé en "Envoyer et enregistrer des plis numérique" (manage_numeric_package)

Les privilèges suivants ont été supprimés car l'objectif de l'application n'est pas de constituer un annuaire de contacts, mais de répondre à une demande :

  • Tous les contacts (Menu)
  • Rechercher les contacts (Menu)
  • Mes contacts (Menu)

Les privilèges suivants sont supprimés, car obsolète depuis plusieurs versions :

  • display_basket_list
  • show_reports
  • param_templates_doctypes
  • doctype_template_use
  • quicklaunch
  • choose_entity

Modifications des colonnes impactantes dans la base de données

Les colonnes considérées impactantes listées ci-après ont été supprimées de la base de données.

Colonne Table Informations
enabled, origin, create_id, category_id actions supprimés
working_days priorities Jours ouvrés/calendaires est maintenant un paramétrage général de l'application. Voir le paramètre "working_days" dans administration/paramètres
default_priorities priorities Utiliser les modèles d'indexation pour définir la priorité par défaut
title, identifier, source, relation, offset_doc, is_multi_docservers, tablename, validation_date, department_number_id, external_link res_letterbox supprimés
external_signatory_book_id res_letterbox Transféré dans external_id->signatureBookId
updated_by res_attachments modifié en modified_by
subject, description, type_id, destination, priority, initiator res_attachments Supprimés
enabled users transféré dans status. Toutes les valeurs 'Y' présentes dans la colonne seront affiliées à un identifiant 'SPD'
custom_t1, custom_t2, custom_t3 users supprimés

La colonne user_id de la table note est maintenant renseignée par l'id technique du rédacteur.
La colonne typist de la table res_letterbox est maintenant renseignée par l'id technique du rédacteur.

L'ensemble des modifications sql sont visibles dans les scripts sql qui se situent ici : migration/20.03/
Pensez également à modifier les outils externes exploitants ces colonnes, comme Maarch AutoImport par exemple.

Web service

  • Le protocole SOAP a été supprimé.
  • La configuration de MaarchCapture (MaarchWSClient) est entièrement à revoir pour la création d'un courrier ou d'une pièce jointe (Routes /rest/resources et /rest/attachments), la plupart des champs attendus ont changés de noms ou de valeurs attendus.
  • Toutes les routes REST disponibles sont documentées ici.

Voici un résumé des champs qui ont changés de noms :

Création d'un courrier

Ancien champ Nouveau champ
nouveau champ modelId (id du modèle d'enregistrement), ce champ est obligatoire et influe énormément sur le courrier
type_id doctype
category_id La catégorie n'est plus renseignable, elle est liée au modèle choisi
alt_identifier chrono (boolean) : Si true, un numéro chrono est généré automatiquement (Le numéro chrono n'est plus renseignable)
typist typist (ce champ n'utilise plus le login (bbain) mais l'id (2))
destination destination (ce champ n'utilise plus l'identifiant (PJS) mais l'id (5))
initiator initiator (ce champ n'utilise plus l'identifiant (PJS) mais l'id (5))
confidentiality confidentiality (ce champ est maintenant un boolean)
doc_date documentDate
admission_date arrivalDate
departure_date departureDate
process_limit_date processLimitDate

Création d'une pièce jointe

Ancien champ Nouveau champ
identifier chrono : (si vide, il sera généré automatiquement)
res_id_master resIdMaster
attachment_type type

Dans le cas où vous utilisiez des routes SOAP (via MaarchCapture par exemple), voici les nouvelles routes à utiliser :

Protocole SOAP Protocole REST
storeResource (Documents) /rest/resources
storeExtResource La table mlb_coll_ext a été fusionnée avec res_letterbox. Toutes les données doivent ainsi être envoyées dans la route /resources ci-dessus
createContact /rest/contacts
retrieveIdentifier /attachments/{id}
storeResource (attachment) /attachments
retrieveMasterResByChrono /attachmentsInformations

Les Routes REST /rest/res et /rest/resExt ont été supprimées. Elles sont remplacées par une seule route /rest/resources : La documentation est disponible ici
Des routes REST ont également été modifiées :

Ancienne route Nouvelle route
/res/{resIdMaster}/attachments/{resId}/content /attachments/{resId}/content
/res/{resIdMaster}/attachments/{resId}/thumbnail /attachments/{resId}/thumbnail
/rest/res/{resId}/notes /rest/resources/{resId}/notes

La documentation du module MaarchWSClient de MaarchCapture est disponible ici : https://docs.maarch.org/gitbook/html/MaarchCapture/1.0/conf/templates/ws_maarch_courrier.html

Outil externe

L'outil Maarch Capture Connector (MCC), n'est plus compatible à partir de cette version.
Il doit être remplacé par l'outil scanToMaarch. La documentation est disponible sur ce lien

Les éléments suivants seront réintégrés dans des mises à jour mineures

  • Reprise des routes /rest/reconciliation/check et /rest/reconciliation/add

results matching ""

    No results matching ""