Réussissez la mise à jour EPM Cloud 25.08 (moteur Groovy)

Réussissez la mise à jour EPM Cloud 25.08 (moteur Groovy)

Publié le samedi 09 août 2025 à 13h27

Réussissez la mise à jour EPM Cloud 25.08 (moteur Groovy)

Mise à jour du moteur Groovy - ce que vous devez absolument savoir

Dans le cadre de la version 25.08 d’EPM Cloud, une mise à jour du moteur Groovy, prévue le 15 août 2025 sur vos applications de production et déjà disponible depuis le 1er août 2025 sur vos applications de test, offre un moteur de validation plus strict pour les scripts Groovy. Certaines règles qui étaient valides jusqu’à présent pourraient désormais échouer à la validation et nécessiter des ajustements. Voici nos retours qui visent à compléter les informations communiquées par Oracle dans la documentation officielle : Résolution des problèmes de validation des règles Groovy

Points clés à retenir

  • Validation uniquement sur les règles déployées
    Le nouveau moteur de validation analyse exclusivement les scripts des règles métier déployées. Les règles non déployées ne sont pas concernées.

  • Impact sur les imbrications de règles et templates
    Ceci est plutôt un rappel : en cas d’imbrications (règles ou templates incluant d’autres règles ou templates), chaque règle et template inclus doit être déployé après avoir effectué les corrections. La mise à jour de la validation s’appliquera alors correctement à l’ensemble des règles imbriquées.

  • Déclaration "def" à éviter
    Jusque-là, les déclarations de variables pouvaient se faire de manière très générique (et floue) avec le type "def". Les bonnes pratiques encourageaient à déclarer les types de manière explicite : "String member" au lieu de "def member", "Double valeur" au lieu de "def valeur". Vous aurez sans doute à effectuer ces changements de déclaration, sous peine de devoir faire des casts au moment de récupérer certaines valeurs : cela est un exemple donné dans la documentation officielle par ailleurs.

Exemples d’ajustements de scripts à prévoir

Voici quelques exemples pour vous aider à comprendre les modifications à effectuer dans vos scripts :

Exemple d'erreurs Avant Après
The Groovy script failed to compile with internal error: Compile Error: [Static type checking] - Cannot find matching method
java.util.Date#format(java.lang.String).
Please check if the declared type is correct and if the method exists.
@ line 36, column 37.
String Today = new Date().format("yyyyMMdd") String Today = new SimpleDateFormat("yyyyMMdd").format(new Date())
The Groovy script failed to compile with internal error: Compile Error: [Static type checking] - Cannot find matching method
java.util.Date#minus(int).
Please check if the declared type is correct and if the method exists. @ line 144, column 13.
Date now = new Date()
Date before120Days = now - 120
String sDateJ = now.format("yyyyMMdd")
String sDateJ120 = before120Days .format("yyyyMMdd")
Date now = new Date()
Date before120Days = Calendar.instance.with { it.add(Calendar.DAY_OF_YEAR, -120); it.time }
String sDateJ = new SimpleDateFormat("yyyyMMdd").format(now)
String sDateJ120 = new SimpleDateFormat("yyyyMMdd").format(before120Days)
The Groovy script failed to compile with internal error: Compile Error: [Static type checking] - Cannot assign value of type java.lang.Object
to variable of type int @ line 47, column 20. [Static type checking] - Incompatible generic argument types.
Cannot assign java.util.List to: java.util.List @ line 54, column 10.
def listOfStrings = [] List listOfStrings = []

 

Où trouver le nouveau moteur de validation ?

Le moteur de validation fonctionne sur le principe d'un job : pour le lancer, il faut aller dans la section "Overview" puis dans le menu "Action", cliquer sur le dernier item "Groovy Script Validator". Le job est alors visible dans la console des jobs, et lorsque celui-ci est terminé (dans notre cas nous avons observé une durée inférieure à 1 minute), le rapport est un fichier HTML à télécharger depuis la page "Inbox/Outbox Explorer" :

1 - Lancer le Groovy Script Validator

 

2 - Le message d'information suivant s'affiche

3 - Le job est en cours de traitement

 

4 - Le job est terminé

5 - Les détails du job indiquent que le rapport au format HTML est disponible

 

6 - Dans l'Inbox/Outbox Explorer, le rapport est disponible au téléchargement

 

7 - Exemple de rapport du moteur de validation Groovy

Visez une taille du rapport HTML de 1.3KB !

Au fur et à mesure des corrections apportées et déployées, vous devriez voir la taille du rapport fondre comme neige au soleil. Lorsque la taille indiquée est de 1.3KB, il est très probable que vous ayez terminé car le fichier ne contiendra alors que les entêtes :

 

En dernier recours, utilisez la commande skipupdate

Si vous avez réussi à valider l'ensemble de vos règles Groovy et ainsi obtenu un rapport de validation vide comme montré précédemment, félicitations ! Votre application EPM Cloud est prête et sécurisée sur la partie Calculation Manager.

Dans le cas contraire, ou si vous avez tout simplement besoin de plus de temps, vous avez toujours (a priori) la possibilité de reporter la mise à jour en utilisant la commande EPM Automate skipupdate.