
In oltre vent'anni di recupero di codebaseL'insieme completo di file di codice sorgente che compongono un software o un'applicazione. JDEJD Edwards, un software gestionale (ERP) di Oracle utilizzato per gestire processi aziendali complessi. custom, il fallimento architettonico più persistente che riscontro è trattare le versioni delle Applicazioni Interattive (APPL)Programmi di JD Edwards dotati di interfaccia utente per l'inserimento e la visualizzazione dei dati. come le versioni delle Applicazioni Batch (UBE)Processi eseguiti in background per l'elaborazione massiva di dati o la generazione di report.. Mentre una versione UBE contiene specifiche indipendenti di selezione dati e sequenziamento, una versione APPL è semplicemente un puntatore ai valori delle Processing OptionParametri di configurazione che permettono di modificare il comportamento di un programma senza scriverne il codice. memorizzati nella tabella F983051Tabella di sistema di JD Edwards che contiene l'elenco e le definizioni di tutte le versioni dei programmi.. Fraintendere questa distinzione porta gli sviluppatori a inserire nomi di versione hardcodedValori inseriti direttamente nel codice sorgente, rendendo il software rigido e difficile da aggiornare. all'interno delle Event RulesIl linguaggio di programmazione visuale utilizzato in JD Edwards per definire la logica di business., il che frammenta la codebase e aumenta l'impatto degli upgradeIl processo di aggiornamento del software a una versione più recente e funzionale..

Quando si esegue un ER CompareStrumento JDE per confrontare e unire le differenze tra le logiche di business (Event Rules) di due versioni diverse di un oggetto. su una P4210 o P4310 pesantemente modificata durante un upgrade dalla 9.1 alla 9.2, il costo delle cattive abitudini di sviluppo diventa immediatamente evidente. Variabili criptiche come evt_szName_WD01 o Event Rules (ER) non documentate trasformano un normale retrofitL'attività di riportare le personalizzazioni fatte su una vecchia versione del software all'interno della nuova versione aggiornata. di poche ore in un ciclo di debugging di più giorni. Lo strumento di merge visivo non riesce ad allineare la logica quando le variabili custom mancano di contesto strutturale, portando a corruzioni silenziose della memoria a runtime o a form interconnectIl metodo utilizzato in JD Edwards per passare parametri e dati tra diverse maschere di un'applicazione. interrotti.

Quando una gridUna tabella interattiva all'interno di un'applicazione JD Edwards utilizzata per visualizzare e gestire righe di dati. personalizzata in un'applicazione come P554210 impiega più di dieci secondi per caricare 500 record, i team basisIl team tecnico responsabile dell'installazione, configurazione e manutenzione dell'infrastruttura software e dei server. incolpano immediatamente gli indici del database o le dimensioni della heap JVMLa porzione di memoria dedicata alla Java Virtual Machine per la gestione degli oggetti e dei dati durante l'esecuzione. di WebLogicIl server applicativo di Oracle che ospita l'interfaccia web e la logica di JD Edwards.. Nella stragrande maggioranza degli audit di performance condotti su EnterpriseOne 9.2, l'infrastruttura è perfettamente adeguata; il collo di bottiglia sono le Event Rules (ER)Il linguaggio di programmazione visuale utilizzato in JD Edwards per definire la logica di business senza scrivere codice complesso. sincrone eseguite sul server JASJava Application Server, il componente che trasforma la logica di JD Edwards in un'interfaccia web accessibile via browser. per ogni singola riga. Ottenere tempi di risposta inferiori al secondo richiede di abbandonare lo scaricabarile sull'infrastruttura e concentrarsi sull'ottimizzazione delle performance delle grid APPL JD Edwards per grandi dataset all'interno del runtime engine di JDE.

