Release note

Dynacase Platform 3.2

Anakeen Labs <labs@anakeen.com>

Table des matières

Chapitre 1 Dynacase 3.2

1.1 Préambule

Ce document introduit la version 3.2 de Dynacase Platform.

Il est constitué de trois parties principales :

Un chapitre est dédié à la montée en version. Il indique quels sont les éléments à prendre en compte pour une migration depuis la version 3.1.

Les release de maintenance sont décrites lors de leur sortie, au chapitre Mises à jour de maintenance.

1.2 Présentation

Cette version marque une orientation forte vers l'utilisation de Dynacase comme plateforme de développement.

Par conséquent, elle apporte principalement des mécanismes et solutions destinés à simplifier son intégration et faciliter les développements par la formalisation des éléments de paramétrage, l'amélioration de son API et la fourniture d'une documentation remaniée et complétée.

Elle propose en parallèle de nouvelles fonctionnalités ou des évolutions de fonctionnalités destinées à l'utilisateur final, qu'il soit administrateur, exploitant ou utilisateur d'une application Dynacase.

La version 3.2 de Dynacase a permis de d'asseoir le processus de développement de Dynacase et de stabiliser le produit.

L'ensemble des sources de Dynacase et ses modules sont désormais accessibles sous Github. Cette version propose de nouveaux modules distribués sous licence Anakeen. Cette licence permet aux utilisateurs dans le cadre d'un contrat EEC d'accéder à ces modules.

La documentation relative à Dynacase est centralisée sur le site Documentation Dynacase. Il propose des liens vers la documentation 3.2, mais aussi sur les documents existants pour la version 3.1.

1.3 Fin de support

La version 3.2 est supportée jusqu'au 20 mai 2019.

1.4 Historique des mises à jour

à compter de mars 2018
Changement du mode de release
2 février 2018
release de maintenance #17
06 juillet 2016
release de maintenance #16
29 juin 2016
release de maintenance #15
2 novembre 2015
release de maintenance #14
25 mai 2015
release de maintenance #13
28 janvier 2015
release de maintenance #12
22 octobre 2014
release de maintenance #11
2 septembre 2014
release de maintenance #10
1er juillet 2014
release de maintenance #9
10 avril 2014
release de maintenance #8
24 janvier 2014
release de maintenance #7
16 janvier 2014
release de maintenance #6
21 octobre 2013
release de maintenance #5
30 septembre 2013
release de maintenance #4
21 juillet 2013
release de maintenance #3
14 juin 2013
release de maintenance #2

1.5 Licences et distribution

Les précédentes versions de Dynacase et ses modules étaient distribuées :

D'autre part, les releases de maintenance étaient buildées dès leur disponibilité sur les dépôts EEC. Ce build était différé de quelques mois sur les dépôts publics.

À partir de la version 3.2 de Dynacase, le mode de distribution évolue.

Les version des modules et les releases de maintenance sont publiés simultanément dans les dépôts publics et privés.

Sur les deux dépôts, les modules sont publiés sous licence licence LGPL 3.0.

Les sources sont accessibles via Github.

Ce fonctionnement concerne les modules standards de Dynacase, c'est à dire ceux existant en version 3.1 et conservés en version 3.2.

Les dépôts privés EEC mettent à disposition de nouveaux modules. Ces modules sont distribués sous licence Anakeen. Les sources de ces modules sont accessibles via les dépôts EEC.

Ces nouveaux modules sont :


  1. dépôts utilisable depuis Dynacase Control 

1.6 Quelques chiffres



Le tout en image 15 mois en 42 secondes.



  1. Équivalent Temps Plein 

  2. What Else ? 

1.7 Points majeurs

1.7.1 Administration

Pour simplifier le travail de développement, il a été décidé de séparer les éléments systèmes et d'administration de la partie utilisateur afin de faciliter le travail des développeurs pour la mise en place des interfaces homme-machine des applications produites.

Les familles techniques ou système Dynacase ne sont plus présentées par défaut aux utilisateurs.

Les applications d’administration sont regroupées dans une interface accessible par une URL spécifique.

Le développeur peut rajouter ses propres interfaces d'administration au Centre d'Administration Dynacase.

Centre d'administration Dynacase

Figure 1. Centre d'administration Dynacase

1.7.2 Performance

D'importants travaux d'optimisation ont permis d'améliorer les performances de Dynacase, en particulier pour traitement de listes importantes de document (recherche, affichage, etc.). Les principaux points traités par ces travaux sont :

1.7.3 Normalisation

Un travail de normalisation a été entrepris sur le version 3.2 pour faciliter le travail de développement et de mise au point.

Contrôle des spécifications de famille (importation)
Ceci garantit aux développeurs que les spécifications de familles sont valides et simplifie le travail de mise au point ultérieur
Formalisation de l'API Core
Les méthodes de l'API ont été renommées afin d'être plus explicites et homogènes. Les méthodes obsolètes ont été mises en évidence et les alternatives indiquées. Ces méthodes sont amenées à disparaître dans les futures versions de Dynacase.
Gestions des erreurs
Les erreurs détectées sont journalisées et identifiées par un code unique. Selon leur gravité, une exception peut être déclenchée.
Auto-loader
Les classes PHP sont maintenant inclues lors de l'utilisation des objets.

1.8 Modules EEC

1.8.1 CKEditor Plugins

En complément à CKEditor (éditeur HTML) utilisé dans les documents pour les textes avec mise en forme, ce plugin ajoute une interface utilisateur pour insérer des liens vers d'autres documents Dynacase.

1.8.2 Gestion des Tags

Un mécanisme de marquage (tags) utilisateur des documents est proposé. Il permet à l'utilisateur, selon les droits d'accès au document et la stratégie retenue lors de la conception de l'application Dynacase, de poser un tag en le créant ou en utilisant un existant, et éventuellement de supprimer des tags sur un document. A partir des tags du document, l'utilisateur accède à une interface de recherche permettant de consulter la liste des documents marqués par le tag choisi.

L'administration des tags permet de rapprocher ou de supprimer des tags. Le rapprochement consiste à remplacer deux ou plusieurs tags par un seul. Par exemple pour si les tags 'Qualité' et 'qualite' sont présents sur des documents, l'administrateur peut demander à ce qu'ils soit remplacé par le tag 'qualité' globalement.

Cette fonction est implémentée en deux parties distinctes :

Cette architecture a été retenue pour permettre aux développeurs de mettre en place leurs propres interfaces de gestion des tags.

1.8.3 DocumentGrid

Le module Dynacase DocumentGrid installe un widget jQuery UI1 permettant d'afficher des listes de documents. Cette liste est présenté sous forme d'une grille :

Le développeur paramètre le mode d'alimentation de la grille, les colonnes présentées, les actions proposées et l'intègre dans une page HTML de l'application.

1.8.4 SearchCriteria

Ce widget JQuery UI permet de construire une interface de recherche de document Dynacase en s'appuyant sur les attributs des documents. La collection résultant de l'exécution de la recherche peut être manipulée via le widget DocumentGrid ou toutes autres présentations de liste de documents.

La capture d'écran ci-dessous présente une page combinant l'utilisation des widgets SearchCriteria (partie haute) et DocumentGrid.

SearchCriteria et DocumentGrid combinés

Figure 2. SearchCriteria et DocumentGrid combinés

1.8.5 Dashboard

Ce module apport les mécanismes pour la mise en oeuvre de portail métier via un widget JQueryUI.

Un exemple de portail réalisé avec ce module

Figure 3. Un exemple de portail réalisé avec ce module


  1. les widget sont construits en suivant le pattern widget jQuery UI et se comportent donc comme tel (comportement, présentation, etc.). 

1.9 Organisation des modules

1.9.1 Nouveau modules

Admin*

Ensemble de modules apportant les interfaces d'administration

API HTTP Core

Voir la note de release 13

AppSwitcher

Le module Webdesk mettait en avant deux mécanismes : la barre de changement d'application et le portail utilisateur. Pour rendre modulaire et faciliter l'utilisation de la barre de changement d'application, cette fonction a été retirée du module Webdesk et a donnée naissance au module Dynacase AppSwitcher.

