Bei der Anwendung eines umfassenden Electronic Software Update (ESU)Ein Software-Update von Oracle für JD Edwards, das Fehler behebt oder neue Funktionen einführt. – wie JN19112 für Financials – stellen Unternehmen häufig fest, dass etwa 10 % bis 15 % ihrer modifizierten Standard-C-Business-Functions (BSFNs)In der Programmiersprache C geschriebene Programmeinheiten, die komplexe Geschäftslogik innerhalb von JD Edwards ausführen. stillschweigend auf den Oracle-Standard zurückgesetzt wurden. Das native Object Management Workbench (OMW)Das zentrale Werkzeug in JD Edwards zur Verwaltung von Objekten, Entwicklung und Versionskontrolle. Merge-Utility scheitert regelmäßig an der Abstimmung komplexer C-Pointer-Manipulationen oder benutzerdefinierter Datenstrukturänderungen, was zu Speicherlecks oder sofortigen Zombie-ProzessenAbgeschlossene Computerprozesse, die trotz Beendigung noch in der Prozesstabelle des Betriebssystems verbleiben und Ressourcen blockieren können. auf dem Enterprise Server zur Laufzeit führt.
Eine benutzerdefinierte BSFNBusiness Functions sind wiederverwendbare Programmeinheiten in JD Edwards, die spezifische Geschäftsregeln oder Datenbankoperationen ausführen. zur Bestandsallokation, die 10.000 bis 15.000 Verkaufsauftragszeilen verarbeitet, sollte in weniger als einer Minute ausgeführt werden. Dennoch dauert dieser Vorgang in vielen JDE 9.2-Umgebungen über eine halbe Stunde aufgrund eines klassischen Anti-Patterns: die Ausführung repetitiver Select- und Fetch Next-Anweisungen auf F4101 oder F4102 innerhalb einer Schleife. Wenn eine Named Event Rule (NER)Eine JDE-spezifische Programmiersprache, die es ermöglicht, Logik grafisch zu erstellen, bevor sie automatisch in C-Code generiert wird. oder eine C-Business-Function bei jeder einzelnen Iteration einen Datenbank-RoundtripDer vollständige Zyklus einer Anfrage vom Anwendungsserver zur Datenbank und die Rücksendung des Ergebnisses. auslöst, beeinträchtigt die Netzwerklatenz zwischen dem Enterprise Server und der Datenbankebene die Performance erheblich.
Die Benennung von Business FunctionsWiederverwendbare Programmlogik-Bausteine in JD Edwards, die spezifische Geschäftsaufgaben ausführen. als rein ästhetische Entscheidung zu betrachten, führt nach unserer Erfahrung zu einem direkten operativen Mehraufwand, der die Zeiten für das Upgrade-RetrofittingDer Prozess, bei dem individuelle Anpassungen nach einem System-Update manuell in die neue Version übertragen werden. um ein Drittel oder mehr aufbläht. Wenn Entwickler benutzerdefinierte C BSFNs oder NERsNamed Event Rules sind eine JD-Edwards-spezifische Programmiersprache, die ohne tiefere C-Kenntnisse erstellt werden kann. willkürlich benennen, schaffen sie technische Schulden, die die typische 6- bis 9-wöchige Upgrade-Entwicklungsphase im Stillen vergrößern. Die Implementierung strenger JDE BSFN Benennungskonventionen für wartbare benutzerdefinierte Objekte stellt sicher, dass benutzerdefinierte B55-, B56- und B57-Objekte innerhalb der Object Management Workbench (OMW)Das zentrale Werkzeug in JD Edwards zur Verwaltung, Entwicklung und Verteilung von Software-Objekten. sofort ihr übergeordnetes System, ihren Funktionsbereich und ihren Ausführungsort (Client versus Server) signalisieren.
Ein einziges falsch verwaltetes jdeAllocEine JD Edwards-spezifische Funktion zur Reservierung von Arbeitsspeicher für Programme. oder ein nicht freigegebener Cache-HandleEin Verweis oder Identifikator für einen temporären Datenspeicher im Arbeitsspeicher. innerhalb einer benutzerdefinierten BSFNBusiness Function: Ein in C geschriebenes Programmodul, das Geschäftslogik innerhalb von JD Edwards ausführt., die in einem hochvolumigen UBEUniversal Batch Engine: Ein Werkzeug zur Ausführung von Berichten und Massendatenverarbeitungen im Hintergrund. wie R42565 aufgerufen wird, kann einen CallObject-KernelEin zentraler Serverprozess, der für die Ausführung der Programmlogik (Business Functions) zuständig ist. in Minuten zum Absturz bringen und sofort Dutzende aktiver Benutzersitzungen auf dieser spezifischen JVMJava Virtual Machine: Die Laufzeitumgebung, in der Java-basierte Anwendungen innerhalb von JD Edwards ausgeführt werden. beenden. Bei der Fehlersuche in instabilen EnterpriseOneDie aktuelle ERP-Software-Suite von JD Edwards (Oracle). 9.2-Umgebungen führen wir persistente Zombie-ProzesseProzesse, die beendet wurden, aber noch in der Prozesstabelle des Betriebssystems aufgeführt sind und Ressourcen blockieren können. und SpeicherlecksFehler, bei denen belegter Arbeitsspeicher nicht mehr freigegeben wird, was den verfügbaren Speicher nach und nach erschöpft. häufig auf gängige Fehler in der JDE BSFN Speicherverwaltung im benutzerdefinierten Code zurückvführen, anstatt auf zugrunde liegende Datenbank- oder OCIOracle Cloud Infrastructure: Die Cloud-Plattform von Oracle für Hosting und IT-Dienste.-MiddlewareSoftware, die als Vermittler zwischen verschiedenen Anwendungen oder Systemkomponenten fungiert.-Probleme.
In unseren Code-Reviews in Dutzenden von JDE 9.2Die aktuelle Version der JD Edwards EnterpriseOne Unternehmenssoftware.-Umgebungen stellen wir regelmäßig fest, dass ein erheblicher Teil der benutzerdefinierten C-Business-Functions (BSFNs)In der Programmiersprache C geschriebene Logikbausteine für Geschäftsprozesse in JD Edwards. – oft ein Drittel bis die Hälfte – unnötigerweise Standard-Oracle-Logik dupliziert. Entwickler klonen oft ganze Module wie B4200310 oder B1200010, nur um eine einzelne Validierung auszuführen, anstatt einen sauberen JDE BSFN jdeCallObjectEine zentrale Programmierschnittstelle (API), um Geschäftsfunktionen innerhalb des JDE-Systems aufzurufen.-Beispielaufruf zu implementieren, um eine wiederverwendbare Business Function auszuführen. Dieser redundante Code führt bei Upgrades zu Problemen, da er die Continuous-DeliveryEin Verfahren, bei dem Softwareänderungen automatisch und regelmäßig bereitgestellt werden.-Updates von Oracle umgeht. Der sauberere Ansatz besteht darin, die Standard-Business-Function dynamisch aus Ihrem benutzerdefinierten C-Code aufzurufen.
Seite 3 von 6