Wat is Jeks?
Jeks is een Java® spreadsheet op basis van de Swing® JTable component en de JeksParser bibliotheek die wiskundige uitdrukkingen berekenen.

Eigenschappen;
  • Gebruik van formules in cellen met behulp van een ruime reeks operatoren en functies.
  • Gebruik van geparametriseerde functies met behulp van door gebruiker gedefinieerde uitdrukkingen.
  • Geoptimaliseerde berekening met behulp van gecompileerde formules en functies.
  • Controle van circulaire referentie in formules.
  • Geoptimaliseerde actualisering van formules die verwijzen naar andere cellen.
  • Knippen / Kopiëren / Plakken met automatische verschuiving van celreferenties in formules.
  • Gebruik van de locale voor spreadsheet en syntax in formules.
  • Opslaan / open bestanden in spreadsheetformaat.
  • Handleiding.
  • Herbruikbaarheid: het bestaande data model of tabel kan eenvoudig verrijkt worden met functies van Jeks.
  • Uitbreidbaarheid: Als JTable onderdeel kan Jeks uitgebreid worden met meer functies (celattributen, grafieken, ...).

Systeemvereisten
  • Minimum JRE: 1.4.2


Jeks op een eComStation machine met Open JDK


Installeren van Jeks
Download jeks_1.0.2.zip. Maak op je harde schijf een nieuwe map(directory) met de naam "jeks". Open het zip-bestand en je ziet dan de map(directory) "jeks_1.0.2". Open deze map(directory). Open de map(directory) "map" en kopieer de bestanden "Budget.jks" en "Loan.jks" naar de nieuwe map(directory) "jeks". Je hebt de "*.bat" of de "*.sh" bestanden niet nodig omdat deze niet voor ons systeem zijn gemaakt. Het html bestand is voor het starten van het programma JeksDisplay in een browser, maar vooralsnog lijkt dit niet te gaan met onze versie van Java. Kopieer vervolgens de map(directory) "images" naar de nieuwe map(directory) "jeks". Open de map(directory) "lib" en kopieer alles naar de nieuwe map(directory) "jeks". Gebruik deze methode als je wil dat onderstaand opdrachtbestand werkt.

Het gebruikte cmd bestand
Jeks werkt met Open JDK in OS/2-eCS. Ik heb een "jeks.cmd" bestand met de volgende inhoud;
@echo off
rem Java 1.4.2
rem SET JAVA_HOME=[station: java]\JAVA142
rem set BEGINLIBPATH=[station: java]\JAVA142\bin
rem set path=[station: java]\JAVA142\bin
rem Java 1.6.0
rem set PATH=[station: java]\JAVA160\bin
rem set BEGINLIBPATH=[station: java]\JAVA160\bin
rem Java 1.6.0ga5
set BEGINLIBPATH=[station: java]\JAVA160ga5\bin
set path=[station: java]\JAVA160ga5\bin
set CLASSPATH= 
[station: jeks]
cd [station: jeks]\jeks
java -Duser.home=[station: jeks]\jeks -cp jeks.jar com.eteks.jeks.JeksFrame 2>jeksbugs.txt
Ik gebruik 2 aparte mappen(directories), een voor Java en een voor Jeks. De in het cmd bestand gebruikte verwijzingen;

  • [station: java] = station met Java
  • [station: jeks] = station met Jeks

moet worden vervangen door echte schijfletters. Bewerk en sla het bestand "jeks.cmd" uit de distributie op. Dit bestand wordt gekopieerd naar de "jeks" map(directory). Verder kunnen paden anders zijn, pas dit naar behoefte aan.
In het commandfile voorbeeld zie je ook geremde regels voor andere Java versies. Als je één van deze versies wil gebruiken, moet je de "rem" verwijderen en voor de regels van Java160ga5 een "rem" plaatsen. Ik heb het programma getest met Java142 en met Java160ga5.

Maak een nieuw programma object aan. Geef pad en de bestandsnaam op: "[station: jeks]\jeks\jeks.cmd". In het tabblad Sessie de selectievakjes "OS/2 venster", "Starten als pictogram" en "Venster sluiten bij einde programma" aanvinken. In het tabblad Algemeen kan bij naam "Jeks" worden opgegeven.

Parameters / opties verklaard
  • De opgave "2>jeksbugs.txt" zorgt ervoor dat alle probleem meldingen (bugs) worden bewaard in het bestand "jeksbugs.txt". De 2 in "2>" is geen typefout! Het bestand blijft op mijn systeem leeg.

In het zip bestand "jeks-ecs.zip" zijn ook de bestanden "jekscalc.cmd" en "jekspt.cmd" aanwezig. Het bestand "jekscalc.cmd" is op dezelfde manier opgebouwd als bovenstaand voorbeeld, alleen de regel die begint met "java ..." verschilt. Dit opdrachtbestand start een rekenmachine.

Jeks calculator op een eComStation machine met Open JDK


Het andere bestand "jekspt.cmd" doet een prestatietest. Het bestand is op dezelfde wijze opgebouwd als bovenstaand voorbeeld, met weer dat de laatste regel die begint met "java ..." verschilt. Deze applicatie kan worden gebruikt om de gemiddelde berekenings snelheid van verschillende functies met JeksParser en hun Java tegenhanger te vergelijken in een snelheidsmeter dialoogvenster. Zie foto hieronder. Ik doe nog steeds alles op een P4 single core en ik weet niet of het traag of snel is, het interesseert me niet.

Jeks prestatietest op een eComStation machine met Open JDK


Download
In het bestand zit bovenstaand cmd bestand (alle schijfletters staan op C:) en een OS/2 Jeks icoontje: jeks-ecs.zip.

revisie 5 mei 2017