Il propose en plus des anciennes fonctionnalités (changement d'application, déconnexion), l'accès direct pour l'utilisateur au changement de mot de passe.

Bootstrap Installer

Voir la note de release 3.2.4

Backbone Installer

Voir la note de release 3.2.4

CKEditor Plugins

Voir la description du module EEC

Dashboard

Voir la description du module EEC

DocumentGrid

Voir la description du module EEC

Document UI 3.2 R14

Voir la note de release 14

Onefam

L'application ONEFAM a été extraite du module cœur de Dynacase et donne naissance au module Dynacase Onefam. La gestion des recherches et rapports a été reprise. Un tourne-page paramétrable est disponible.

SearchCriteria

Voir la description du module EEC

Tags

Voir la description du module EEC

Themes *

Themes proposé à l'installation (actuellement Blue Sky seulement).

Tipsy Installer

Voir la note de release 3.2.4

Underscore Installer

Voir la note de release 3.2.4

1.9.2 Nouveau module non supportés

Ces modules sont distribués par Anakeen sans support dans le cadre des contrats EEC.

Contacts

L'application Carnet d'adresse et les familles USER/GROUP/SOCIETE ne sont pas utilisées par Dynacase Plateform.

Pour des raisons de compatibilités elles sont maintenant livrées par le module Dynacase Contact.

1.9.3 Modules abandonnés

Les modules suivants ne sont plus disponibles à partir de la version 3.2 de Dynacase Platform :

1.9 Synthèse des modules 3.2

1.9.1 Modules EEC

Ces modules développés par Anakeen, sous Licence Anakeen, sont disponibles sur les dépôts EEC et supportés par Anakeen dans le cadre des contrats EEC.

1.9.2 Modules supportés

Ces modules développés par Anakeen, sous Licence LGPL 3.0, sont supportés par Anakeen dans le cadre des contrats EEC.

1.9.3 Modules non supportés

Ces modules développés et distribués par Anakeen, sous Licence LGPL 3.0.
Anakeen ne les supporte pas, sauf mention contraire dans votre contrat EEC.

1.9.4 Modules tiers (installer)

Ces modules permettent d'installer des logiciels tiers non développés ni maintenus par Anakeen.

1.10 Navigateurs supportés

Ce paragraphe est supprimé. Merci de vous référez au Manuel d'installation et d'exploitation > Pré-requis > Poste client.

Chapitre 2 Mises à jour de maintenance


Ce chapitre recense les différentes release produites dans la cadre de maintenance de la plateforme.

À compter de mars 2018, ces mises à jour sont réalisées par module. Elles sont listées par date ou par module.

Les versions des modules sont marquées en fonction de la criticité des issues, et par conséquent de l'intérêt ou l'urgence de réaliser leurs mise à jour :


Nous préconisons une analyse des notes de release qui doit vous permettre de déterminer si une mise à jour est nécessaire au regard de l'utilisation que vous faites de la plateforme.

Un contrôle du fonctionnement de vos applications doit être effectué suite à une mise à jour avant mise en production.
Les précédentes notes de release de maintenance (3.2 R17 et précédentes) sont disponibles à l'annexe 3

La date de fin de support de la version 3.2 est fixée au 20 mai 2019 (hors accord commercial particulier).

2.1 Par date

22 mai 2019

Liste des modules concernés :

18 février 2019

Liste des modules concernés :

1 août 2018

Liste des modules concernés :

5 mars 2018

Liste des modules concernés :

2.2 Par module

2.2.1 Dynacase Control

Version : 1.5.5

2.2.2 Dynacase Admin DocumentAdmin UI

Version : 3.2.13

2.2.3 Dynacase CKEditor 4 installer

Version : 4.9.2

2.2.4 Dynacase Core

Version : 3.2.26
Version : 3.2.25
Version : 3.2.24

2.2.5 Dynacase Dashboard UI

Version : 1.0.9

2.2.6 Dynacase Document UIs

Version : 1.1.1

2.2.7 Dynacase Fileconnector

Version : 1.1.7

2.2.8 Dynacase HTTPAPI v1

Version : 1.0.5
Version : 1.0.4

2.2.9 Dynacase TEngine Client

Version : 1.0.3

Chapitre 3 Évolutions et changements

Ce chapitre dresse un panorama des évolutions ou changements apportés par la version 3.2.

Bien que pouvant concerner l'utilisateur final (utilisateur de l'application développée à l'aide de Dynacase Platform), l'administrateur ou le développeur, leur description se veut abordable par un public non averti.

Le détail des changement, des impacts sur le développement et la mise en place d'application sont décrits au chapitre suivant Le coin du développeur.

3.1 Administration

Cf. présentation du module

Lors de l'installation de Dynacase, le centre d'administration propose :

Gestion des accessibilités

paramétrage des accès (ACL) aux applications et actions

Gestion des applications

paramétage des applications

Gestion des documents

fonction de gestion du fonds documentaire : minuteurs, profils, modèles de mail, etc.

Gestion des utilisateurs

utilisateurs, groupes et rôles

Gestion du coffre

surveillance et gestion des coffres (vault)

3.2 Rôles

Évolution majeure d'un point de vue fonctionnel, le rôle permet de définir quels sont les utilisateurs pouvant agir.

Pour cela, les paramétrages de familles de document peuvent maintenant utiliser le mot-clé ACCOUNT pour caractériser une relation de type acteur -équivalent à l'ancienne notation DOCID(IUSER)-. Ce mot-clé est complété par la caractérisation du rôle.

Par exemple, si votre attribut rédacteur est de type ACCOUNT(role=chimist), cela signifie que vous avez sur votre document désigné le rédacteur -via l'attribut- et de plus, l'utilisateur fait partie de ceux ayant le rôle chimist.

Un rôle est affecté à un utilisateur. D'un point de vue utilisation, cette affectation est réalisée via une interface similaire à celle utilisée pour ajouter les utilisateurs à un groupe. Il est aussi possible d'ajouter un rôle à un groupe. Cette méthode est un raccourci pour exprimer l'affectation du rôle à tous les utilisateurs du groupe. D'autre part, ce mécanisme est dynamique : les utilisateurs du groupe à un instant t ont le rôle.

A compter de la version 3.2 de Dynacase, nous préconisons l'utilisation des rôles pour l'utilisation des profilages dynamiques. L'utilisation des groupes pour les profilages dynamique est dépréciée.

3.3 Droits et profilages

3.3.1 Droits documentaires : interface et optimisation des algorithmes de calcul

Interface utilisateur

L'interface de consultation des droits calculés sur un document est disponible. Elle permet, depuis un document, de connaître directement les droits appliqués et cela pour un utilisateur. Les droits résultant d'un calcul (profil dynamique en particulier) sont expliqués en fonction du profil associé au document, des rôles de l'utilisateur et tout autre paramétrage intervenant dans le calcul des droits.

Optimisation des algorithmes de calcul

Nous avons revu et optimisé les calculs des droits pour améliorer les performances de Dynacase sur des contextes comportant plusieurs millions de documents et nécessitant des arborescences de groupes complexes.

L'expression de droit «négatif» n'est plus supportée.

Ces optimisations utilisent de manière optimale les mécanismes PostgreSQL 9. Le fonctionnement avec la version 8.4 reste possible.

3.3.2 Droits Applicatifs

Les interfaces de gestion des droits applicatifs ont été améliorée pour faciliter l'accès par utilisateur, groupe et rôle.

3.4 Titulaires et suppléants

Un utilisateur peut agir sur une application Dynacase et ses documents. Ceci est contrôlé par des droits applicatifs (ACL) et des droits documentaires (Profils et privilèges).

Lorsqu'un suppléant est désigné pour cet utilisateur (le titulaire), il peut agir comme le titulaire lui même. Dynacase lui octroie les mêmes droits applicatifs et documentaires.

La désignation du suppléant est gérée par des droits applicatifs (ACL) :

En désignant son suppléant, l'utilisateur lui transmet seulement ses droit, et non pas ceux qu'il acquiert en étant désigné suppléant d'un tiers.

Par exemple, Martin désigne comme suppléant Éric. Éric peut donc agir comme Martin. Éric désigne Paul comme son suppléant. Paul agit donc en lieu et place d'Éric mais ne peut pas agir comme Martin.

3.5 Connexion utilisateurs

3.5.1 Sécurité et login

Afin de sécuriser les accès à Dynacase lorsqu'il est lui même utilisé comme backend d'authentification, les mots de passe sont maintenant cryptés avec l'algorithme SSHA256 (Salted SHA 256 bits).

Des contraintes de saisie du mot de passe peuvent être imposées à l'utilisateur ( longueur, caractères utilisés, etc...). Ce mécanisme est disponible quel que soit le backend d'authentification.

Il est maintenant possible de modifier le login d'un utilisateur.

3.5.2 Accès anonyme et authentification

Un nouveau mécanisme permet de gérer la demande d'authentification de manière dynamique.

Tant que l'utilisateur non authentifié déclenche des actions ne nécessitant pas d'ACL (ou avec ACL donnant l'accès à Anonymous) les pages sont affichées. Par contre dès qu'une action est liée à une ACL ne permettant pas l'accès anonyme, l'utilisateur est redirigé vers la bannière d'authentification. Après que l'utilisateur se soit signé, l'action est exécutée (les contrôles d'accès par ACL sont toujours réalisés).

De manière similaire, lors de l'accès anonyme à un document invalidé par le profil, l'utilisateur est redirigé vers la bannière d'authentification.

3.6 Support de PostgreSQL & PHP

Ce paragraphe est supprimé. Les supports de PostgreSQL et PHP sont décrits dans le Manuel d'installation et d'exploitation, respectivement aux chapitres :

3.7 Importation

3.7.1 Structure : famille, cycle de vie, profil, etc...

L'objectif de cette évolution est de faciliter le paramétrage de Dynacase.

​Jusqu'à la version 3.1 de Dynacase Platform, il était possible d'importer des paramétrages comportant des erreurs ou incohérences. Dynacase ne les signalant pas, ces paramétrages pouvaient générer des dysfonctionnements ou tout au moins des fonctionnements inattendus.

Pour éviter cela nous avons rendu plus rigoureux les contrôles réalisés lors de l'importation de paramétrage. Dynacase demande à ce que les paramétrages soient conformes.

Lors de l'importation de fichier ODS de paramétrage, si une anomalie est constatée dans le paramétrage elle est signalée et l'importation n'est pas faite. Chaque erreur est indiquée par un code unique la catégorisant. Ces codes seront définis et détaillés en ligne sur la documentation de l'API Dynacase.

3.7.2 Contenu : documents

Lors des importations en masse par CSV, il est maintenant possible d'ajouter des colonnes supplémentaires à celle obligatoires (famille, attributs, etc...). Les valeurs de ces colonnes sont accessibles et utilisables dans les méthodes du document déclenchées lors de l'import (post et pre-import).

Par exemple, si vous souhaitez initialiser des documents créés dans un état précis du cycle de la famille, il suffit de rajouter colonne 'état' dans le CSV d'import et dans la méthode de post import positionner l'état du document à la valeur fournie.

3.8 Cycles de vie documentaires

3.8.1 Nouveau hook

Les cycles de vie Dynacase ont évolués pour introduire de nouveau hook (hameçon) pour déclencher des traitements lors de changement d'état. Pour mémoire, il existe le m1 et m2 respectivement appelés avant et après le changement d'état.

Les m0 et m3 ont été ajoutée, ils permettent :

3.8.2 Nombre de transitions

Le nombre de transitions et d'états étaient limités à 20. Cette limite passe à 200.

3.8.3 Interface utilisateur

Pour simplifier l'utilisation des cycles de vie et améliorer l'expérience utilisateur, une modification de l'interface pour le pilotage des workflows :

3.9 Le document

La présentation du document a été améliorée.

En édition, les valeurs modifiables via des aides à la saisie sont présentées maintenant avec un style dédié pour éviter les possibles confusions avec des attributs en lecture seule.

Et surtout, en consultation, le titre du document est un hyperlien vers lui-même. Ceci permet deux choses :

3.10 Historique

La présentation de l'historique du document est modernisée. Elle permet une meilleure visualisation de l'historique du document.

L'accès à l'historique du document est désormais contrôlé par l'ACL HISTO. Par défaut, le fonctionnement reste identique à l'actuel : l'ACL est positionnée et l'utilisateur peut consulter l'historique du document.

3.11 Interface de paramétrage des familles et application

Il est maintenant possible de créer simplement des interface au moyen de zones pour accéder (consultation et modification) aux paramètres des familles et applications.

Cette évolution permet de simplifier l'accès aux paramètres jusqu'à là accessible via la famille ou l'interface générale des paramètres applicatifs, en les intégrant dans des pages conçues en réponse à des besoins fonctionnels.

Le développeur utilise des zones spécifiques qui peuvent être incluses dans des actions ou zones en indiquant quel paramètre est proposé.

3.12 Menus de l'application générique ONEFAM

La barre de menu, présente au dessus de la liste des documents, peut être personnalisée :

Cette personnalisation est paramétrable par instance de ONEFAM et par famille. Il est donc possible de proposer des menus différents pour une même famille en fonction de l'application ONEFAM dans laquelle elle est présentée.

3.13 Attributs HTMLTEXT

Une version récente de CKEditor est intégrée. Cette version permet d'intégrer plus simplement des plugins à l'éditeur HTML.

3.14 Recherches

3.14.1 Familles visibles pour l'utilisateur dans les recherches

Via les interface de recherche standards (simple, détaillée, rapport et recherche générale), l'utilisateur ne peut que sélectionner les familles fonctionnelles. Par défaut, les familles techniques Dynacase (Rapport, Mailtemplate, etc...) livrées avec Platform sont marquées 'système'. Seul un droit permet de les utiliser dans les recherches (droit alloué aux utilisateurs administrateurs par défaut). Par paramétrage, il est possible d'indiquer si une famille est système ou pas.

3.14.2 Attributs utilisés dans les recherches

Le paramétrage permet de préciser le comportement des recherches accessibles par l'interface standard (simple, détaillée et générale) vis à vis des attributs. Un attribut peut :

3.14.3 Critère des recherches détaillées

Les critères dynamiques proposées à l'utilisateur dans le cadre des recherches détaillées sont présentés sont implémentés par des méthodes de document (getDate(), getUserId(), etc.). La liste de ces méthodes peut-être augmenté par celles définies lors du paramétrage. Les méthodes proposées sont annotées (commentaire) de manière particulière de sorte que par introspection du code Dynacase puisse les identifier et les proposer à l'utilisateur comme critère de recherche.

3.14.4 Aide

L'aide à la recherche a été modifiée pour être plus précise pour l'utilisateur. Jusqu'alors accessible depuis la recherche générale, elle est maintenant présente sur la recherche proposée dans l'application Onefam.

3.15 Modification par lot

La modification par lot permet de traiter de manière performante une liste de documents pour traiter (modification de valeur, suppression de valeur, etc...) un attribut de manière identique sur tous les documents de la liste.

Des options permettent de préciser le comportement : création d'une révision des documents, traitement transactionnel, historisation, etc.

Ce mécanisme est proposé au travers de la classe technique UpdateAttribute.

3.16 Attribut DOCID : matérialisation des relations

Actuellement une relation (attribut de type docid) est représentée par un hyperlien permettant d'accéder au document cible.

Ce lien est présent y compris si le document cible n'est pas accessible pour l'utilisateur consultant le document source. L'utilisateur pouvait donc voir le titre de la relation (titre du document pour lequel il n'a pas le droit de consultation) et cliquer sur le lien qui l'amenait vers une page d'erreur lui indiquant qu'il n'avait pas le droit de consulter le document.

Sur cette nouvelle version, si l'utilisateur n'a pas accès au document cible, au lieu du titre est affiché le libellé Information non disponible. Ce libellé n'est pas cliquable.

Une option permet de paramétrer le libellé présenté à l'utilisateur si la cible n'est pas consultable.

3.17 Portail (application WEBDESK)

Cette application a subie de profonds remaniements.

La barre de menu supérieure offrant en particulier le menu de changement d'application et le bouton de déconnexion peut maintenant être utilisée indépendemment de la page d'affichage des services RSS.

La barre de menu est fournie par le module AppSwitcher. Son apparence a été modernisée (utilisation de JQuery et JQuery UI).

L'ancien module Webdesk ne propose plus que la page d'affichage des RSS (services). Les Services ont été isolés dans un nouveau module WebDesk Services. Leur installation n'est plus nécessaire, et seul seront disponibles les services mis en oeuvre dans le cadre du développement d'une application.

3.18 Paramétrage des familles

3.18.1 Valeur des paramètres

Il est maintenant possible d'affecter la valeur (statique) d'un paramètre de famille lors de son importation (création). Pour cela le mot clé INITIAL a été introduit.

Les options force=yes dans le fichier de déclaration ou l'option –reinitattr=yes en mode de commande permettent de forcer l'affectation de la valeur lors d'un import en mise à jour.

3.18.2 Valeurs par défaut des attributs array

La directive DEFAULT est maintenant utilisable pour les tableaux.

3.19 Autres

Thèmes
Les mécanismes de gestion des thèmes ont évolués. Le développeur peut maintenant installer des éléments de thèmes (CSS, Images) et indiquer comment ils sont appliqués.
Supervision
L'ancienne page d'accès aux outils d'analyse Dynacase est maintenant accessible par l'URL <...URLDynacase...>/supervisor/.
Traduction
Amélioration des traductions en anglais.

Chapitre 4 Le coin du développeur

Cette partie présente la version 3.2 du point de vue du développeur.

Cette version 3.2 est l'aboutissement d'une forte démarche d'amélioration de la robustesse et des performances, au travers de plusieurs axes :

Chacun des changements majeur est présenté dans cette partie. Pour avoir le détail de chaque fonctionnalité, il est recommandé de se référer à la partie correspondante du manuel de référence.

4.1 Pré-requis de fonctionnement

4.1.1 php

4.1.1.1 Versions supportées

Cf. Support de PostgreSQL & PHP

4.1.1.2 Modules

le module suhosin doit être désactivé. Le module apache "header" doit être activé.

4.1.1.3 Configuration

les magic quotes doivent être désactivées.

4.1.2 Postgresql

Cf. Support de PostgreSQL & PHP

4.1.3 Autres prérequis système

La commande ldapdelete n'est plus nécessaire.

Les dictionnaires français et anglais, respectivement aspell-fr et aspell-en, utilisés par php-spell doivent être installés. Leur présence est controlée lors de l'installation.

4.2 Modification au niveau des utilisateur, groupes et rôles

4.2.1 Utilisateur

Les mots de passes sont maintenant cryptés au format SHA256.

Des paramètres pour exiger des mots de passes "fort" ont été ajoutés (nombre minimum de lettre, nombre de chiffre, ...)

Lors d'un changement de mot de passe d'un utilisateur par l'administrateur toutes les sessions de l'utilisateur sont invalidées. Il doit se reconnecter avec le nouveau mot de passe.

La notion de "suppléant" a été ajouté. Le suppléant désigné reçoit tous les droits du responsable. Il peut ainsi réaliser le même travail que le responsable.

