Neuigkeiten in der Apache OFBiz Community
Die OFBiz News in diesem Monat beschäftigen sich mit den OFBiz Präsentationen der ApacheCon 2016 in Vancouver, weiteren Ideen für die Website und das neue OFBiz Logo, den Ergebnissen der OFBiz Committer Umfrage sowie den Refactoring-Maßnahmen.
Apachecon NA 2016 Vancouver
Für die ApacheCon NA 2016 in Vancouver wurden vier Präsentationen der OFBiz Community angenommen. Leider mußte ein Sprecher seine Teilnahme absagen, so dass letzlich nur zwei Präsentationen gehalten wurden. Die Audioaufnhamen für alle ApacheCon Sessions sind verfügbar auf feathercast.apache.org.
Die Aufnahmen der OFBiz Präsentationen finden sich unter den hier angegebenen Links:
It’s OK Consensus Reached. We’ve Agreed to Disagree!
OFBiz Configuration Only (Or Look No Code!)
Die Community freut sich nun auf die Apachecon EU 2016 in Sevilla, Spanien.
Neue Webseite und Logo Ideen
Es wurden die ersten Entwürfe für die neue Apache OFBiz Webseite diskutiert und bewertet. Die aktuelle Webseite wurde seit einiger Zeit nicht mehr aktualisiert und es wird Zeit, ihr ein neues Look & Feel zu geben. Das Feedback war sehr positiv und es wird nun weiter daran gearbeitet, die Webseite zu verfeinern und fehlende Seiten zu vervollständigen.
Im Zuge der Überarbeitung wurden auch einige Varianten für ein neues Logo diskutiert, welche die neu gestaltete Apache Feder enthalten. Die Community hat entschieden, den Stil und die Schrift des Logos zu verändern, um den korrekten Projektnamen „OFBiz“ wiederzugeben. Es wird bereits daran gearbeitet, Vorschläge für das neue Logo zu entwerfen und vorzustellen.
OFBiz Committers Umfrage
Diesen Monat wurde die erste OFBiz Committer Umfrage durchgeführt. Ziel war es herauszufinden, welche Themen für die Committer wichtig sind und welches die Schlüsselfaktoren sind, um das Projekt erfolgreich voranzubringen. Die Umfrage war freiwillig und es haben 24 von 38 Committer daran teilgenommen.
Die Umfrage lief eine Woche und die Ergebnisse sind im Projekt Wiki unter folgendem Link zusammengefasst: OFBiz Committer Umfrage
OFBiz Code Überarbeitung und Refactoring
Der Fokus lag auch diesen Monat auf der Überarbeitung des Programmcodes sowie dem Refactoring. Eine überarbeitete und deutlich schlankere Version der OFBiz Start Komponente (Start.java) wurde in das Repository eingecheckt. Das Refactoring erforderte eine gute Zusammenarbeit der Community Mitglieder, um den Code zu testen und die korrekte Funktion der neuen Version zu validieren. Ein besonderer Dank geht an Taher Alkhateeb, der diese schwierige Aufgabe aus der aktuellen Refactoring ToDo Liste übernommen hat.
Neue Features und Verbesserungen
Funktionelle Erweiterungen und Optimierungen sowie Updates von Bibliotheken und Source Code Refaktorisierung:
- Weiterarbeit am Form Widget Grid Element (OFBIZ-7029)
- Update der XSD Dokumentation and Entfernen des Listentyps when das Grid Element benutzt wird
- Ersetzen einiger Form Listen durch Grids
- StatsForm.xml benutzt ab jetzt nur Grids, die „searchList“ Form in ecommerce Content Forms NICHT
- Hinzufügen von Links zum Ändern/Löschen von Termen (OFBIZ-6866)
- Hinzufügen eines Uom Deskriptors zum Auswählen und Anzeigen in Rechnung Forms (OFBIZ-7032)
- Upgrade der freemarker jar auf Version 2.3.24 und löschen der jar 2.3.22 (OFBIZ-7041)
- ExampleReportPdfBarcode öffnet sich ab jetzt in einem neuen Fenster (OFBIZ-7036)
- Hinzufügen eines Dropdowns für Tax Auth Combined Id in dem Product Price Creation Screen (OFBIZ-5697)
- Verbessern von PartyTypeAttr durch ein Beschreibungsfeld (OFBIZ-6738)
- Updaten vom Feldtyp von fromDate und thruDate der CustemTimePeriod Entität und entsprechende Änderungen (OFBIZ-5740)
- Verschieben aller Groovy Skripe in den WEB-INF/actions Ordner in allen Komponenten (OFBIZ-6981)
- Umfangreiche Änderungen der Start Komponente (OFBIZ-6783)
- Hizufügen der commons-cli Bibliothek
- Ändern von build.xml im Start Menü, um commons-cli einzubinden
- Setzen eines Standard-Portoffsets von 0, wenn es in build.xml nicht ausgewählt ist
- Komplette Umdefinierung der Befehle, die in „java -jar ofbiz.jar“ übergeben werden, sodass sie commons-cli nutzen
- Enterfernen der ofbiz-Abhängigkeit in „String[] args“ in den jeweiligen Komponenten. Isolierung dieser Abhängigkeit in einer neuen Entitäten Klasse namens StartupCommand.Hierdurch wird ofbiz von „String[] args“ und commons-cli entkoppelt
- Reparieren aller Aufrufe in der Master build.xml, um mit den neuen Befehlen arbeiten zu können
- Reparieren von Config.java, um Abhängigkeiten zum Args Array zu entfernen
- Erstellen einer Hilfsklasse namens StartupCommandUtil, die sich um alle commons-cli Operationen kümmert und deren Implementierung in private Methoden abstrahiert
- Reduzieren der Grösse von main und init in Start.java durch Refaktorisierung
- Erstellen einer Hilfsfunktion namens populateLoaderArgs. Dies ist der erste Schritt zum Entfernen der Abhängigkeiten auf args
- Vereinheitlichen des Exception Modells zu StartupException, dies macht das durchreichen von Exceptions einfacher
- Aufräumen von Code in den besprochenen Bereichen
- Refaktorisieren von Start.java, sodass sie nun 140 Zeilen lang ist und auf high-level Funktionsaufrufe fokussiert ist. Weiterhin wurden die Felder der Klasse auf zwei reduziert, ServerState und Config
- Separieren von AdminPortThread in eine neue Klasse mit einhergender Refaktorisierung
- Entfernen der Klasse CommonsDaemonStart, da jsvc bisher in ofbiz noch nicht Implementiert ist und diese Klasse einer sinnvollen Refaktorisierung im Weg steht
- Allgemeine Refaktorisierung, sodass alle Abhängigkeiten zwischen Klassen explizit in Funktionsaufrufen vorliegen (kein hidden-state und keine Deklarationen)
- Verschieben aller Server-Verarbeitungs-Logik (status, start, shutdown, ..) in eine neue Klasse namens StartupControlPanel. Alle Methoden in dieser Klasse sind statisch, ihre Seiteneffekte betreffen ausschliesslich ihre Parameter
- Hizufügen einiger Apache Copyright Header
- Refaktorisieren von Config.java, durch Aufteilen von Codeblöcken in private Methoden. Der Portoffset in jetzt ein normaler int, statt eines geboxten ints (Integer)
- Die meisten Klassen sind nun final
- Verschieben von Validierunslogik in die StartupCommandUtil Klasse
- Verbessern der Sichtbarkeit von Fehlermeldungen beim Start, zusätzlich kann pretty printing genutzt werden (OFBIZ-6783)
- Beim Neuberechnen der Steuern einer Bestellung können diese nun manuell eingetragen werden (OFBIZ-5935)
- Kleine Verbesserung des „change password“ Screen Titels in ecommerce (OFBIZ-7080)
- Erweitern der OrderAdjustment Entität and Hinzufügen des Feldes isManual (OFBIZ-7078)
- Das Ansehen von Party Content geschieht in einem neuen Fenster (OFBIZ-6364)
- Example -> PDF geschieht in einem neuen Fenster (OFBIZ-7054)
- Die interne Organisation ist nun während der Erstellung einer Quote bereits gesetzt (OFBIZ-6105)
- /example/control/fonts.pdf öffnet sich in einem neuen Fenster (OFBIZ-7035)
- Anzeigen von quantityUom im InverntoryValuation Report (OFBIZ-5288)
- Entfernen der Restriktion, PARTY_ENABLED als ersten Starndardstatus von Party setzen zu können (OFBIZ-7098)
- Verbessern des Edit Promo Screens, der zwei leere Optionen angezeigt hatte (OFBIZ-7091)
- Anzeigen von quantityUom in InventoryByProduct (OFBIZ-5291)
- Anzeigen von quantityUom in production runs (OFBIZ-5289)
- Anzeigen von quantityUom in BoM (OFBIZ-5290)
- Änderung des Button Namens von „Approve Order“ zu „Approve Item“ in PO (OFBIZ-7102)
- Entfernen einiger ungenutzter Screens und ftl Dateien (OFBIZ-6810)
- Ausschliessliche Benutzung von HTTPS in OFBiz (OFBIZ-6849)
- Verschieben des groovy Skripts nach WEB-INF/actions in webpos (OFBIZ-6981)
- Ab jetzt wird cmssite wieder mit „mapkey“ in der URL funktionieren (im trunk). Dieser Codeblock wurde kommentiert während der Arbeit an (OFBIZ-4502) (OFBIZ-7119)
- Erweitern der Product Entiät und Hinzufügen eines Feldes namens serialized (OFBIZ-7079)
- Upgrade von PDFBox auf 1.8.12 wegen einer Sicherheitslücke (OFBIZ-7136)
- Upgrade der hadoop jars in der solr Komponente von 2.6.0 auf 2.7.2 (OFBIZ-7026)
- Hinzufügen eines xls screen Renderers zur Konversion einer Screen Definition, Hinzufügen eines Export Example Buttons im FindExample screen und Hinzufügen eines kompletten Macro ftl Renderer Unit Tests (OFBIZ-6931)
Bugfixes
Funktionale und technische Fehlerbehebungen:
- Agreement Search List benötigt partyIdFrom/partyIdT, sonst schlägt sie fehl (OFBIZ-7030)
- Umbenennen aller ftl Dateinamen in allen Komponente, sodass sie mit Grossbuchstaben beginnen (OFBIZ-7021)
- Noch nicht verwendete Bestellungen werden als Rückgänge angezeigt, wenn ein Rückgang für eine andere, zutreffende Adresse angelegt wird. Ab jetzt werden ausschliesslich teil- oder komplett versendete Bestellungen angezeigt (OFBIZ-7047)
- Reparieren von UiLabel für GeneratedDescription in ordermgr nach Anwenden einer Promotion, die wegen Benutzung von EcommerceUILabels gefehlt hat (OFBIZ-7057)
- Entfernen von redundaten Einträgen von Handlern in Controllern, die common-controller bereits inkludieren (OFBIZ-7044)
- Wenn beim Generieren einer purchase order ein nicht existentes Item als Bulk Item hinzugefügt wird, wird eine NullPointerException geworfen (OFBIZ-7045)
- Nicht existente Bulk items werfen Fehler, wenn ihre qty upgedated wird. Das System versucht SupplierProduct Daten zu bekommen, wenn die Menge upgedated wird. Wenn die productId des Items im Einkaufwagen nicht vorhanden ist, wird nun sichergestellt, dass das System nicht veruscht, den SupplierProduct Datensatz abzufragen (OFBIZ-7046)
- Das Setzen eines neuen Password im „forgot password“ workflow funktioniert hin und wieder nicht und wirft Fehler (OFBIZ-7058)
- CMS speichert keinen „Long text“ (OFBIZ-7050)
- Das Updaten eines leer Blog Artikel Texts funktioniert nicht (OFBIZ-7062)
- Order term description wird nicht gesetzt, wenn ein neuer Termin hinzugefügt oder geändert wird (OFBIZ-7053)
- Pagination in product price funktioniert nicht nachdem ein price angelegt wird (OFBIZ-7067)
- Export widget flt verweist auf einen falschen Ort (OFBIZ-7068)
- Der „Forgot your password“ link auf der Web POS login page, verweist auf eine leere Seite (OFBIZ-7042)
- Pagination Problem in Find Invoices By Due Date (OFBIZ-7070)
- CategoryContent & ProductContent hat eine cachekey problem in einer multi-tenant Umgebung (OFBIZ-7071)
- Der „Send mail“ Button in viewProfile funktioniert nicht (OFBIZ-7075)
- Das DataResource.dataResourceName Feld sollte mindestens 255 Zeichen haben (OFBIZ-7072)
- Asset maintenance pdf hat fehlende UI Labels (OFBIZ-7084)
- Es ist unmöglich, der maintencance eines festen Assets eine neue Notiz hinuzufügen (OFBIZ-7083)
- Beheben eines Fehlers beim Update der Verantwortlicheit einer employee Position. Es gab keine Anforderung, dass der Service als „service-multi“ aufgerufen wird. (OFBIZ-7086)
- Die Liste WorkEffort Reviews wird nicht angezeigt (OFBIZ-7085)
- Beheben eines Konsolenfehlers bei Pagination des Kalender Widgets. Beim Klicken von Pagination Buttons wurde ein Fehler geworfen (OFBIZ-7095)
- Beim Anlegen eines Inventory Items vom Typ „SERIALIZED_INV_ITEM“ mit dem „INV_ON_HOLD“ Status wurde sein Status auf „INV_AVAILABLE“ gesetzt (OFBIZ-7094)
- Der Cash Flow Statement Report ist fehlerhaft (OFBIZ-7089)
- Bei Sales Return gibt es UI Fehler für die top-level Buttons, nachdem ein Rückgang angelegt wurde (OFBIZ-7048)
- Der Status von Sales Return Item ist missverständlich (OFBIZ-7049)
- Service entity auto hat keine Überprüfung auf doppelte Datensätze, wenn ein einzelner Primärschlüssel übergeben wird (OFBIZ-7099)
- Return Pdf wirft Fehler (OFBIZ-7090)
- Product price Regel ohne Konditionen möglich (OFBIZ-6895)
- Der Quote Report zeigt die Bedingungen der Quote nicht an (OFBIZ-5861)
- Wenn der Status eines Rückgangs auf ‚accepted‘ gesetzt wird, sollte auch der Status des Item des Rückgangs auf ‚accepted‘ gesetzt werden (OFBIZ-7101)
- Bei Auswahl des bluelight Themes wird ein FreeMarker template error geworfen (Template inclusion failed) (OFBIZ-7103)
- RUN MRP funktioniert nicht mit mehreren Facilities, es löscht die ‚proposed‘ Anforderung für alle Facilities und legt sie ausschliesslich für die ausgewählte Facility an. (OFBIZ-7097)
- Beheben eines Konsolenfehlers bei Zugriff auf project manager (OFBIZ-7003)
- Beheben eines Fehlers bzgl. fehlender Parameter beim Löschen von workeffort contactmech (OFBIZ-7109)
- IN /accounting/control/globalGLSettings ist die Zahl der GL Accounts falsch. Es sind immer n20 Items im PDF Report, gleiches gilt für den XML Export. the number of GL accounts is wrong: always 20 items in PDF report list and same problem with XML export in the same screen (OFBIZ-7038)
- Bei abgeschlossenen Bestellungs Item sollte die verbleibende Menge for 0 gesetzt werden. (OFBIZ-7093)
- Die Backordered Flag sollte nicht für Service Produkte angezeigt werden (OFBIZ-7092)
- Beheben eines Fehlers im Unterbaum von workEffort, es treten hier fehler auf, wenn der Nutzer den Baum von seinem Wurzelknoten aus kollabiert (OFBIZ-7114)
- Beheben eines Fehlers im Items Update in Product Backlog (OFBIZ-7116)
- Beheben eines Fehlers beim Hinzufügen eines Ausnahmetages in der manufacturing Komponente (OFBIZ-7131)
- ‚Acctg Trans Entries PDF‘ im „payment details“ Screen funktioniert nicht (OFBIZ-7100)
- Fix der UI, um die Zusammenfassung des Einkaufwagens in der ecommerce Komponente konsistent mit anderen Bereichen zu machen (OFBIZ-7133)
- Hinzufügen einer Existenzprüfung um Stack Traces im „return links“ ftl zu verhindern (OFBIZ-7134)
- Hinzufügen eines fehlenden content-type in ExampleReportXLs um mime als Dateitypen zu forcieren (OFBIZ-6931)
- Beheben eines Konsolenfehlers, wenn zur „update party email address“ View navigiert wird. (OFBIZ-7130)
Dokumentation
- Entfernen von Code, der seit 2008 mit „TO BE REMOVED“ gelabelt war. (OFBIZ-7043)