Zoho Books Forecasting – plattformübergreifende Qt-Desktop-Anwendung

Zoho Books Forecasting ist eine Desktop-Anwendung zur Visualisierung der finanziellen Entwicklung und zur Erstellung von Prognosen für Unternehmen, die die Zoho Books-Plattform für die Buchhaltung und die Überwachung ihrer finanziellen Situation nutzen. Obwohl es sich um eine Anwendung mit einer recht einfachen Benutzeroberfläche handelt, bietet sie umfassende Funktionen zur Darstellung der Einnahmen, Ausgaben und des Cashflows des Unternehmens und erweitert die Funktionalität der Zoho Books-Plattform.

Technologies used

Die Idee hinter der Anwendung

Eine der wichtigsten Prioritäten für jedes Unternehmen ist der Ertrag. Erfolgreiche Unternehmen würden ihre Ziele nie erreichen, wenn sie nicht die Möglichkeit hätten, ihre finanzielle Situation zu analysieren.

Die Idee zu diesem Projekt kam von einem der Geschäftsführer der Firma Scythe Studio. Er wollte seine tägliche Arbeit einfacher und effizienter gestalten. Leider verfügt Zoho Books nicht über eine Funktion zum Hinzufügen von Prognosen, die sich auf die zukünftige finanzielle Situation des Unternehmens auswirken, bietet jedoch eine API zum Abrufen aller Einnahmen und Ausgaben, die die Entwicklung der Anwendung ermöglichte.

Die Entwicklung eigener Tools war für Scythe Studio schon immer eine Metaebene. Wir entwickeln nicht nur Software, die unseren Bedürfnissen entspricht, sondern wir verbessern unsere Fähigkeiten, indem wir uns neuen Herausforderungen stellen. Wir glauben auch, dass reale Beispiele für potentielle Kunden von Vorteil sind, da sie unsere Fähigkeiten und die Art der Dienstleistung, die wir anbieten können, besser einschätzen können.

Technische Seite – Qt Widgets und Qt Charts sind der Hammer!

Aus technischer Sicht verwendet die Anwendung einen relativ einfachen Technologiestack:

1. Qt für den Webanforderungsteil und Qt Widgets für die Benutzerschnittstelle;

2. C++ für die Datenverarbeitung

3. Zoho API als Dienst eines Drittanbieters;

Trotz des Einsatzes einer begrenzten Anzahl von Technologien konnten wir eine funktionsreiche, plattformübergreifende Desktopanwendung erstellen, die sich problemlos für alle wichtigen Desktopplattformen wie Windows, macOS und Linux kompilieren lässt. Ein Ansatz, den wir bei Scythe Studio immer verfolgen, ist es, den Technologie-Stack niedrig zu halten. Mehr über diese Art der Softwareentwicklung erfahren Sie in unserem Blogbeitrag „Low technology stack with Qt – saved money“.

(Jedes einzelne Stack-Element wird in „Qt Framework for Application Development“ beschrieben.)

Hier ist das Diagramm, das zeigt, wie die Anwendung die Daten von der Zoho API abruft und anzeigt.

Zoho Books Forecasting Feature

In diesem Abschnitt möchten wir Ihnen die Funktionen der Anwendung und einige Anwendungsbeispiele vorstellen. So sieht die Anwendung beispielsweise aus:

Wie auf dem Screenshot zu sehen ist, kann der Benutzer den Zeitraum auswählen, über den die Daten beobachtet werden sollen, das Diagramm anpassen und die Dateneinheiten in der Tabelle darunter überprüfen. Darüber hinaus gibt es eine Reihe kleinerer Funktionen, wie die Möglichkeit, das Thema der Anwendung zu ändern, die Daten zu sortieren, zu filtern usw.

Wie bereits erwähnt, ist die Hauptfunktion der Anwendung die Erstellung von Finanzprognosen. Öffnen Sie die Registerkarte ‚Prognosen‘ und fügen Sie eine Prognose hinzu. Ein Beispiel wäre die Miete für ein Büro in London.