In una personalizzazione standard dell'ordine di vendita P4210Applicazione standard di JD Edwards utilizzata per l'inserimento e la gestione degli ordini di vendita. con dozzine di righe nella gridInterfaccia a tabella che permette di visualizzare e modificare più righe di dati contemporaneamente., un loop ingenuo "Get Max Grid Rows" durante la validazione può facilmente aggiungere quasi un secondo di latenza UI per transazione. Gli sviluppatori spesso presumono che il runtime di EnterpriseOneLa versione moderna della suite ERP di JD Edwards basata su architettura web. ottimizzi questi loop internamente, ma in realtà valuta ogni cella sequenzialmente, rallentando le prestazioni interattive sui server HTMLComponente che gestisce l'interfaccia utente web e comunica con il server aziendale.. Questo esempio di sviluppo APPLAbbreviazione utilizzata in JD Edwards per indicare un'applicazione interattiva. JD Edwards sulla validazione delle righe della grid mostra come colpire solo le righe modificate, riducendo l'overhead di validazione di oltre l'80%.
Creare un'applicazione per JD Edwards (JDE) richiede una conoscenza approfondita di questo sistema ERP (Enterprise Resource Planning) e delle sue funzionalità. JDE è noto per essere altamente personalizzabile e estendibile attraverso il linguaggio di programmazione JDE, noto come JDE C BSFN (Business Function) o attraverso l'uso di strumenti come Orchestrator. Di seguito, ti fornisco un esempio di come potresti iniziare a scrivere un'applicazione personalizzata in JD Edwards utilizzando JDE C BSFN:

In un tipico ambiente JDE enterpriseJD Edwards EnterpriseOne, un software ERP di Oracle per la gestione integrata dei processi aziendali complessi., una singola tabella custom come la F55101 ha spesso la sua logica di Select, Fetch, Insert e Update duplicata in 15 o 20 diversi APPLApplicazioni interattive di JD Edwards con cui gli utenti interagiscono tramite interfaccia web. e UBEUniversal Batch Engine, programmi utilizzati per elaborazioni massive di dati o generazione di report.. Questo approccio "copia-incolla" alle Event Rules (ER)Linguaggio di programmazione visuale proprietario di JD Edwards per definire la logica di business. crea un enorme onere di manutenzione; una semplice modifica allo schema del database—come l'aggiunta di un campo category code di 10 caratteri—costringe gli sviluppatori a rifattorizzare e testare manualmente dozzine di singoli oggetti. L'adozione di un pattern JDE NERNamed Event Rule, una funzione di business riutilizzabile scritta utilizzando il linguaggio delle Event Rules. table IOOperazioni di Input/Output (lettura, scrittura, modifica) eseguite direttamente sulle tabelle del database. unificato per evitare blocchi ER ripetuti consolida queste operazioni di database in una singola Named Event Rule guidata da azioni.

In ambienti JD Edwards 9.2Suite software ERP di Oracle per la gestione integrata dei processi aziendali. maturi, trovo regolarmente la stessa logica di validazione duplicata in una dozzina o più di punti di ingresso diversi, dai power formTipologia avanzata di maschere JDE che permette di gestire dati complessi in un'unica schermata. personalizzati della P42101L'applicazione standard di JD Edwards utilizzata per l'inserimento e la gestione degli ordini di vendita. alle UBEUniversal Batch Engine: un processo asincrono che esegue elaborazioni massive di dati in background. automatizzate per l'inbound EDIElectronic Data Interchange: standard per lo scambio elettronico di documenti commerciali tra sistemi informatici diversi.. Questa frammentazione si verifica perché gli sviluppatori tendono a inserire la validazione direttamente negli event rulesIl linguaggio di programmazione proprietario utilizzato per definire la logica di business all'interno di JDE. Control Exited/Changed di un'applicazione interattiva (APPLApplicazione interattiva: l'interfaccia grafica utilizzata dagli utenti per operare sul sistema.), rendendola inaccessibile ai processi batch. Per eliminare questo debito tecnico, è necessario disaccoppiare l'esecuzione della validazione sia dall'interfaccia utente che dai runtime batch implementando un pattern di validazione NERNamed Event Rule: logica di business riutilizzabile scritta nel linguaggio nativo di JD Edwards. JDE riutilizzabile per chiamanti APPL e UBE.
Pagina 5 di 13