Le login d'un utilisateur est maintenant modifiable par l'administrateur. Il peut aussi maintenant contenir des caractères spéciaux et des espaces.

La classe Account remplace la classe User. Elle s'occupe de la gestion système des utilisateurs, groupes et rôles.

La famille IUSER (Utilisateur) n'est plus dérivée de USER (Personne). Elle n'a plus les attributs comme le téléphone. La famille IUSER ne conserve que les attributs systèmes nécessaire à l'établissement d'un compte (login, password, mail, firstname et lastname).

L'interface d'envoi de document par courriel s'appuyait sur la famille "personne" pour choisir les destinataires. Maintenant, elle recherche toutes les familles qui ont le tag MAILRECIPIENT pour produire la liste des destinataires possibles. Ces familles doivent implémenter l'interface IMailRecipient. Par défaut la famille IUSER n'a pas ce tag mais implémente l'interface. Il suffit d'ajouter le tag par paramétrage pour avoir les utilisateurs comme destinataire de mail dans l'interface d'envoi de documents.

4.2.2 Groupes

Le terme login a été remplacé par identifiant.

4.2.3 Rôles

La notion de "rôle" a été ajoutée. Elle permet de définir plus facilement les règles de sécurités sans s'occuper a priori des groupes existants dans la société.

4.2.4 SearchAccount

Une classe de recherche de comptes SearchAccount (utilisateur, rôles et groupes) a été ajoutée afin de faciliter la recherche de compte : recherche dans les groupes, recherche d'utilisateurs ayant un rôle donné par exemple.

4.3 Modifications de code

4.3.1 La classe Application

La classe application a connu quelques évolutions mineures :

4.3.2 La classe ApplicationParameterManager

Une nouvelle classe a été introduite : ApplicationParameterManager. Comme son nom l'indique cette classe est dédiée à la manipulation des paramètres applicatifs. Elle permet de manipuler notamment :

4.3.3 Classe SearchDoc

4.3.3.1 generalFilter

Une nouvelle méthode addGeneralFilter a été ajoutée à la classe SearchDoc afin de permettre de générer un filtre directement à partir d'une saisie utilisateur. Il est également possible de spécifier des critères de pertinence.

4.3.3.2 FormatCollection

Une nouvelle classe permet de gérer la mise en forme de collections de documents : FormatCollection. Cette classe est utilisée comme backend pour l'export des rapports et l'alimentation des grilles de documents (datatable).

4.3.4 Dossiers

Le hook preInsertMultipleDocuments a été ajouté sur la famille Dir.

4.4 Modifications d'IHM

4.4.1 Familles et documents

Les messages affichés à l'aide de la fonction addWarningMsg sont affichés maintenant à l'aide d'un fenêtre de dialogue jquery-ui.

Sur les interfaces de consultation des documents, les liens vers les documents liés (les relations) n'affichent plus le titre de la cible si l'utilisateur n'a pas accès en lecture à la cible.

L'interface de consultation de l'historique a été refaite en montrant de manière plus explicite la révision courante et les révisions passées du document.

4.4.2 Vues et représentations

4.4.2.1 Vues OpenDocument Text

La génération d'une vue odt lève maintenant des erreurs plus compréhensibles. Ces erreurs passent par une exception, qui peut être catchée pour analyse du fichier corrompu.

4.4.2.2 vues spécialisées avec contrôleur

La méthode associée à une vue doit obligatoirement porter le commentaire @templateController. Dans le cas contraire, son exécution sera interdite. cela permet de se prémunir d'une faille permettant l'exécution arbitraire de code.

4.4.2.3 pied de document

Les documents sont maintenant découpés en 3 zones :

Il est possible d'ajouter des zones personnalisées dans le footer.

4.4.3 Nouvelles IHM d'administration

Les interfaces spécifiques à l'administration de Dynacase platform ont été isolées pour

Cette isolation passe maintenant par un index spécifique (admin.php).

Au cours de cette migration, les interfaces ont été modernisées, notamment grâce à l'inclusion de jQuery et jQuery UI.

Les modules concernés sont :

Enfin, il est à noter que vous pouvez dorénavant intégrer de nouvelles interfaces d'administration, spécifiques à votre projet, à ce nouvel index.

Pour plus de précisions, vous pouvez vous reporter à la documentation des modules dynacase-admin-ui*

4.4.4 Traduction

L'ensemble des interfaces et des familles ont été entièrement traduites en français et en anglais. Que ce soit du coté utilisateur, administrateur, ou encore développeur, tout s'accorde à la locale choisie lors de l'authentification.

De plus, les libellés des vues dans les contrôle de vue sont devenus traduisibles.

4.4.5 Intégration de jQuery et de jQuery UI

jQuery et jQuery UI sont dorénavant chargés dans la page d'un document, que ce soit en consultation ou en modification.

Cela permet notamment à dynacase d'utiliser des overlays pour l'affichage

4.4.6 Gestion des styles

Un nouveau mécanisme de gestion des styles a été mis en place. Le style est maintenant global et n'est plus personnalisable par utilisateur. le nouveau mécanisme permet en outre d'indiquer des règles définissant quand et comment sont générés les fichiers CSS.

Enfin, le style MODERN a été mis à jour pour respecter ce nouveau mécanisme.

4.5 Modifications dans le paramétrage

4.5.1 Importation des familles, profils et cycles

Les vérifications sur la conformités des fichiers de description des familles ont été fortement améliorées (plus de 300 points de contrôles).

Chaque erreur d'importation est identifiée par un code unique qui permet d'identifier de manière non ambiguë l'origine de l'erreur. La liste des code est fournie dans la documentation de l'API.

De même tous les éléments de paramétrage indiqués dans les fichiers d'importation sont soumis à des contrôles de conformité.

Si un seul point de contrôle indique une erreur, l'importation de la famille est abandonnée.

De nombreux contrôles ont aussi été ajoutés sur l'importation des profils et des cycles de vie.

4.5.1.1 Valeurs par défaut

Le mot-clef d'importation INITIAL a été ajouté afin d'indiquer une valeur initiale à un paramètre de famille qui est différent de la valeur par défaut qui elle, indique la valeur a utiliser lorsque la valeur du paramètre est vide.

Le mot-clef RESET peut prendre les nouvelles valeurs suivantes

Le mot-clef DEFAULT pour les éléments de tableaux indique maintenant la valeur par défaut d'une nouvelle rangée et non du tableau en général. Pour remplir un tableau par défaut, il faut maintenant indiquer le DEFAULT sur l'attribut tableau.

4.5.1.2 Nouveau type d'attribut

Le type d'attribut account a été ajouté afin de différencier les liens vers les comptes et les liens vers les documents généraux. Le type 'account' est équivalent à docid("IUSER") avec l'option isuser=yes pré-définie. Des options spécifiques sur ce nouveau type sont aussi disponibles.

4.5.1.3 Nouvelles options d'attributs

4.5.1.4 Modification des liens

Dans la déclaration des hyperliens (colonne link), des parties variables optionnelles peuvent être déclarées. Auparavant, si une partie variable avait une valeur vide le lien n'était pas affiché.

4.5.1.5 Document système

La plupart des familles livrées par dynacase-core sont déclarées systèmes. Ces familles ne sont pas présentées par défaut dans les interfaces de recherches. Pour déclarer une famille "système" il faut mettre la clef USEFOR;S dans les déclarations de familles.

4.5.1.6 Exposition des méthodes

Les méthodes qui peuvent être utilisées directement via un menu doivent être taguées avec le mot-clef @apiExpose dans son commentaire associée. Ceci permet d'éviter l'accès à toute méthode du document à partir de la définition d'un menu. Une méthode non exposée ne peut plus être appelable directement depuis un menu.

4.5.2 Paramétrage et importation des cycles de vie

La notion d'étape a été introduite. Une étape correspond à un état et, le cas échéant, une activité. Le graphe de workflow a également été revu en conséquence.

Le nombre de transitions sur les cycles de vie a été porté de 20 à environ 200 (le mode de calcul de cette limite étant complexe, vous pouvez vous reporter au manuel de référence pour une valeur plus précise).