Wie Sie auf dem Screenshot sehen können, hat sich das Diagramm sofort nach dem Hinzufügen einer neuen Ausgabe geändert. Beachten Sie, dass sich auch die Cashflow-Reihe geändert hat. Wie Sie wissen, ist die Büromiete eine monatlich wiederkehrende Ausgabe. Glücklicherweise haben wir eine nette Funktion, mit der Sie eine Ausgabe als „wiederkehrend“ markieren können.

Die Ausgaben wiederholen sich nun jeden Monat und werden in der Tabelle angezeigt. 

Wenn Sie nur die aktuelle Situation im Unternehmen sehen möchten, können Sie die Prognosefunktion ausschalten.

Jetzt zeigt das Diagramm nur die neuesten Daten, ohne zukünftige Ereignisse zu berücksichtigen.

Qt-Framework zur Entwicklung von Desktop-Anwendungen

Das Qt-Framework wurde als Basis für die Entwicklung der Anwendung gewählt, da es eine breite Palette an benutzerfreundlichen Tools bietet, die die Entwicklung dieser Art von Anwendungen bequem und schnell machen. Es ist auch erwähnenswert, dass es für uns wichtig war, die Anwendung plattformübergreifend zu gestalten, weshalb Qt ein perfekter Kandidat war. Außerdem sind wir eine Gruppe von Qt-Entwicklungsexperten und offizieller Qt Service Partner, so dass die Wahl für uns ganz natürlich war.

Die Benutzerschnittstelle wurde mit Hilfe von Qt Widgets implementiert. Dieser Teil des Frameworks bietet die Möglichkeit, den visuellen Teil der Anwendung schnell zu entwerfen, und man braucht nicht viel Zeit, um sich damit vertraut zu machen. Auch wenn es den Anschein hat, dass Qt Widgets nur ein Werkzeug für die einfache Entwicklung der Benutzeroberfläche ist, ist dies nicht der Fall. Wenn Sie einige benutzerdefinierte Elemente oder komplexe Logik benötigen, ist Qt Widgets ebenfalls eine gute Wahl, da es ein weites Feld für Kreativität bietet.

Der größte Teil der Anwendungslogik wird in C++ geschrieben, da dies eine der effizientesten Programmiersprachen ist. Diese Effizienz bietet die Möglichkeit, Daten schnell zu manipulieren und den UI-Elementen zur Verfügung zu stellen. Außerdem war C++ für uns eine gute Wahl, da der in dieser Sprache geschriebene Code leicht auf andere Plattformen portiert werden kann. 

Kontaktieren Sie uns, wenn Sie Qt für Ihr Projekt evaluieren möchten

Das Ergebnis des Projektes

Die Entwicklung der Anwendung war eine interessante Erfahrung, aus der wir einiges gelernt haben:

● Qt Widgets ist eine perfekte Wahl für die schnelle Entwicklung von Anwendungen, die keine sehr fortgeschrittene Benutzeroberfläche benötigen.

● Der Bedarf an firmenübergreifender Entwicklung ist die perfekte Gelegenheit für Entwickler, ihre Fähigkeiten zu verbessern, sich neuen Herausforderungen zu stellen und mehr über verschiedene Entwicklungstools zu erfahren.

● Es gibt keine Idee, die nicht mit modernen Softwareentwicklungswerkzeugen, einem geeigneten Entwicklerteam und einem gut durchdachten Managementprozess umgesetzt werden kann.

Wenn Sie eine Anwendungssoftware entwickeln lassen möchten oder eine Idee haben, aber nicht wissen, wie der Entwicklungsprozess aussieht, zögern Sie nicht, uns um Rat oder einen Vorschlag zu bitten!

Der Quellcode des Projekts ist auf dem offiziellen Scythe Studio GitHub-Profil verfügbar.