L'application d'un ESUMise à jour logicielle électronique fournie par Oracle pour corriger des bogues ou ajouter des fonctionnalités dans JD Edwards. Oracle à une application de base fortement modifiée comme la Saisie des Commandes de Vente (P4210) ou la Saisie des Réquisitions (P4312) est l'étape où les délais de mise à jour déraillent fréquemment. Bien que des outils comme ER CompareOutil de JD Edwards permettant de comparer et de fusionner les différences entre deux versions de règles d'événements. existent depuis des décennies, les développeurs corrompent encore régulièrement les spécificationsMétadonnées stockées dans la base de données qui définissent le comportement et l'apparence des objets JD Edwards. locales ou perdent de la logique métier critique car ils traitent la fusion comme un simple exercice de copier-coller mécanique. Dans une mise à jour typique de 9.1 vers 9.2, les applications interactives (APPLAbréviation pour Application Interactive, un programme avec lequel l'utilisateur interagit via une interface graphique.) représentent une part relativement faible des objets modifiés, environ 10 % à 20 %, mais elles comptent pour plus d'un tiers des rapports d'incidents post-mise en service en raison de fusions manuelles mal exécutées.

En plus de deux décennies de sauvetage de bases de code JDE personnalisées, l'échec architectural le plus persistant que je vois est de traiter les versions d'applications interactives (APPLApplications interactives de JD Edwards permettant aux utilisateurs de consulter et modifier des données via une interface graphique.) comme des versions d'applications batch (UBEUniversal Batch Engine : programmes de traitement par lots utilisés pour générer des rapports ou traiter de gros volumes de données.). Alors qu'une version UBE contient des spécifications indépendantes de sélection de données et de séquençage, une version APPL est simplement un pointeur vers des valeurs de Processing OptionsParamètres permettant de modifier le comportement d'un programme sans modifier son code source. stockées dans la table F983051Table système centrale stockant les définitions des versions et leurs options de traitement.. Une mauvaise compréhension de cette distinction conduit les développeurs à coder en dur les noms de versions dans les Event RulesLangage de programmation spécifique à JD Edwards utilisé pour définir la logique métier des applications et rapports., ce qui fragmente le code (forking) et alourdit l'empreinte de vos mises à niveau.

Lors de l'exécution d'un ER CompareOutil de comparaison et de fusion de code entre différentes versions d'objets JD Edwards. sur un P4210Application standard JD Edwards dédiée à la gestion des commandes de vente. ou P4310 fortement modifié pendant une mise à niveau de 9.1 vers 9.2, le coût des mauvaises habitudes de développement devient immédiatement évident. Des variables cryptiques comme evt_szName_WD01 ou des Event Rules (ER)Langage de programmation interne à JD Edwards pour définir la logique métier des applications. non documentées transforment un rétrofitProcessus consistant à réappliquer des modifications personnalisées sur une nouvelle version logicielle standard. standard de quelques heures en un cycle de débogage de plusieurs jours. L'outil de fusion visuelle ne parvient pas à aligner la logique lorsque les variables personnalisées manquent de contexte structurel, ce qui entraîne des corruptions de mémoire silencieuses au moment de l'exécution ou des ruptures d'interconnexions de formulaires.

Lorsqu'une grille personnalisée dans une application comme P554210 met plus de dix secondes à charger 500 enregistrements, les équipes techniques blâment immédiatement les index de la base de donnéesStructure de données améliorant la vitesse de récupération des informations dans une table. ou la taille du heap JVMMémoire vive allouée à la machine virtuelle Java pour stocker les objets et données d'application. de WebLogicServeur d'applications Java d'Oracle qui héberge les composants web de JD Edwards.. Dans la grande majorité des audits de performance menés sur EnterpriseOne 9.2, l'infrastructure est parfaitement saine ; le goulot d'étranglement réside dans les Event Rules (ER)Langage de programmation spécifique à JD Edwards pour créer la logique métier des applications. synchrones s'exécutant sur le serveur JASServeur Java (Java Application Server) qui gère l'interface web et les interactions utilisateur. pour chaque ligne. Obtenir des temps de réponse inférieurs à la seconde nécessite d'arrêter de pointer du doigt l'infrastructure pour se concentrer sur l'optimisation des performances de la grille APPL JD Edwards pour les grands jeux de données au sein même du moteur d'exécution JDE.

Dans une personnalisation standard de commande client P4210Application standard de saisie des commandes clients dans JD Edwards. comportant des dizaines de lignes de grille, une boucle naïve « Get Max Grid Rows » lors de la validation peut facilement ajouter près d'une seconde de latence à l'interface utilisateur par transaction. Les développeurs supposent souvent que le runtime EnterpriseOneLa suite logicielle ERP complète développée par Oracle. optimise ces boucles en arrière-plan, mais il évalue en réalité chaque cellule de manière séquentielle, ce qui dégrade les performances interactives sur les serveurs HTML. Cet exemple de développement APPLTerme technique désignant une application interactive au sein de JD Edwards. JD Edwards sur la validation des lignes de grille montre comment cibler uniquement les lignes modifiées, réduisant ainsi la charge de validation de plus de 80 %.
Page 1 sur 2