Les transitions bénéficient maintenant des hooks m0 (déclenché à l'affichage de la transition) et m3 (déclenché à la toute fin de la transition).

Enfin, les propriétés nosave, autonext et viewlist ne sont plus utilisables. Il n'est notamment plus possible de changer d'état depuis le mode modification.

4.5.3 Importation et exportation de documents

4.5.3.1 Importation de documents

Le script wsh importDocuments doit être utilisé pour l'importation de documents. Il remplace le script obsolète freedom_import qui est déprécié.

Le code d'importation a été remodelé et la nouvelle classe ImportDocument est en charge de l'importation. Elle peut être utilisée pour des besoins spécifiques d'importation de documents.

La vérification de l'importation de documents a été renforcée. Si une erreur est détectée dans le fichier d'importation, aucun des documents de ce fichier ne sera importé.

Il est possible de rajouter des données supplémentaires lors de l'importation afin de réaliser des traitement spécifique en fonction de ces données dans les hameçons de preImport et postImport.

En ce qui concerne l'importation XML, l'attribut optionnel folder a été ajouté afin de spécifier le dossier dans lequel le document doit être inséré après son importation.

4.5.3.2 Exportation de documents

L'exportation de document a été optimisé pour exporter des volumes plus importants de documents. L'exportation par l'IHM indique maintenant l'état de l'avancement de l'exportation.

4.5.4 Actions et zone de référence

Une interface de modification du mot de passe de l'utilisateur est disponible. Elle est utilisée par les modules dynacase-appswitcher et dynacase-admin.

De nouvelles zones FDL:EDITAPPLICATIONPARAMETER et FDL:EDITFAMILYPARAMTER permettent de réaliser des interfaces d'administration dont le but est de modifier les paramètres de familles ainsi que les paramètres applicatifs.

Le nouveau mot-clef [CSS:CUSTOMREF] permet d'indiquer dans les layout html qu'on ne souhaite pas inclure automatiquement les css systèmes à la différence de [CSS:REF] qui inclus les css systèmes liées au style.

La fenêtre de login HTML a été refaite. En cas de personnalisation de cette fenêtre il faut ajouter un nouveau champ du formulaire HTML permettant la redirection d'url.

L'url de déconnexion a été modifiée : ?authent.php?app=AUTHENT&action=LOGINFORM

Les algorithmes de recherches sur la recherche générale et sur ONEFAM sont basées sur la même interprétation des mots à chercher. Cette interprétation privilégie la recherche de mot entier. Des aides sur la recherche générale (FGSEARCH) et dans ONEFAM ont été ajoutées.

4.5.5 Liens vers les documents dans un mail

Il est possible de paramétrer de lien généré dans les mails émis via Dynacase (modèles de mail et envoi de documents) pour réaliser un traitement sécifique.

Exemple
Si le paramètre CORE_MAILACTION est valorisé avec http://www.example.net/dynacase/?app=MY_APP&action=MY_ACTION, l'URL dans le mail sera http://www.example.net/dynacase/?app=MY_APP&action=MY_ACTION&id=<id document>&....

4.5.6 Date au format ISO

La version 3.1 préconisait le stockage de date au format ISO (paramétrage du datestyle en BDD).

Le format ISO pour les dates est rendu obligatoire à partir de la version 3.2.

4.5.6.1 Format interne et manipulation des dates

Les dates sont stockées au format ISO complete date : YYYY-MM-DD1.

La manipulation des dates, lecture et écriture des valeurs d'attributs, est faite par les méthodes Doc::getRawValue() et Doc::setValue() :

4.5.6.2 Importation des familles

Les déclarations de familles (CSV ou ODS) doivent obligatoirement contenir des dates au format ISO (valeurs par défaut, paramètres, etc.).

4.5.6.3 Importation de documents

Les valeurs des attributs de type date sont notés au format ISO.

Bien que le format ISO soient fortement recommandé, il reste possible d'importer des documents pour lesquels les dates sont fournies dans le format de la locale de l'utilisateur réalisant l'import.


  1. par exemple, 2013-04-29 pour le 29 avril 2013 

  2. Cette locale doit être déclarée et paramétrée via le fichier lang.php 

4.6 Modifications dans les familles système

4.6.1 Contrôles de vues

Les libellés des contrôles de vue sont maintenant traduisibles.

De plus, ils sont affichés tels que saisis (Dynacase ne les préfixe plus par modifier ou par voir).

Enfin, lorsque la première vue de modification accessible à l'utilisateur est affichable, alors le menu modifier n'est plus affiché et le libellé de la vue concernée est affichée à sa place.

4.6.2 Modèles de mail

Il est maintenant possible de choisir comme destinataire un groupe désigné par un paramètre de famille, ou encore de manière statique.

4.6.3 Minuteurs

Les minuteurs dynamiques ont été revus pour offrir davantage de souplesse : il est maintenant possible de définir un décalage entre la date de référence du minuteur, et la date de calcul de la première exécution, simplifiant le paramétrage des cas tels que : « envoyer un mail 2 semaines avant la date de revue ».

4.6.4 Les recherches

Les familles "système" (USEFOR;S) ne sont plus cherchées par défaut. Une option sur l'interface de recherche permet de rechercher aussi dans ces documents si l'utilisateur a l'autorisation.

Les recherches prennent en compte l'option d'attribut searchCriteria.

4.6.4.1 Recherches détaillées

Il est possible de créer des méthodes particulières qui permettent d'être utilisées comme critère de filtre. Par exemple la méthode "demain()" ou la méthode "plafondMensuel()" qui sont dépendantes de la famille recherchée. L'utilisateur peut ainsi construire une recherche "les documents dont la date de publication est demain".

4.6.4.2 Les rapports

Les attributs "triable" sont liés à l'option sortable. Par défaut les attributs ne sont plus triables.

Les attributs docid et account peuvent être présentés avec leur identifiant (nombre) ou leur titre. L'utilisateur a le choix de la représentation lors de la constitution du rapport.

Les propriétés triables sont titre, date de modification, date de création. Ceci est modifiable par famille avec le mot-clef PROP.

L'exportation CSV des rapports a été optimisée pour exporter plus rapidement de nombreux documents. Un indicateur d'avancement est maintenant visible lors de la constitution du fichier d'exportation.

4.7 Autres modifications

4.7.1 Aides à la saisie

Les aides à la saisies par défaut sur les types docid ne sont plus sensibles aux accents (ceci est aussi valable pour le type account).

Il est possible de retourner des valeurs dans les aides à la saisie pour les docid multiple et les enum multiple.

4.7.2 Authentification

Un nouveau paramètre applicatif permet d'autoriser/refuser l'accès en mode anonyme (accès à "guest.php").

Le mode anonyme n'est plus utilisé pour la bannière d'authentification. C'est l'application AUTHENT via son script authent.php qui a en charge l'authentification.

Un nouveau paramétrage permet d'autoriser le mode anonyme dans les parties accessibles et permet le basculement en mode authentifié lorsque l'utilisateur demande l'accès à des parties soumise à authentification. Ceci n'impose pas à l'utilisateur de s'authentifier tant qu'il reste dans des parties publiques.

Les variables de session d'authentification et de paramétrage ont été fusionnées. Un seul cookie dcpSession est maintenant utilisé pour l'authentification.

La page d'authentification HTML a été refaite.

4.7.3 Sécurité et profils

4.7.3.1 Droits des documents

L'algorithme de calcul des droits documentaire a été refait. Les performances liés aux calculs des droits dynamiques sont maintenant équivalentes à ceux des droits statiques.

Les droits négatifs sur les documents ne sont plus pris en compte et ne sont plus autorisés.

Les profils de documents prennent en compte les rôles définis par la gestion des utilisateurs.

Les interfaces de présentation détaillées des droits indiquent l'origine des droits obtenus.

Les codes couleurs indiqués dans les interfaces de profils ont été changés pour les utilisateurs et une légende indiquant les correspondances est maintenant disponible.

Les attributs de type docid liés au profil dynamique doivent avoir l'option isuser=yes pour être pris en compte. Les attributs de type account ont par défaut l'option isuser=yes et sont pris compte pour les profils dynamiques.

4.7.3.2 Acl applicatives

Le droit HISTO sur l'application FDL a été ajouté afin d'indiquer l'accès aux historiques des documents de manière globale. Par défaut les utilisateurs n'ont plus accès à l'historique.

4.7.4 Modification de masse

Une nouvelle classe a été mise à disposition : UpdateAttribute. Cette classe permet de mettre à jour un volume important de documents sans devoir itérer sur les documents en question. Cette approche répond à des besoins très spécifique et permet de tenir compte des problématiques de révision, commentaires d'historique, profils, etc.

4.8 Éléments dépréciés

4.8.1 Type d'attribut de document

Le type d'attribut float est déprécié au profit de double

Le type d'attribut integer est déprécié au profit de int

4.8.2 Propriétés de l'application

Suppression des propriétés non utilisées depuis la version 2

4.8.3 Paramètre de log niveau deprecated

Le paramètre CORE_LOGLEVEL s'il est mis à 'O' (O comme Obsolète) logue l'accès aux méthodes dépréciées dans le fichier de log. Par défaut, il n'est pas activé.

4.8.4 Méthode et hameçons des documents

De nombreux hameçons (hook) sur le document ont été renommés (specRefresh devient preRefresh() par exemple. La compatibilité avec les anciens nommages est assurée par la version 3.2, mais sera progressivement supprimée dans les versions suivantes.

De même de nombreuses méthodes du document sont dépréciées (par exemple Doc::getValue) La liste des deprecated, avec leur méthode de remplacement est disponible sur le site Documentation de l'api.

Un script est mis à disposition, il permet aux développeurs de parser leur code pour détecter ces obsolescences.

4.8.5 Api wsh

les scripts

4.8.6 Utilisateurs

La famille IUSER (Utilisateur) ne dérive plus de USER (Personne). Lors d'une migration les attributs issus de personne sont gardés si des documents ont des valeurs sur ces attributs. Sinon tous les attributs de "personne" qui ne sont pas utilisés dans les documents "utilisateur" sont enlevés.

Le module dynacase-contacts fournit la famille USER.

4.8.7 API wsh importDocument

L'option --reinitattr=yes est dépréciée.
Elle est remplacée par l'option --reset=attributes.
Pour plus de précision, reportez vous au chapitre Importation et exportation de documents du manuel de référence.

4.9 Exploitation

4.9.1 Page supervisor

La page de contrôle du bon fonctionnement de Dynacase (anciennement /admin/index.html) a été déplacée vers /supervisor/index.html.

4.9.2 Gestion des logs

La classe Log a été mise à jour.

Les exécutions périodiques (cron et minuteurs) font maintenant l'objet d'une entrée dans les logs.

4.9.3 Répertoires de travail

Les répertoires de travail sont maintenant gérés sous l'arborescence du serveur. Ils sont sous le répertoire var. cela concerne :

4.9.4 Autres modifications de répertoires

4.9.5 Mots de passe

Les mots de passe sont maintenant cryptés en SHA-256.

4.10 Évolutions des modules complémentaires

Cette partie liste les évolutions étant intervenue dans les modules complémentaires

4.10.1 ONEFAM

4.10.1.1 Introduction

ONEFAM est maintenant devenu un module de Dynacase. L'essentiel de l'application et de son fonctionnement n'évolue pas mais il faut maintenant faire la démarche d'installer ONEFAM et il n'est plus installé par défaut.

4.10.1.2 Évolution

Les points suivants ont été modifiés :

4.10.2 Module dynacase-fileconnector

Ajout d'une option pour faire une connexion ftp passive lors de la récupération des fichiers à intégrer.

4.11 Scripts API (WSH)

4.11.1 Utilisation de actionUsage et ApiUsage

La mise à jour des ApiUsage / ActionUsage implique que les arguments multiples ne sont plus acceptés.

Pour utiliser des arguments multiples, il faut les signaler comme tel au moyen du troisième paramètre addRequired, qui peut être :

La méthode statique ApiUsage::isArray peut être utilisée pour vérifier que la valeur est multiple. Dans le cas où la vérification est plus complexe, il est nécessaire d'écrire sa propre fonction.

Chapitre 5 Migration

5.1 Session

Les variables de session d'authentification et de paramétrage ont été fusionnées.
L'appel à $action->parent>session->close() entraîne maintenant une déconnexion.

Le nom du cookie de session est maintenant dcpsession au lieu de freedom_auth et freedom_param Le nom du cookie de session n'est plus configurable dans les paramètres d'authentification.

5.2 Wsh

Le paramètre max_execution_time de PHP est maintenant mis à 0 pour le script wsh (pas de temps minimum).

5.3 DEFAULT et tableau

Dans les fichiers de description de famille, le mot-clef DEFAULT sur les éléments de tableau ne concerne que les valeurs par défaut des nouvelles lignes et non plus celles du tableau dans sa globalité.

5.4 Sécurité

Le droit HISTO sur l'application FDL a été ajouté afin d'indiquer l'accès aux historiques des documents de manière globale. Par défaut les utilisateurs n'ont plus accès à l'historique.

Les droits négatifs dans les profils de documents ne sont plus autorisés.

5.5 Vue de document

Les contrôleurs de vue de document (méthode) doivent être marqués avec @templateController pour être autorisé à servir de contrôleur.

Dans le mode édition de document, les attributs docid ne sont plus grisé lorsqu'il sont remplis mais reste non modifiable. L'utilisateur est incité à utiliser le bouton 'x' pour modifier sa valeur.

5.6 Libellé des menus

Les libellés des menus ajoutés sur le document sont maintenant affichés tels qu'ils sont définis dans le fichier de description. La première lettre n'est plus transformée en majuscule.

5.7 Renommage et découpage des modules

Les modules renommés sont :

Le nouveau module dynacase-appswitcher remplace la barre principale d'applications.

Lors d'une migration en plus de mettre à jour dynacase-core, il faut installer les différentes parties découpées afin de bénéficier des mêmes fonctions.

5.8 Application au démarrage

L'application WEBDESK n'est plus nécessaire à l'installation de dynacase-core. Le paramètre CORE_START_APP vaut maintenant CORE sur une installation. Si dynacase-appswitcher est installé et que le paramètre vaut toujours CORE alors il est changé en APPSWITCHER.

5.9 Format de date ISO

Le format ISO pour les dates étant obligatoire en version 3.2, il devient nécessaire de mettre à jour :

La procédure fournie en annexe permet de migrer les bases installées -SQL DMY, version de Dynacase Core < 3.2.8-.

Annexe A1 Bibliographie

Documentation
Centre documentaire Dynacase
Documentation Dynacase 3.2
Documentation Dynacase 3.1
Dépôts
Dépôts publics Dynacase Dépôts EEC Dynacase authentification requise
Sources
Hébergement des sources, organisation Anakeen sur Github
Licences
Licence Anakeen
Support
Support Anakeen authentification requise
Tracker
Tracker Dynacase
Sites
Site Dynacase Site Anakeen

Annexe A2 Procédure de migration dates ISO

A2.1 Objectif

Cette procédure décrit comment migrer une base de données stockant les dates au format DMY (français) vers le format ISO, seul supporté par Dynacase 3.2.

Les valeurs des attributs date timestamp, les valeurs par défaut et les valeurs de paramètre de famille sont modifiées.

A2.2 Applicabilité

A2.3 Procédure

Nous préconisons une sauvegarde de la base de données au préalable.

Plus de détail : <racine du contexte>/wsh.php --api=migrDates2iso --help


  1. vérifiable avec la commande SQL SHOW DATESTYLE ou via l'interface WEB de Supervision http://...votre serveur.../supervisor/service.d/DynacaseConsistency/checklist.php. 

  2. lors de la mise à jour de Dynacase Core avec une version 3.2.8 ou supérieure cette migration est effectuée automatiquement. 

Annexe A3 Précédentes releases de maintenance

A3.1 Release 17

A3.1.1 Support de la version 3.2

La date de fin de support de la version 3.2 est fixée au 20 mai 2019 (hors accord commercial particulier).

Fin de support

A3.1.2 Changement de mode de distribution des mise à jour.

Actuellement, Dynacase est releasé globalement : l'ensemble des modules composant la plateforme sont mis à jour.

Pour améliorer la réactivité, les modules seront maintenant distribués indépendamment selon un rythme liés à leurs éventuelles anomalies.

A3.1.3 Note de release

Cette release fournit une nouvelle version des modules principaux dynacase-core, dynacase-http-api-v1 et dynacase-document-uis.

Elle fournit également des mises à jour pour la plupart des bibliothèques additionnelles (modules third-party)

A3.1.3.1  Changements marquants

A3.1.3.1.1 Core et api HTTP

Les accès aux requêtes de l'api HTTP est maintenant possible via des jetons d'authentification. Un nouveau module pour le centre d'administration permet de configurer ces jetons.

Le support de PHP 7.1 est officialisé.

Possibilité d'ajouter un tag applicatif sur un document par un fichier de configuration (DOCATAG)

Les erreurs systèmes ne sont plus remontées par défaut sur l'interface utilisateur. Un paramêtre "CORE_DISPLAYERROR" permet d'afficher un code erreur à la place de l'erreur système afin que l'utilisateur ne soit pas perplexe sur ces erreurs technique et afin que l'administrateur puisse à l'aide de ce code retrouver les informations plus détaillées sur le serveur.

La commande "wsh" envoi un mail en cas d'erreur. Ceci permet notamment d'être informé des dysfonctionnements lorsqu'on utilise ce script dans des crontab par exemple. Cette adresse est configurable par paramètre applicatif (CORE_WSH_MAILTO).

A3.1.3.1.2 Interface du document HTML5

Le modules "dynacase-document-uis" a fait l'objet de nombreuses corrections et améliorations.

La gestion des requêtes a été optimisée. De même, les gestions des événements a été améliorée. Ceci a permis des gains performance pour l'affichage des documents. Le widget de document est maintenant aussi plus robuste par rapport à la version initiale.

La déclaration des "listener" a été harmonisée. De nouveaux événements ont été introduits afin de mieux contrôller les interactions. La documentation de référence a été complétée afin de mieux guider le développeur.

A3.1.3.2 Dynacase Control

La nouvelle release de Dynacase Control apporte un ensemble de correction mineures.

Plus de détail : Version 1.5.4

A3.1.4 Mises à jour

A3.1.4.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.1.4.2 Depuis une version 3.1

Voir le chapitre Migration

A3.1.5 Liste complète des demandes par module

A3.1.5.1 Admin Authentication Manager, version 1.0.0

Lien vers le tracker de développement pour Admin Authentication Manager version 1.0.0

A3.1.5.2 Admin Center, version 1.0.4

Lien vers le tracker de développement pour Admin Center version 1.0.4

A3.1.5.3 Admin Document Manager, version 3.2.12

Lien vers le tracker de développement pour Admin Document Manager version 3.2.12

A3.1.5.4 Admin Users Manager, version 3.2.11

Lien vers le tracker de développement pour Admin Users Manager version 3.2.11

A3.1.5.5 Admin Vault Manager, version 3.2.9

Lien vers le tracker de développement pour Admin Vault Manager version 3.2.9

A3.1.5.6 Backbone.js Installer, version 1.2.3-0

Lien vers le tracker de développement pour Backbone.js Installer version 1.2.3-0

A3.1.5.7 Core, version 3.2.23

Lien vers le tracker de développement pour Core version 3.2.23

A3.1.5.8 Document UIs, version 1.1.0

Lien vers le tracker de développement pour Document UIs version 1.1.0

A3.1.5.9 Font Awesome Installer, version 4.7.0

Lien vers le tracker de développement pour Font Awesome Installer version 4.7.0

A3.1.5.10 HTTP API v1, version 1.0.3

Lien vers le tracker de développement pour HTTP API v1 version 1.0.3

A3.1.5.11 JQuery UI Installer, version 1.12.0

Lien vers le tracker de développement pour JQuery UI Installer version 1.12.0

A3.1.5.12 Less Installer, version 1.7-2

Lien vers le tracker de développement pour Less Installer version 1.7-2

A3.1.5.13 Mustache.js Installer, version 2.2.0-0

Lien vers le tracker de développement pour Mustache.js Installer version 2.2.0-0

A3.1.5.14 Mustache.php Installer, version 2.9.0-0

Lien vers le tracker de développement pour Mustache.php Installer version 2.9.0-0

A3.1.5.15 Require JS Installer, version 2.1.20-0

Lien vers le tracker de développement pour Require JS Installer version 2.1.20-0

A3.1.5.16 Search Criteria UI, version 1.0.12

Lien vers le tracker de développement pour Search Criteria UI version 1.0.12

A3.1.5.17 TEngine, version 1.4.2

Lien vers le tracker de développement pour TEngine version 1.4.2

A3.1.5.18 TEngine Client, version 1.0.2

Lien vers le tracker de développement pour TEngine Client version 1.0.2

A3.1.5.19 TraceKit Installer, version 0.3.1-0

Lien vers le tracker de développement pour TraceKit Installer version 0.3.1-0

A3.1.5.20 Underscore Installer, version 1.8.3-0

Lien vers le tracker de développement pour Underscore Installer version 1.8.3-0

A3.2 Release 16

A3.2.1 Note de release

Cette release fournit une nouvelle version du module Core Dynacase pour corriger 2 anomalies détectées sur la récente release 3.2 R15.

A3.2.2 Mises à jour

A3.2.2.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.2.2.2 Depuis une version 3.1

Voir le chapitre Migration

A3.2.3 Liste complète des demandes par module

A3.2.3.1 Core, version 3.2.22

Lien vers le tracker de développement pour Core version 3.2.22

A3.3 Release 15

A3.3.1 Note de release

A3.3.1.1 Dynacase Control

La nouvelle release de Dynacase Control vérifie en préalable à sa mise à jour les prérequis à son installation, en particulier la présence de php-intl̀.

A3.3.1.2 Socle technique

A3.3.1.2.1 PHP

La version 7 est désormais supportée. 3.2R15

Cette version apporte des gains de performance significatif sur l'exécution de PHP.

Si vous migrez depuis une version inférieure à PHP 5.6, il vous faut d'abord migrer Core et ses modules, puis réaliser la montée en version de PHP.

Les versions PHP 5.4 et 5.5 sont plus supportées par Anakeen.3.2R14

A3.3.1.2.2 PostgreSQL

La versions 9.1 de PostgreSQL n'est plus supportée.3.2R14

A3.3.1.3 Points particuliers

A3.3.1.3.1 Licence

Tous les modules ont été modifiés pour faire évoluer le système de gestion de la licence entre les sources et le webinst. Ils vous seront donc proposés lors d'une mise à jour via Dynacase Control.

Ceci n'a strictement aucun impact sur le fonctionnement du module.

Les licences, LGPL ou Anakeen selon les modules, restent les mêmes.

A3.3.1.3.2 Sécurité

A3.3.1.3.3 Recherche générale

Par défaut les recherches effectuées depuis les applications ONEFAM et ses dérivées, la recherche générale (barre des applications) FGSEARCH et GENERIC_SEARCH utilisent une recherche par mot sauf utilisation des caractères \" ou *.

Un paramètre applicatif pour chacune des applications permet de modifier le comportement des recherches :

Deux valeurs sont possibles :

Par défaut, le comportement actuel est inchangé (mode words).

A3.3.1.3.4 Enregistrement des valeurs affichées

Les titres des relations, les libellés des énumérés et les dates (avec le nom du mois) pour les traductions configurées, sont enregistrés.

Ce fonctionnement permet de lever la limitation sur les recherches plein texte qui n'avaient pas connaissance de ces valeurs 'traduites' mais seulement des valeurs brutes (le code d'un énuméré, la date au format ISO). Du point de vue utilisateur, il devient donc possible de rechercher des termes correspondant aux valeurs affichées (libellé traduit pour un énuméré, date formatée).

plus de détails, issue #6379

A3.3.1.3.5 Option d'importation de droits

Lors de l'affection des droits sur un profil, il est possible de référencer les comptes (account). Ceci permet d'éviter l'utilisation des id système ou des noms logiques des documents liés aux comptes.

plus de détails dans le manuel de référence de Core

A3.3.1.3.6 Format XML importation / exportation des comptes

L'importation et l'exportation des comptes disposent maintenant d'un format XML spécifique. Ce format permet de fournir les seules informations nécessaires pour la description du compte en distinguant les valeurs systèmes des valeurs fonctionnelles.

plus de détails dans le manuel de référence de Core

A3.3.1.3.7 Échappement dans les layouts

La méthode Layout::eSet échappe maintenant les crochets. Ceci permet d'éviter une double interprétation de variables.
Le méthode Layout::set, reste inchangée et permet d'indiquer une valeur brute qui sera remplacée et interprétée si elle contient des références à des zones ou des paramètres applicatifs.

plus de détails dans le manuel de référence de Core

A3.3.1.3.8 Vault

A3.3.1.3.8.1 Identifiant des fichiers du coffre

L'algorithme de génération des identifiants internes des fichiers a été changé : l'identifiant est un nombre tiré au hasard dans l'espace [1, 2^63].

Cette modification permet de rendre impossible un accès à un fichier non autorisé à un utilisateur ayant des privilèges modérés.

Suite à une mise à jour, les identifiants sont calculés avec le nouvel algorithme, ceux existants sont laissé tel quels.

Une API est disponible pour recalculer les identifiants établis avec l'ancien algorithme :

./wsh.php --api=renameVaultKeys --help
Set Vault Big Keys
Usage :
   Options:
      --userid=<user system id or login name to execute function - default is (admin)>, default is '1'
      --vaultid=<restrict to single Vault id>, default is '0'
      --help (Show usage)
      --dry-run (Only verify)

Pour information la durée d'exécution de ce script dépend du nombre de fichiers et peut varier selon les caractéristiques de votre système.

À titre indicatif, nous avons mesuré une durée de 7 heures pour 400 000 fichiers sur un serveur (VM) avec 4Go de RAM et 1 CPU Intel Xeon 3Ghz.

A3.3.1.3.8.2 Robustesse dans la procédure de nettoyage du coffre

La procédure (cleanVaultOrphan), permettant de supprimer les fichiers orphelins a été revue. Elle contrôle l'utilisation des fichiers (documents, paramètres, etc.) et supprime les fichiers seulement si le coffre est intègre.

plus de détails dans le manuel de référence de Core

Attention : l'API checkVaultIndex ne peut plus être utilisée pour supprimer les orphelins.

A3.3.1.3.8.3 Utilisation de l'espace disque

L'espace physique disponible est affiché.

A3.3.1.3.9 Suppression des références interne dans la BD

Afin de réduire les adhérences entre un contexte Dynacase et son environnement d'exécution, les paramètres CORE_DB, FREEDOM_DB, CORE_PUBDIR, et WEBDAV_DB sont supprimés.

Ils sont désormais positionnés dans le fichier dbaccess.php sauf CORE_PUDIR qui est calculé en fonction de l'installation du contexte.

Pour compatibilité, Un fallback est mis en place lors de l'utilisation de la méthode ApplicationParameterManager::getParameter(). Ce mécanisme journalise l'appel en indiquant que le paramètre est obsolète.

A3.3.1.3.10 Lien document dans les mail

Le paramètre CORE_MAILACTION permettant de configurer les liens par défaut, envoyés dans les mail, permet une configuration plus fine de l'URL afin de ne plus être limité à des liens d'action Dynacase.

plus de détails dans le manuel de référence de Core

A3.3.1.3.11 Include Path

L'include path donne maintenant la priorité aux fichiers de l'espace d'installation. Auparavant, la priorité été donnée à la configuration PHP du serveur.

A3.3.1.3.12 API HTTP

Ajout d'une méthode de restauration d'un document supprimé.

plus de détails dans le manuel de référence de l'API HTTP Core

A3.3.1.3.13 Moteur de transformation

Il est désormais possible d'utiliser LibreOffice 5. La configuration d'accès au serveur LibreOffice a été simplifiée.

A3.3.1.3.14 Recherche générale

Les recherches générales (barre d'application et Onefam) peuvent être configurées selon 2 modes de fonctionnements :

A3.3.1.3.15 Suppression d'actions

Un ensemble d'actions non utilisées ou présentant des problèmes de sécurité ont été supprimées.

A3.3.2 Documentation

L'ensemble de la documentation a été mise à jour pour faciliter son utilisation :

Les documents mis à jour pour une évolution de leur contenu sont :

A3.3.3 Mises à jour

A3.3.3.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.3.3.2 Depuis une version 3.1

Voir le chapitre Migration

A3.3.4 Liste complète des demandes par module

A3.3.4.1 Admin Access Manager, version 3.2.8

Lien vers le tracker de développement pour Admin Access Manager version 3.2.8

A3.3.4.2 Admin Application Manager, version 3.2.11

Lien vers le tracker de développement pour Admin Application Manager version 3.2.11

A3.3.4.3 Admin Center, version 1.0.3

Lien vers le tracker de développement pour Admin Center version 1.0.3

A3.3.4.4 Admin Document Manager, version 3.2.11

Lien vers le tracker de développement pour Admin Document Manager version 3.2.11

A3.3.4.5 Admin UIs, version 1.0.7

Lien vers le tracker de développement pour Admin UIs version 1.0.7

A3.3.4.6 Admin Users Manager, version 3.2.10

Lien vers le tracker de développement pour Admin Users Manager version 3.2.10

A3.3.4.7 Admin Vault Manager, version 3.2.8

Lien vers le tracker de développement pour Admin Vault Manager version 3.2.8

A3.3.4.8 App Switcher, version 1.0.3

Lien vers le tracker de développement pour App Switcher version 1.0.3

A3.3.4.9 Backbone.js Installer, version 1.1.2-1

Lien vers le tracker de développement pour Backbone.js Installer version 1.1.2-1

A3.3.4.10 Book, version 0.4.4

Lien vers le tracker de développement pour Book version 0.4.4

A3.3.4.11 Bootstrap 3 Installer, version 3.3.6-0

Lien vers le tracker de développement pour Bootstrap 3 Installer version 3.3.6-0

A3.3.4.12 CKEditor 3 installer, version 3.6.3-4

Lien vers le tracker de développement pour CKEditor 3 installer version 3.6.3-4

A3.3.4.13  CKEditor 4 installer, version 4.5.7

Lien vers le tracker de développement pour CKEditor 4 installer version 4.5.7

A3.3.4.14  CKEditor Plugins, version 1.0.4

Lien vers le tracker de développement pour CKEditor Plugins version 1.0.4

A3.3.4.15 Cas, version 1.0.1

Lien vers le tracker de développement pour Cas version 1.0.1

A3.3.4.16 Core, version 3.2.21

Lien vers le tracker de développement pour Core version 3.2.21

A3.3.4.17 Dashboard UI, version 1.0.8

Lien vers le tracker de développement pour Dashboard UI version 1.0.8

A3.3.4.18 Dashboard Widgets, version 1.0.5

Lien vers le tracker de développement pour Dashboard Widgets version 1.0.5

A3.3.4.19 Data js, version 3.2.8

Lien vers le tracker de développement pour Data js version 3.2.8

A3.3.4.20 Document Grid UI, version 1.0.13

Lien vers le tracker de développement pour Document Grid UI version 1.0.13

A3.3.4.21 Document UIs, version 1.0.0-1

Lien vers le tracker de développement pour Document UIs version 1.0.0-1

A3.3.4.22 Fileconnector, version 1.1.6

Lien vers le tracker de développement pour Fileconnector version 1.1.6

A3.3.4.23 Font Awesome Installer, version 4.5.0

Lien vers le tracker de développement pour Font Awesome Installer version 4.5.0

A3.3.4.24 Freeevent, version 3.0.1

Lien vers le tracker de développement pour Freeevent version 3.0.1

A3.3.4.25 HTTP API v1, version 1.0.2

Lien vers le tracker de développement pour HTTP API v1 version 1.0.2

A3.3.4.26 JQuery UI Installer, version 1.8.21-7

Lien vers le tracker de développement pour JQuery UI Installer version 1.8.21-7

A3.3.4.27 JQuery installer, version 1.7.2-1

Lien vers le tracker de développement pour JQuery installer version 1.7.2-1

A3.3.4.28 Jquery Datatable Installer, version 1.10.11-0

Lien vers le tracker de développement pour Jquery Datatable Installer version 1.10.11-0

A3.3.4.29 Json2 Installer, version 1.0.2

Lien vers le tracker de développement pour Json2 Installer version 1.0.2

A3.3.4.30 Kendo UI Installer, version 2015.3.390-0

Lien vers le tracker de développement pour Kendo UI Installer version 2015.3.390-0

A3.3.4.31 Less Installer, version 1.7-1

Lien vers le tracker de développement pour Less Installer version 1.7-1

A3.3.4.32 Mailconnector, version 0.6.4

Lien vers le tracker de développement pour Mailconnector version 0.6.4

A3.3.4.33 Mustache.js Installer, version 0.8.1-1

Lien vers le tracker de développement pour Mustache.js Installer version 0.8.1-1

A3.3.4.34 Mustache.php Installer, version 2.6.0-1

Lien vers le tracker de développement pour Mustache.php Installer version 2.6.0-1

A3.3.4.35 Network User, version 1.3.7

Lien vers le tracker de développement pour Network User version 1.3.7

A3.3.4.36 Onefam, version 3.2.12

Lien vers le tracker de développement pour Onefam version 3.2.12

A3.3.4.37 Require JS Installer, version 2.1.13-1

Lien vers le tracker de développement pour Require JS Installer version 2.1.13-1

A3.3.4.38 Search Criteria UI, version 1.0.11

Lien vers le tracker de développement pour Search Criteria UI version 1.0.11

A3.3.4.39 TEngine, version 1.4.1

Lien vers le tracker de développement pour TEngine version 1.4.1

A3.3.4.40 TEngine Client, version 1.0.1

Lien vers le tracker de développement pour TEngine Client version 1.0.1

A3.3.4.41 TEngine Configuration, version 1.0.1

Lien vers le tracker de développement pour TEngine Configuration version 1.0.1

A3.3.4.42 TEngine Monitor, version 1.0.1

Lien vers le tracker de développement pour TEngine Monitor version 1.0.1

A3.3.4.43 Tags, version 1.1.5

Lien vers le tracker de développement pour Tags version 1.1.5

A3.3.4.44 Tags UI, version 1.1.4

Lien vers le tracker de développement pour Tags UI version 1.1.4

A3.3.4.45 TraceKit Installer, version 0.1.0-1

Lien vers le tracker de développement pour TraceKit Installer version 0.1.0-1

A3.3.4.46 Underscore Installer, version 1.7.0-1

Lien vers le tracker de développement pour Underscore Installer version 1.7.0-1

A3.3.4.47 Webdesk, version 2.0.3

Lien vers le tracker de développement pour Webdesk version 2.0.3

A3.3.4.48 Workspace, version 1.1.4

Lien vers le tracker de développement pour Workspace version 1.1.4

A3.4 Release 14

A3.4.1 Note de release

A3.4.1.1 Dynacase Control

Une mise à jour de Dynacase Control vous est proposée lorsque vous vous connectez sur son interface.

Des bugs sont corrigés, mais et une fonction majeure est ajoutée pour exporter les informations relatives aux contextes. Ce mécanisme est décrit dans le Manuel d'installation et d'exploitation, au § 5.4 Enregistrement d'un contexte.

Pour plus de détail, vous pouvez consulter le tracker de développement pour la version 1.5 release 2.

A3.4.1.2 Socle technique

A3.4.1.2.1 PHP

La version 5.6 est désormais supportée.

Les versions PHP 5.4 et 5.5 ne seront plus supportées à compter de la release de maintenance publiée en mai 2016. Elle sont maintenues par les développeurs de PHP uniquement pour corriger des failles de sécurité. Pour plus de détails, vous pouvez vous référer à la roadmap PHP.

Si une anomalie Dynacase est détectée et qu'elle se trouve être liée à un dysfonctionnement de PHP, la montée en version 5.6 deviendra nécessaire.

La version 7 de PHP est annoncée pour la fin de l'année 2015 (actuellement en Release Candidate). Le fonctionnement de Dynacase est en cours de validation sur cette version. Elle sera supportée à compter de la release de maintenance publiée en mai 2016.

A3.4.1.2.2 PostgreSQL

La version 9.4 est désormais supportée.

La versions 9.1 (fin de vie septembre 2016) de PostgreSQL ne sera plus supportée à compter de la release de maintenance publiée en mai 2016.

A3.4.1.3 Points particuliers

A3.4.1.3.1 Document UI

Le module Dynacase Document User Interface (DDUI) est développé par Anakeen pour apporter aux documents Dynacase une interface graphique moderne profitant des avancées du standard web HTML5.

Le module DDUI est une stack Front-End utilisant l’API HTTP de Dynacase. Cette Stack est composée de bibliothèques robustes et éprouvées (Require, Backbone, Underscore, Mustache, KendoUI et Bootstrap).

Stack DDUI

Figure 4. Stack DDUI

Le module DDUI peut être utilisé tel que ou facilement personnalisé. DDUI est assemblé à partir de widgets, eux mêmes paramétrables et permet ainsi de composer le document à façon.

DDUI permet de créer une interface graphique selon les principes du Responsive Design pour que l’IHM s’adapte aux différentes tailles d'écrans (ordinateur, portable, tablette).

Grace à sa conception (modularité) et le respect des 'standards' HTML5 (appcahe, storage), DDUI peut être utilisé pour réaliser des applications offline. Ces applications sont destinés à des usages nomades (train, avion,..), à des utilisations en environnement contraint (mauvaise connexion internet) ou fournissent une résilience aux pannes serveurs (les utilisateurs pouvant continuer à travailler en attendant que les serveurs soient de nouveau Up).

DDUI fonctionne avec des navigateurs récents (IE11, Chrome 40, Firefox 35 et suivants).

Pour résumer, le module éditeur DDUI apporte :

Vous trouverez plus d'information sur son architecture et son fonctionnementen consultant la documentation de référence.

A3.4.1.3.1.1 Exemple d'utilisation de DDUI

Ci-dessous, une application classique utilise DDUI (partie de droite) sans customisation particulière et présente une liste de documents (partie de gauche). On peut noter quelques changement dans la présentation du document. L'apparence générale reste suffisamment proche des documents classique pour ne pas perturber les utilisateurs actuels.

DDUI sur écran large

Figure 5. DDUI sur écran large

La capture suivante présente le même application sur un écran de largeur réduite. On peut noter que la liste de documents n'est plus affichée et devient accessible par une icône (repère 1), mais surtout un exemple de prise en compte 'responsive' de la largeur allouée au document : au repère 2, le dernier onglet affiche le nombre d'onglet supplémentaires accessibles.

DDUI sur écran étroit

Figure 6. DDUI sur écran étroit

Le module est distribué sous licence Anakeen.  Il est disponible sur votre dépôt privé selon votre contrat EEC.

A3.4.1.3.2 Nouveaux 'installer'

Comme nous l'avons vu précédemment, le fonctionnement de Dynacase Document UI utilise une stack nouvelle. Ces divers composants sont fournis au travers de modules Dynacase de type 'installer' :

A3.4.1.3.3 Core

Cette release apporte un nombre important de corrections (voir la liste complète des issues traitées).

Quelques améliorations de mécanismes internes sont identifiées dans la note d'édition du manuel de référence, édition 9.

A3.4.1.3.3.1 Vérification de la validité du HTML (attributs HtmlText)

Lors de la manipulation des valeurs d'attributs de type HTMLTEXT, Dynacase s'assure de la validité du HTML (pour plus de détail cf. les issues [5595] & [5695].

A3.4.1.3.3.2 Connexion persistante à la base PostgreSQL

Nous avons désactivé la possibilité de mettre en place une connexion persistante entre Dynacase et PostgreSQL via un paramètre applicatif Core. À noter que ce mode de connexion a toujours été déconseillé et n'est pas supporté.

Ce mode de fonctionnement peut devenir problématique et nécessite des précautions particulières pour la gestions de transactions, verrous, configuration PostgreSQL, etc. (Pour plus d'information).

A3.4.1.3.4 API HTTP

Une mise à jour propose quelques améliorations de l'API; une nouvelle édition du manuel de référence est publiée.

A3.4.2 Documentation

Documentations mises à jour :

A3.4.3 Mises à jour

A3.4.3.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.4.3.2 Depuis une version 3.1

Voir le chapitre [Migration]

A3.4.4 Liste complète des demandes par module

A3.4.4.1 CKEditor 4 installer, version 4.5.3

Lien vers le tracker de développement pour CKEditor 4 installer version 4.5.3

A3.4.4.2 Core, version 3.2.20

Lien vers le tracker de développement pour Core version 3.2.20

A3.4.4.3  Document UIs, version 1.0.0

Lien vers le tracker de développement pour Document UIs version 1.0.0

A3.4.4.4 Fileconnector, version 1.1.5

Lien vers le tracker de développement pour Fileconnector version 1.1.5

A3.4.4.5 API HTTP Core v1, version 1.0.1

Lien vers le tracker de développement pour HTTP API v1 version 1.0.1

A3.5 Release 13

A3.5.1 Note de release

A3.5.1.1 Points particuliers

A3.5.1.1.1 Core

Cette release traite 45 issues, dont certaines notables :

A3.5.1.1.2 API HTTP Core

En vue de la prochaine publication du module Document UIs (interface HTML 5 du document), l'API HTTP Core est publiée en version 1.0. Cette version stable est désormais supportée dans le cadre de vos contrats EEC.

Le documentation a été mise à jour, elle introduit de nouvelles ressources relatives aux workflows.

A3.5.1.1.3 Dynacase Transformation Engine, interface d'administration et de surveillance

L'URL de callback déclenchée lors de la fin du l'exécution du moteur est désormais systématiquement appelée, et ce quelque soit le statut final (erreur, interruption, OK).

Les conversions en texte (extraction) sont réalisées par Tika qui est désormais lancé en mode serveur pour optimisation de la charge du serveur.

Des interfaces d'administration et de surveillance de Dynacase TEngine sont proposées depuis la page d'administration de la plateforme. Elles permettent de :

Pour plus de détail, nous vous invitons à vous reporter à la note de version relative à la version 1.4.0.

Le passage à la version 1.4 de Dynacase TEngine nécessite de reprendre des éléments de configuration. Ceci est décrit dans la note de version mentionnée ci-dessus.

A3.5.2 Documentation

A3.5.3 Mises à jour

A3.5.3.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.5.3.2 Depuis une version 3.1

Voir le chapitre Migration

A3.5.4 Liste complète des demandes par module

A3.5.4.1 Admin Users Manager, version 3.2.9

Lien vers le tracker de développement pour Admin Users Manager version 3.2.9

A3.5.4.2 Core, version 3.2.19

Lien vers le tracker de développement pour Core version 3.2.19

A3.5.4.3 Document Grid UI, version 1.0.12

Lien vers le tracker de développement pour Document Grid UI version 1.0.12

A3.5.4.4 TEngine, version 1.4.0

Lien vers le tracker de développement pour TEngine version 1.4.0

A3.5.4.5 TEngine Client, version 1.0.0

Lien vers le tracker de développement pour TEngine Client version 1.0.0

A3.5.4.6 TEngine Configuration, version 1.0.0

Lien vers le tracker de développement pour TEngine Configuration version 1.0.0

A3.5.4.7 TEngine Monitor, version 1.0.0

Lien vers le tracker de développement pour TEngine Monitor version 1.0.0

A3.5.5 Installers

La liste des installers utilisés par la plateforme est la suivante :

A3.6 Release 12

A3.6.1 Dynacase Control 1.5

Une version majeure de Dynacase Control est disponible. Comme toujours, cette version est proposée en mise en jour lors de la connexion sur l'interface WEB de Dynacase Control.

L'ensemble des phases des installations et mises à jour réalisées par Dynacase Control sont maitenant journalisées ainsi que les différents messages d'erreur ou d'avertissement. Cette journalisation utilise syslog en standard.
Il est possible d'activer une journalisation locale (sur le serveur Control) et de consulter ce journal via l'interface WEB. Pour plus de détail, vous pouvez vous reporter au Manuel d'installation et d'exploitation, chapitre 3.6, Journal des messages d'erreur.

Le mode CLI a été complété. Il permet désormais de réaliser l'ensemble des opérations Control jusqu'à alors accessibles via l'interface WEB, principalement la manipulation des contextes et des archives. Le CLI est document dans le Manuel d'installation et d'exploitation, chapitre 9, Dynacase Control en mode CLI

Enfin, le format des paquets webinst est amélioré : une schéma XML décrit les fichiers infos.xml. Actuellement la conformité à ce schéma n'est pas stricte. Un avertissement est journalisé lors de l'installation de modules dont le fichier infos.xml ne déclare pas le schéma. Si le schéma est déclaré, le fichier doit être conforme, le cas échéant l'installation est interrompue. Pour plus de détail, consultez le Manuel d'installation et d'exploitation, Annexe 2, chapitre A2.2, Fichier info.xml.

L'ensemble de ces points sont détaillés dans l'édition 8 du manuel d'installation et d'exploitation de Dynacase Platform (cf. chapitre Historique des modifications).

A3.6.2 Nouveauté, une API REST pour Dynacase Core

La version beta de la l'API HTTP Dynacase (REST) v1 est disponible.

Elle offre un accès HTTP aux ressources Dynacase (documents, familles principalement) via une architecture REST.

Le manuel de référence de l'API en détaille son fonctionnement et son contenu. Nous vous invitons à en prendre connaissance.

Cette version est en beta, la première version sera publiée avant l'été 2015 en même temps que la version beta du widget Document UI que nous avons présenté sur le blog Dynacase (Roadmap Dynacase).

A3.6.3 Note de release

A3.6.3.1 Socle technique

À compter de cette release, les versions PHP 5.3 et PostgreSQL 8.4 ne sont plus supportées. Pour plus de détail, vous pouvez consulter les paragraphes du manuel d'installation et d'exploitation :

A3.6.3.2 Organisation des dépôts

​Précédemment, les dépôts fournissaient à la fois les modules Dynacase et les paquets de tests. À compter de cette version, les paquets de test sont distribués via un dépôt dédié.

Par exemple, pour la version 3.2 :

À noter : ces modules de tests sont utilisés en interne pour automatiser la validation des modules. Ils peuvent éventuellement être utilisés par un développeur pour vérifier le fonctionnement d'un module mais n'ont pas vocation à être installés sur des machines de production.

Cette modification des dépôts n'entraîne aucun changement sur la configuration de Dynacase Control (les paquets des modules Dynacase ne sont pas déplacés).

A3.6.3.3 Points particuliers

A3.6.3.3.1 Transaction et verrous PostgreSQL

Les mécanismes de verrou et transaction PotsgreSQL utilisés par Dynacase et mis à disposition des développeurs ont fait l'objet d'améliorations.

Elles optimisent le fonctionnement de Dynacase et PostgreSQL lors de manipulation de volumes de documents importants, typiquement lors d'importation en masse de documents et permettent en interne une réduction de potentiels interblocages ralentissant la mise à jour de documents (calcul des droits et stockages des fichiers associés).

Nous invitons les développeurs à prendre connaissance de ce chapitre qui de plus décrit l'utilisation par Dynacase de ces mécanismes lors de traitements particuliers (importation, profilage, etc.).

Manuel de référence Dynacase Core, Transactions et savePoint § 17.5.3

A3.6.3.3.2 Interface de modification des valeurs par défaut

La modification des valeurs par défaut d'une famille était réalisée en utilisant l'interface générique du document. Une interface dédiée a été mise en place. Toujours accessible depuis la famille, elle permet maintenant de modifier chaque valeur par défaut individuellement et surtout permet la modification de valeur par défaut dynamique en proposant soit une saisie via une aide classique ou une saisie de la valeur brute.

L'exemple typique est la modification de la valeur par défaut d'une date via l'interface :

A3.6.3.3.3 Divers

Visibilité I
Les visibilités sont appliquées sur les rapports et prises en compte par la classe formatCollection.
Minuteur et date dynamique
Lors de son attachement, si la date dynamique d'un minuteur est invalide, il n'est pas déclenché #5250.
Aide au développement
Les exceptions sont systématiquement journalisées #5194
Rapport et exportation : mise en forme
La classe formatCollection est enrichie de propriétées (#5180) et de hook (#5195) ajoutant de nouvelles fonctionalitées de formatage des données.
Authentification
Amélioration du formulaire de connexion #5270
Vault
Fourniture d'une API de purge #5125
Empaguetage
Les modules Dynacase Document Grid, Search Criteria et Tags ont fait l’objet d’une adaptation de leur procédure de build sans modification de leur code. Cette modification n’a aucun impact.

A3.6.4 Documentation

Le manuel de référence de l'API HTTP de Dynacase Core est publié en version beta : API HTTP : Manuel de référence.

Les documents suivants ont été mis à jour :

A3.6.5 Mises à jour

A3.6.5.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.6.5.2 Depuis une version 3.1

Voir le chapitre Migration

A3.6.6 Liste complète des demandes par module

A3.6.6.1 Admin Document Manager, version 3.2.10

Lien vers le tracker de développement pour Admin Document Manager version 3.2.10

A3.6.6.2 Admin Vault Manager, version 3.2.7

Lien vers le tracker de développement pour Admin Vault Manager version 3.2.7

A3.6.6.3 Core, version 3.2.18

Lien vers le tracker de développement pour Core version 3.2.18

A3.6.6.4 Document Grid UI, version 1.0.11

Lien vers le tracker de développement pour Document Grid UI version 1.0.11

A3.6.6.5 HTTP API v1, version 0.0.1

Lien vers le tracker de développement pour HTTP API v1 version 0.0.1

A3.6.6.5.1 Search Criteria UI, version 1.0.10

Lien vers le tracker de développement pour Search Criteria UI version 1.0.10

A3.6.6.6 Tags, version 1.1.4

Lien vers le tracker de développement pour Tags version 1.1.4

A3.7 Release 11

A3.7.1 Note de release

A3.7.1.1 Support des navigateurs

Cette release apporte le support du navigateur Internet Explorer en version 10 et 11 (Manuel d'installation et d'exploitation > Pré-requis > Poste client). Nous avons intégré la version 4 de CKEditor supportant les navigateurs modernes. La version 3 est conservée pour assurer une compatibilité avec les anciennes versions de navigateurs (en particulier avec les versions Internet Explorer inférieures à la 9).

A3.7.1.2 Socle technique

Côté serveur, le fonctionnement de Dynacase sur PHP et PostgreSQL évolue : les versions PHP 5.5 et PostgreSQL 9.2 et 9.3 sont supportées à compter de cette release:

Les dépendances de Core sur les modules PEAR ont été supprimées Manuel d'installation > Pré-requis > PHP > Composants PEAR.

A3.7.1.3 Fin de support de PHP 5.3 et PostgreSQL 8.4

Dynacase peut fonctionner avec les versions 5.3 de PHP et 8.4 de PostreSQL, conservées pour compatibilité.

À compter de la release de Dynacase 3.2 publiée en début d'année 2015, ces versions ne seront plus compatibles.

Cette décision est nécessaire pour nous permettre, ainsi qu'aux développeurs Dynacase, de suivre l'évolution de PHP et de bénéficier des apports des nouvelles versions (introduits principalement en version 5.4). Leur utilisation améliore la qualité du code et, en particulier, sa maintenabilité. Le fonctionnement intrinsèque de PHP progresse aussi (performance, robustesse, gestion de la mémoire) et profite à toutes les applications Dynacase.

Enfin, la dernière release de maintenance de la version 5.3 a été publiée en août 2014 et aucune mise à jour n'est prévue (communiqué du PHP devlopement team).

La version 8.4 de PostgreSQL n'est plus supportée depuis juillet 2014 : PostgreSQL versioning policy.

A3.7.1.4 Issues traitées

Cette version corrige des anomalies détectées sur les modules Core, Document Grid.

Pour plus de détails, merci de vous reporter au paragraphe Liste complète des demandes par module.

Outre les travaux de correction d'anomalie et ceux nécessaires pour le support des navigateurs IE 10 & 11, nous soulignons l'issue [Import] Ne pas effectuer le re-calcul des droits lorsque le profil n'a pas été modifié. L'introduction du mot-clef SET lors de l'importation de profil permet de demander le recalcul seul du profil dont la définition est modifié. Actuellement, le mot-clef RESET était utilisé à cette fin. Il entrainait une réinitialisation complète et un recalcul de tous les profils. Ce traitement pouvait durer jusqu'à plusieurs heures sur des bases volumineuses. Le ciblage du profil modifié, par le mot-clef SET, permet un gain de temps important, chose appréciable lors des phases de développement ou de migration.

A3.7.2 Documentation

L'édition 6 du manuel de référence Core a été publiée. Nous vous invitons à parcourir le chapitre Historiques des modifications pour prendre connaissance des changements apportés.

Le Manuel d'installation et d'exploitation est mis à jour (édition 7) suite au changement pour le support des versions IE côté client et PHP/PostgreSQL pour le socle technique. Un paragraphe précise la procédure de restauration de contexte.

La documentation de paramétrage de l'aide en ligne a été ajoutée.

Le Quick Start, tutoriel de développement avec Dynacase est nouveau. Pour plus de détail, rendez vous sur la page Dynacase dédiée.

L'ensemble des documentations sont disponibles sous 3 formats :

A3.7.3 Mise à jour

A3.7.3.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.7.3.2 Depuis une version 3.1

Voir le chapitre Migration

A3.7.4 Liste complète des demandes par module

A3.7.4.1 CKEditor 3 installer, version 3.6.3-3

A3.7.4.2 CKEditor 4 installer, version 4.4.4

A3.7.4.3 CKEditor Plugins, version 1.0.3

A3.7.4.4 Core, version 3.2.17

A3.7.4.5 Document Grid UI, version 1.0.10

A3.8 Release 10

A3.8.1 Note de release

Cette version corrige des anomalies détectées sur les modules Core et DocumentGrid.

Pour plus de détails, merci de vous reporter au paragraphe Liste complète des demandes par module.

Quelques précisions importantes :

Issue #4840
Lors de l'utilisation de la méthode exitForbidden de la classe Class.Action.php le code retour 401 était retourné au client. Pour être conforme au protocole HTTP, le code HTTP 403 Forbidden est désormais retourné.
Issue #4860
Une régression sur la version 3.2.6 du module Core rendait les sessions bloquantes lors de traitement parallèle de requètes HTTP sous un même utilisateur Dynacase. Ce dysfonctionnement était pénalisant pour les requêtes activé via XHR Asynchrone (elles étaient de fait traitées de manière synchrone). Cette issue corrige ce point.
Issue #4875
Dans le cadre d'un itérateur de document (voir l'exemple de code sur la demande), les propriétés privées n'étaient pas nettoyées. Ce point est fixé.
Important Nous rappelons toutefois que lors des itérations l'utilisation d'un disableEditControl sur un objet document avant d'en modifier le contenu doit être suivi d'un enableEditControl. Le cas échéant, les droits ne sont plus contrôlés sur les documents accédés lors des itérations suivantes.
La modification de ce fonctionnement (application de l'invalidation des droits limité au seul document) ne peut pas être traitée sur cette version : son impact sur les développements réalisées étant trop important lors de manipulation de documents et de révisions.
Issue #4838, Issue #4844, Issue #4847, Issue #4925, Issue #4927
Des travaux d'amélioration de la sécurité ont été réalisés. Ils traitent des problèmes potentiels XSS. Toutefois, ces mécanismes auraient pu être utilisés de manière volontaire dans le cadre de développements. Les contrôles mis en oeuvre peuvent donc perturber le fonctionnement d'applications basées sur ces développements.

A3.8.2 Documentation

Un paragraphe a été rajouté dans ce document (Versions des navigateurs supportés) pour préciser les versions de navigateur officiellement supportés par la plateforme. Il reprend les informations disponibles dans le manuel d'installation et d'exploitation.

A3.8.2.1 Mise à jour

A3.8.2.1.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.8.2.1.2 Depuis une version 3.1

Voir le chapitre Migration

A3.8.3 Liste complète des demandes par module

A3.8.3.1 Core, version 3.2.16

A3.8.3.2 DocumentGrid, version 1.0.9

A3.9 Release 9

A3.9.1 Note de release

Cette version corrige des anomalies détectées sur les modules Core, Dashboard UI, Network Users et Search Criteria.

Pour plus de détails, merci de vous reporter au paragraphe Liste complète des demandes par module.

Un changement significatif a été introduit sur l'interface en modification du document, pour les attributs de type file. Suite à des dysfonctionnements détectés et à des retours utilisateurs, nous avons décidé d'améliorer l'interface de l'aide à la saisie des types files.

Pour des raisons de compatibilité, l'ancienne interface est conservée lors de mise à jour de Dynacase.

En cas d'installation, la nouvelle interface est proposée par défaut.

Il est possible d'agir sur ce comportement via le paramêtre applicatif FDL_OLDFILEINPUTCOMPAT : lorsqu'il est positionné à yes, l'ancienne interface est proposée.

Voici quelle est cette nouvelle interface pour les type file :

Attribut <code>file</code> en modification

Figure 9. Attribut file en modification

La présentation de l'interface tient maintenant sur une seule ligne. Elle se compose du nom du fichier et des trois boutons permettant :

Le comportement des boutons dépend des actions de l'utilisateur et du contenu initial de l'aide à la saisie :

(1) un fichier est déjà présent
le fichier et un lien de téléchargement et il est possible d'en sélectionner un nouveau ou de le supprimer.
(2) le fichier précédent a été remplacé
le fichier n'est plus un lien et tous les boutons sont actifs.
(3) le fichier précédent a été effacé
le précédent fichier est barré et il est possible d'en sélectionner un nouveau ou rétablir l'ancien.
(4) aucun fichier n'est fourni
il est possible d'en sélectionner un.

Le fonctionnement de la restauration de la valeur précédente s'applique seulement à l'édition en cours. Elle permet de revenir à la valeur de l'attribut avant la modification du document.

À noter que cette interface n'est disponible pour Internet Explorer à partir de la version 9.

Le type image (hérité de file) est lui aussi concerné.

A3.9.2 Documentation

Le Manuel d'installation et d'exploitation de Dynacase a été mis à jour pour préciser les versions des modules PEAR utilisables.

A3.9.2.1 Mise à jour

A3.9.2.1.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.9.2.1.2 Depuis une version 3.1

Voir le chapitre Migration

A3.9.3 Liste complète des demandes par module

A3.9.3.1 Core, version 3.2.15

A3.9.3.2 Dashboard UI, version 1.0.7

A3.9.3.3 Network User, version 1.3.6

A3.9.3.4 Search Criteria, version 1.0.9

A3.10 Release 8

A3.10.1 Note de release

Cette version corrige des anomalies détectées sur les modules Core et Dashboard UI. Pour plus de détail, merci de vous reporter au paragraphe Liste complète des demandes par module.

A3.10.2 Documentation

De nouvelles éditions des documents sont disponibles :

A3.10.2.1 Mise à jour

A3.10.2.1.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.10.2.1.2 Depuis une version 3.1

Voir le chapitre Migration

A3.10.3 Liste complète des demandes par module

A3.10.3.1 Core version 3.2 release 14

A3.10.3.2 Dashboard UI version 1.0 release 6

A3.11 Release 7

A3.11.1 Note de release

Cette version corrige des anomalies détectées sur les modules Core et Onefam. Pour plus de détail, merci de vous reporter au paragraphe Liste complète des demandes par module.

La documentation d'intégration du module Onefam a fait l'objet d'une mise à jour.

A3.11.1.1 Mise à jour

A3.11.1.1.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.11.1.1.2 Depuis une version 3.1

Voir le chapitre Migration

A3.11.2 Liste complète des demandes par module

Core, version 3.2.13

Onefam, version 3.2.11

A3.12 Release 6

Date de publication : 16 janvier 2014

A3.12.1 Note de release

A3.12.1.1 Présentation

Documentation

Un travail important a été fourni sur la documentation.

Le manuel de référence de Dynacase Core est maintenant complet. Le manuel intègre maintenant un chapitre Historique présentant les changements introduits dans cette édition.

D'autre part, nous avons publié sous le nouveau format de documentation, les manuels d'intégration des modules Dynacase Book, MailConnector et FileConnector.

La mise en forme des documents a été modernisée.

Chacun des documents intègre maintenant une recherche.

Changelog

À l'occasion de cette release, nous présentons la première version d'un changelog Dynacase.

Cette application détaille chacune des releases Dynacase, les modules qui la compose et les issues traitées dans les différentes versions de modules.

Pour l'instant cette version beta ne répertorie que les modules supportés, à terme elle recensera l'ensemble des modules disponibles (non supportés et les *-installer).

Control

Une amélioration de Control (version 1.4.4) permet désormais depuis son interface d'accéder au changelog des modules qu'ils soient installés, proposés pour l'installation ou disponibles pour une mise à jour.

Modules

La modification de Control (accès au changelog) a nécessité une reprise de la description du paquet pour la majorité des modules (suppression des anciens changelog).

D'autre part, de nombreux modules ont été traités pour valider les entrées utilisateurs. Les demandes sont intitulées Correction XSS, car cette protection contre des entrées invalides involontaires prémunit les applications de risques liés à des actions volontaires.

La liste des issues traitées sur cette release est fournit ci-dessous.

Changements notables

Administration des documents (Centre d'administration)

La fonction d'importation de document a été intégrée via une interface dédiée dans le Centre d'administration.

Tranformation Engine

Le manuel d'installation et d'exploitation de TEngine a été mis à jour pour préconiser l'utilisation des versions 4.0 de OpenOffice et 1.4 de Tika.

À cette occasion, les éléments de configuration vers des versions figées de ces outils ont été supprimés de la configuration par défaut et doivent faire l'objet d'un paramétrage.

Core

À noter comme correction ou amélioration :

A3.12.1.2 Mise à jour

A3.12.1.2.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.12.1.2.2 Depuis une version 3.1

Voir le chapitre Migration

A3.12.2 Liste complète des demandes par module

Admin Access Manager, version 3.2.7

Admin Application Manager, version 3.2.10

Admin center, version 1.0.2

Admin Document Manager, version 3.2.9

Admin UIs, version 1.0.6

Admin Users Manager, version 3.2.8

Admin Vault Manager, version 3.2.6

Book, version 0.4.3

CKEditor Plugins, version 1.0.2

Contacts, version 1.0.2

Control, version 1.4.4

Core, version 3.2.12

Dashboard UI, version 1.0.5

Data js, version 3.2.7

DocumentGrid, version 1.0.8

json2, version 1.0.1

Mailconnector, version 0.6.3

Network User, version 1.3.5

Onefam, version 3.2.10

Tags, version 1.1.3

Tags UI, version 1.1.3

TEngine, version 1.3.4

Thesaurus, version 1.1.5

Webdesk, version 2.0.2

Workspace, version 1.1.3

A3.13 Release 5

Date de publication : 21 octobre 2013

A3.13.1 Note de release

A3.13.1.1 Présentation

Cette release propose la mise à jour des modules Core, Document Grid et Search Criteria suite à des corrections d'anomalies.

A3.13.1.2 Mise à jour

A3.13.1.2.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.13.1.2.2 Depuis une version 3.1

Voir le chapitre Migration

A3.13.2 Modules

A3.13.2.1 Modules modifiés

Nous mettons en évidence les changements importants. Nous vous invitons à utiliser le tracker de développement pour connaitre le détail des travaux effectués.

A3.13.2.1.1 Dynacase Core

→ version : 3.2.11 (détail de la release)

Cette release permet de corriger des anomalies, en particulier :

A3.13.2.1.2 Dynacase Document Grid

→ version : 1.0.6 ( → tracker)

Correction de diverses anomalies mineures.

A3.13.2.1.3 Dynacase Search Criteria UI

→ version : 1.0.8 ( → tracker)

Correction de diverses anomalies mineures.
A noter la correction du fonctionnement de la recherche sur un intervalle de date [#4248].

A3.14 Release 4

Date de publication : 16 septembre 2013

A3.14.1 Note de release

A3.14.1.1 Présentation

Cette release, essentiellement destinée à la correction d'anomalies, apporte son lot de travaux de normalisation et d'amélioration des paradigmes de développement -nommage des méthodes des classes Core, dépréciation de mécanismes inutilisés en vue d'un prochain retrait entre autres- dans l'objectif de simplifier les développements et améliorer la prise en main de Dynacase. Les mécanismes identifiés comme dépréciés restent compatibles en version 3.2 (y compris pour les futures release de maintenance).

Le développement d'interfaces homme-machine modernes nécessite l'utilisation de nouveaux frameworks. Cette release introduit de nouveaux modules de types installer pour intégrer Bootstrap, underscore, backbone et Tipsy.

A3.14.1.2 PHP & PostgreSQL

Le support de la version PHP 5.5 et de PostgreSQL sont en cours de validation.

A3.14.1.3 À lire

Ce paragraphe signale des points ajoutés ou complétés dans la suite de ce document (précision suite à des retour de développeurs, compléments d'information, etc.)

A3.14.1.4 Mise à jour

A3.14.1.4.1 Depuis une release 3.2 précédente

Pas d'instruction particulière.

A3.14.1.4.2 Depuis une version 3.1

Voir le chapitre Migration

A3.14.2 Documentation

A3.14.2.1 Manuel de référence

Le manuel de référence Dynacase Core a été mis à jour :

Ces changements sont mis en évidence dans manuel via les marques new et updated.

A3.14.3 Modules

A3.14.3.1 Modules créés


Des outils de développement d'interface client WEB modernes sont maintenant disponibles. Ces nouveaux modules, installer, permettent l'installation de ces logiciels tiers sur les contextes Dynacase.

A3.14.3.1.1 Dynacase Backbone Installer

Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.http://backbonejs.org/
→ version : 1.0.0

A3.14.3.1.2 Dynacase Bootstrap Installer

Sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.http://getbootstrap.com/
→ version : 2.3.2

A3.14.3.1.3 Dynacase Tipsy Installer

Tipsy is a jQuery plugin for creating a Facebook-like tooltips effect based on an anchor tag's title attribute.http://onehackoranother.com/projects/jquery/tipsy/
→ version : 1.0.0

A3.14.3.1.4 Dynacase Underscore Installer

Underscore is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects. It's the tie to go along with jQuery's tux, and Backbone.js's suspenders.

http://underscorejs.org
→ version : 1.5.1

A3.14.3.2 Modules modifiés

Nous mettons en évidence les changements importants. Nous vous invitons à utiliser le tracker de développement pour connaitre le détail des travaux effectués.

A3.14.3.2.1 Dynacase DocAdmin UI

→ version : 3.2.8 (détail de la release)
Ajout d'une interface permettant d'accéder aux documents système par type (familles, cycles de vie, profils, etc.).

A3.14.3.2.2 Dynacase Ckeditor Installer

→ version : 3.6.3
Les sources ne sont pas modifiés. La release est liée à une reprise du packaging.

A3.14.3.2.3 Dynacase Core

→ version : 3.2.10 (détail de la release)

Les travaux de normalisation et d'amélioration des paradigmes de développement continuent :

Ces modifications marquent comme dépréciées les anciens mécanismes qui restent toutefois opérationnels en version 3.2. Une nouvelle interface homme-machine de gestion des valeurs d'énuméré est proposée.
Correction de diverses anomalies.

A3.14.3.2.4 Dynacase DataJS

→ version : 3.2.6 (détail de la release)
Mise en conformité Core.

A3.14.3.2.5 Dynacase DocumentGrid

→ version : 1.0.6 (détail de la release)
Prise en compte de l'attribut de type Thesaurus.

A3.14.3.2.6 Dynacase ExtJs

→ version : 3.1.1
Les sources ne sont pas modifiés. La release est liée à une reprise du packaging.

A3.14.3.2.7 Dynacase ExtUi

→ version : 1.1.2 (détail de la release)
Adaptation pour l'autoloader Dynacase.

A3.14.3.2.8 Dynacase FileConnector

→ version : 1.1.4 (détail de la release)
Mise en conformité Core.

A3.14.3.2.9 Dynacase JQuery DataTables Installer

→ version : 1.9.1 Les sources ne sont pas modifiés. La release est liée à une reprise du packaging.

A3.14.3.2.10 Dynacase JQuery Installer

→ version : 1.8.21
Les sources ne sont pas modifiés. La release est liée à une reprise du packaging.

A3.14.3.2.11 Dynacase MailConnector

→ version : 0.6.2 ( → tracker)
Mise en conformité Core.

A3.14.3.2.12 Dynacase NetworkUser

→ version : 1.3.4 ( → tracker)
Mise en conformité Core.

A3.14.3.2.13 Dynacase OneFam

→ version : 3.2.9 ( → tracker)
Correction d'un anomalie d'affichage.

A3.14.3.2.14 Dynacase Search Criteria UI

→ version : 1.0.7 ( → tracker)
Prise en compte des attributs de type Thesaurus.

A3.14.3.2.15 Dynacase Thesaurus

→ version : 1.1.4 ( → tracker)
Amélioration et correction de l'intégration des thésaurus.

A3.14.3.2.16 Dynacase Webdesk

→ version : 2.0.1 ( → tracker)
Mise en conformité Core.

A3.14.3.2.17 Dynacase Workspace

→ version : 1.12 ( → tracker)
Mise en conformité Core.

A3.15 Release 3

Date de publication : 21 juin 2013

A3.15.1 Modules

Modules modifiés

A3.15.2 Principales modifications

Cette mise à jour permet de corriger deux anomalies :

Pour plus de précisions, nous vous invitons à utiliser les liens vers le tracker de développement fournis au paragraphe précédent.


  1. Méta-module installant les différents modules proposant les interfaces d'administration. 

A3.16 Release 2

Date de publication : 14 juin 2013

A3.16.1 Modules

Nouveau module

Modules modifiés

A3.16.2 Principales modifications

Nous mentionnons ici les changements pouvant simplifier ou améliorer les développements.

Nous vous invitons à prendre de connaissance de la liste des issues traitées via les liens vers les trackers ci-dessus.

Migration des dates en BD
Cette mise à jour procède à la migration des dates stockées en BD si elles ne sont pas déjà stockées au format ISO ( → plus de précision ici).
Une procédure manuelle permet de réaliser cette migration sans installer cette mise à jour.
L'application de cette procédure est fortement conseillée. Dans le cadre d'une utilisation d'application Dynacase en langue anglaise elle est obligatoire pour éviter des erreurs d'interprétation de dates (logiciel et utilisateur).
Importation des documents
L'API d'importation de document importDocument accepte la nouvelle option --reset pour préciser le comportement de Dynacase de l'importation : suppression des attributs n'étant plus définis, des valeurs, etc.
Nettoyage des familles en BD
L'API cleanFamily permet de supprimer les attributs de famille non définis en base de donnée. Elle supprime aussi leurs valeur (documents).
Cookies d'authentification
Le cookie d'authentification a été renommé.
Ceci concerne plus particulièrement les développements de backend d'authentification.
option importDocument
dépréciation de l'option reinitattr.

  1. le module CAS n'était pas disponible sur la première release 3.2. 

  2. Méta-module installant les différents modules proposants les interfaces d'administration. 

Liste des illustrations

Licence

Ce document est publié sous licence CC http://creativecommons.org/licenses/by-nc-sa/2.0/fr/

Vous êtes libres :

Selon les conditions suivantes :

Édition

Release note
© Anakeen, Anakeen Labs <labs@anakeen.com>
Module Dynacase Platform, version 3.2
Édition 2019.05.22
Publié le 10/10/2019

Ce livre a été produit avec easybook 4.8, logiciel libre et open source développé par Javier Eguiluz à l'aide de différents composants Symfony.

Anakeen

Créé en 1998, Anakeen est un éditeur expert dans l'amélioration de la gestion des processus et de l'information avec pour objectif principal : valoriser les fonctions support en les libérant des tâches à faible valeur ajoutée. Le résultat opérationnel a toujours été recherché par toutes les entreprises et particulièrement aujourd'hui où le moindre détail peut faire la différence afin d'être ou de rester compétitif sur son marché. Pour chaque fonction support, être en situation de valoriser sa contribution au résultat global de l’entreprise est plus que jamais devenu une nécessité.

Impliqué depuis 1998 dans le logiciel libre, Anakeen est un acteur majeur de la gestion de l'information. Nos contributions pour l'utilisation des standards ouverts, la garantie de l'accès au code source et la grande diversité de nos partenaires vous assure pérennité et réversibilité.

L'ensemble du code PHP de Dynacase Platform est disponible sous licence Open Source, le modèle de données est documenté et public. Mais plus que ça, le code source est commenté dans l'objectif de faciliter sa compréhension pour la réutilisation ou la modification. Aussi toute la documentation concernant le produit est mise en ligne sur www.dynacase.org.

En choisissant un logiciel Open Source, vous faites le choix de la sécurité, car vous avez l'assurance de vérifier le fonctionnement du logiciel et la qualité du code.

Nos offres et services, nous permettent d'assurer le financement du développement produit mais aussi de contribuer chaque jour à l'adoption du business model Open Source.