Dienstag, 8. Dezember 2020

Better Access Charts: Quelle für Chart.js

Das Projekt Better Access Charts basiert darauf, Charts mittels der Bibliothek Chart.js zu erstellen und diese dann im Webbrowser-Steuerelement anzuzeigen. In dieser Beschreibung steckt auch schon das Problem: Wir brauchen Chart.js.

Am Anfang habe ich die Bibliothek von Chart.js in einem Unterordner im Datenbank-verzeichnis gespeichert. Technisch hat das funktioniert. Aber was ist mit Leuten, die das Projekt einfach nur mal schnell ausprobieren wollen?
Eine Datei herunterzuladen und einen Button zu drücken ist das eine. Vorher erst noch eine Anleitung zu lesen und dann eine bestimmte Datei in einem bestimmten Verzeichnis bereitstellen ist schon etwas ganz anderes.

Für mich Bestand die Lösung darin, die Bibliothek für Chart.js von einem CDN, einem Content Delivery Network zu laden. Das ist einfach und bequem und der erstmalige Benutzer kommt wieder in den Genuss von herunterladen und Button klicken.
Aber was nun, wenn der User kein Internet hat? Dann ist die Lösung über das CDN keine Lösung mehr.

Meine Lösung besteht aktuell darin, dass ich dem Programmierer überlasse, welchen Weg er gehen will. Dazu habe ich eine neue Eigenschaft bereitgestellt: ChartJsSource. Dort kann ich als mögliche Werte "CDN" oder "LocalFile" auswählen. Standardmäßig ist hier CDN ausgewählt.

Wenn ich CDN ausgewählt habe, kann ich in der Eigenschaft "ChartJsCDN" die URL zum gewünschten CDN angeben. Ich muss es aber nicht. Aktuell ist hier Cloudflare als Standardwert hinterlegt.

Wenn ich "LocalFile" auswähle, kann ich den Pfad und Dateinamen zu Chart.js über die Eigenschaft "ChartJsPathFilename" festlegen. Auch diese Eigenschaft hat einen Standardwert: CurrentProject.Path & "\Chart.min.js".
Natürlich kann ich den Pfad beliebig ändern. Wenn ich Better Access Chart in mehreren Anwendungen im Einsatz habe, will ich ja nicht in jedem Anwendungsverzeichnis einen Unterordner für Chart.js anlegen.

Das folgende Codebeispiel zeigt die neuen Eigenschaften im Zusammenspiel:

In Zeile 3 wird festgelegt, dass chart.js von einer lokalen Datei geladen wird. In Zeile 4 ist dann der zugehörige Pfad und Dateiname zu finden.

Mit diesen neuen Eigenschaften kann der Programmierer die Einbindung von Chart.js individuell auf seine Gegebenheiten einstellen.

Die aktuelle Version von Better Access Charts steht wie immer auf GitHub bereit:
https://github.com/team-moeller/better-access-charts

Keine Kommentare: