Fragensteller
Wann wird es neue moderne Entwicklungswerkzeuge für den MS-Office-Bereich geben?

Frage
-
Wir entwickeln komplexe Anwendungen für den MS-Office-Bereich in Kombination mit dem SQL-Server. Als Desktop-Lösung im Zugriff auf den SQL-Server verwenden wir überwiegend MS-ACCESS. Die Rückmeldungen unserer Kunden fällt hinsichtlich des Designs und der Anwendungsmöglichkeiten immer heftiger aus. Alle unserer Kunden verwenden moderne Handy's mit supermodernen Steuerelementen und Anwendungsmöglichkeiten. Sie vermissen, oder fordern, ähnliche Möglichkeiten in der Anwendung von MS-Office. Es ist Ihnen nicht zu erklären, warum es diese Möglichkeiten bei Microsoft nicht gibt.
In MS-ACCESS sind Steuerelemente (List-Control, Kombinationsfeld, Drop-Downmenüs, …) vorhanden, die es schon in MS-ACCESS 2.0 in unveränderter Form gab. Dies ist mittlerweile mehr als 20 Jahre her – hier ist unbedingter Handlungsbedarf gegeben! Microsoft sollte sich nicht nur auf Themen wie Cloud und KI und anderen Trendthemen konzentrieren. Ihre größte Anwenderschaft, so vermute ich, sind die MS-Office-Anwender – die sollten Sie nicht verlieren. Seitdem die Entwicklung von VB 6.0 eingestellt wurde, gibt es auch keine freien Entwickler mehr, die Steuerelemente oder andere Standards für die Entwicklung von MS-Office-Anwendungen entwickeln. Dies kann doch nicht gewollt sein – oder? Können Sie mir bitte mitteilen, wann hier eine Änderung zu erwarten ist.
Ulrich Eul
- Bearbeitet Admin_TimeStudy Freitag, 8. November 2019 09:06
Alle Antworten
-
Hi Ulrich,
seit über 10 Jahren steht die alternative Technologie "Add-Inns für Office" zur Verfügung. Damit trägt Microsoft dem modernen Trend der Nutzung von Nicht-Windows-Nutzern Rechnung. MS-Office läuft heute auch auf anderen Plattformen wie beispielsweise Android. Die Add-Inns werden im AppStore abgelegt und können dann von dort mit allen Rechtemöglichkeiten ins Office geladen werden. Dort wird die Oberfläche des Add-Inn in einem Fenster rechts neben der Office-Oberfläche (z.B. ExcelSheet) in einem eingebetteten Fenster mit einer Browser-Instanz angezeigt. Der Code des Add-Inn nutzt das Client-Objektmodell der Office-Komponente für die Interaktion. Dieser Code wird in JS geschrieben. Es stehen dabei alle Möglichkeiten zur Verfügung, die bei Nutzung von JS auch in einer Web-Oberfläche genutzt werden können. So bietet z.B. css vielfältige Möglichkeiten der Anpassung der Oberflächenelemente an ein modernes Design.Der Handlungsbedarf besteht damit nicht auf der Seite von Microsoft, sondern auf der Seite der Anwendungsentwickler, die sich von der alten Technologie verabschieden müssen und mit nicht vernachlässigbarem Aufwand umlernen müssen. Hinzu kommt die Notwendigkeit der Bereitstellung der Infrastruktur in Form von SharePoint für den App-Store.
--
Best Regards / Viele Grüße
Peter Fleischer (former MVP for Developer Technologies)
Homepage, Tipps, Tricks- Bearbeitet Peter Fleischer Freitag, 8. November 2019 10:30
-
Hallo Peter,
unsere Kunden wünschen einfache und schnelle Lösungen und keine komplizierten. Möglichst mit wenig eigenem Aufwand in der Installation der Applikationen. Der Mittelstand im Bereich der Anwender und auch die Entwickler kleinerer Softwareunternehmen werden damit völlig überfordert. Kannst du mir bitte zu den von dir genannten Möglichkeiten Tutorials oder Beispiele zeigen, wie eine solche von die dargestellte Integration unterschiedlicher Plattformen in MS-Office realisiert werden klann.
Viele Grüße
Ulrich Eul
-
Hallo Ulrich,
ich würde mal hier starten:
Plattformübersicht für Office-Add-Ins
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport -
Hallo Peter,
noch einmal im Nachgang, in MS-ACCESS finde ich diese Art der AD-Inns nicht. Wenn MS-ACCESS doch für alle MS-Office-Versionen angeboten wird, warum werden die Entwicklerwerkzeuge nicht aktualisiert. Der Kunde zahlt doch auch für MS-OFFICE-Professional oder für eine MS-ACCESS-Lizenz? Ich finde ja den Ansatz der Weiterentwicklung der Microsoftprodukte völlig in Ordnung, aber für nicht komplexe Anwendungen sollte er handelbar sein. Es werden nicht überall Cloud- oder Azure-Ansätze benötigt, wo ein SQL-Server völlig ausreichend ist. Ich denke, es kann dort auch zweigleisig verfahren werden - oder wird darüber nachgedacht MS-ACCESS aus MS-Office zu streichen? Wenn nein, dann sollte eine Weiterentwicklung erfolgen. Gerade die einfache Anbindung an in MS-ACCESS integrierte Steuerelemente machen doch den Charme der Anwendung und der damit verbundenen effizienten Programmierung in der Datenbankprogrammierung aus.
Viele Grüße
Ulrich Eul
-
Ich kann den Frust von Ulrich ein Stück weit nachvollziehen.
Ok, wer heute noch mit VBA rumdoktert, ist selber schuld!
Allerdings habe ich vor einiger Zeit mal wieder ein Add-In für Word entwickelt. Die Idee war natürlich die Office-js Api (Word-Web-Addin) zu verwenden. Gescheitert ist das schon beim Versuch ein paar Bilder aus einem lokalen Ordner zu verwenden... Außer Base64 ist da nix möglich gewesen. Das war dann schon das Todesurteil für diese Technik! Weil auch hier kein Azure oder Sharepoint in Frage kam, ist ja schließlich auch eine Kostenfrage... Und mal ehrlich, im Store habe ich kein Addin gefunden, das so interessant für mich ist, das ich es mal ausprobieren möchte.
Demnach ist meiner Meinung nach diese Api nicht wirklich brauchbar, zumindest nicht für meine Anforderungen oder die meiner Kunden!
Aber mit den derzeitigen Möglichkeiten eines VSTO- Addin's kann man schon so gut wie alles realisieren. Ok, an dieses altertümliche Ribbon mit seinen "Dutzend" Controls bist du erstmal gebunden. Aber sobald du ein Forms-UserControl nimmst, kannst du in diesem eine XAML- UserControl (WPF) hosten und eigene Dialoge natürlich auch mit XAML- Windows (WPF) verwenden. Damit kannst du deine Anwendung schon sehr "modern" gestalten.
Also sehe ich auch irgendwo einen Handlungsbedarf bei MS. Entweder die Office-js Api so weiterzuentwickeln, das man sämtliche Möglichkeiten des heutigen VSTO nutzen kann oder VSTO weiterentwickeln, das man ohne Krücken die derzeit gängigen Techniken (WPF [ist ja schließlich auch schon 13 Jahre alt]) nutzen kann.
Gruß
Freiberufler im Bereich Softwareentwicklung Von der PLC und Robotik zu VB.NET & C#, vorrangig WPF und UWP
-
Hi Ulrich,
Access ist nur in der Prof. Version enthalten und nimmt damit auch eine Sonderstellung ein. Auf Nicht-Windows-Systemen gibt es kein Access und damit sind natürlich auch keine Add-Inns notwendig. Solange Access mit einer eigenen mdb bzw. accdb arbeitet, ist es nur als Ein-Platz-System problemlos nutzbar. Erst mit einem SQL Server im Hintergrund wird die Access-Oberfläche mehrplatzfähig.In jedem Fall ist bei ausreichender Qualifikation der Entwickler eine Access-Oberfläche genau so schnell mit Access-VBA wie mit WPF und VB.NET erstellbar (jedenfalls für mich). Mit WPF sind dagegen sind alle modernen Designs nutzbar. Insbesondere mit dem MVVM Entwurfsmuster kann Logik und Design getrennt werden, so dass vom Anwender gewünschte Design-Veränderungen sehr schnell und einfach ausgeführt werden können. Hinzu kommen die Möglichkeiten der Verteilung einer WPF-Anwendung, die genau so einfach sein kann wie die Weitergabe einer Access-Datei mit dem VBA-Code. Wenn die VBA-Anwendung gut strukturiert ist (Geschäftslogik in Klassen ausgelagert), dann reduziert sich auch der Aufwand für eine Konvertierung nach VB.NET.
Problematisch bei dem Ganzen ist lediglich das Erlangen der für eine effektive Arbeit erforderliche Qualifikation der Entwickler (Einarbeitung in WPF).
--
Best Regards / Viele Grüße
Peter Fleischer (former MVP for Developer Technologies)
Homepage, Tipps, Tricks -
Hallo Peter,
danke für deine Antwort. Der Vorteil in der Nutzung von MS-ACCESS ist für mich auch darin begründet, dass in MS-ACCESS ein Reportgenerator integriert ist und der Abfragemanager hat hinsichtlich des Einsatzes von SQL-Befehlen durchaus auch seine Vorteile.
Leider habe ich bisher noch keine Antwort auf meine grundsätzliche Frage erhalten, ob die Entwicklungswerkzeuge in MS-ACCESS weiterentwickelt werden oder nicht? Ich bin sehr viel in Industrieunternehmen unterwegs und sehe sehr häufig, dass für kleinere DB-Auswertungen, Statistiken, BDE-Auswertungen MS-ACCESS eingesetzt wird, das sollte nicht unterschätzt werden.
Für mich ist es einfach nicht einzusehen, dass ich eine einfachere Entwicklungsumgebung gegen eine komplexere eintauschen soll, die mir und dem Kunden letztendlich keinen Vorteil bringt. Auch die einfache und durchgängige MS-Office-Integration ist sehr vorteilhaft.
Viele Grüße
Ulrich Eul
-
Hallo Ulrich,
eine definitive Antwort wirst Du, wenn überhaupt, nur von Microsoft selbst, nicht von den Forenteilnehmern bekommen.
Aber meine Einschätzung ist: Das, was Du gerne hättest, wird es eher nicht geben.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport -
Hi Ulrich,
die letzten 20 Jahre haben gezeigt, dass Microsoft keine bzw. nur sehr geringfügige Weiterentwicklungen in der COM-Welt durchgeführt hat. Ich erwarte da auch keine Wende, da es inzwischen viel effektivere Mittel gibt. Dazu zählt für mich insbesondere WPF.Einen Reportgenerator ähnlich Access habe ich nicht vermisst, da in WPF mit Vorlagen (templates), Nutzersteuerelementen und den Basis UI-Elementen wie DataGrid, ListBox und ListView mit weniger Aufwand Listendarstellungen erzeugt werden können, die auch in viel umfangreicheren Maße gestaltet werden können.
Anstelle des Abfragemanagers stehen z.B. der xsd-Designer und der EF-Generator zur Verfügung, die mit gleicher Effektivität Datenschemata in die Programmlogik einbinden lassen.
Dass in viel Industrieunternehmen für kleiner Auswertungen noch breite Access genutzt liegt nach meiner Erfahrung weniger an den Möglichkeiten von Access als an der Gewöhnung der Entwickler und dem fehlenden Zeitfond, sich die aktuellen Technologien anzueignen.
Für mich ist es einfach nicht einzusehen, dass ich eine einfachere Entwicklungsumgebung gegen eine komplexere eintauschen soll, die mir und dem Kunden letztendlich keinen Vorteil bringt. Auch die einfache und durchgängige MS-Office-Integration ist sehr vorteilhaft.
Diese Aussage ist aber ein Widerspruch zu Deinen ursprünglich genannten Forderungen. Du willst moderne, komplexere Oberflächen entwickeln, die dafür bereitgestellte mächtige Entwicklungsumgebung aber nicht nutzen, weil sie neben den einfachen Möglichkeiten (wie in Access) auch recht komplexe Möglichkeiten zur Verfügung stellt. Die MS-Office-Integration ist nicht durchgägig. Jedes MS-Office-Produkt hat ein von deanderen Produkten teilweise stark abweichendes Objektmodell. Das muss man sowohl in VBA als auch in VB.NET berücksichtigen.
--
Best Regards / Viele Grüße
Peter Fleischer (former MVP for Developer Technologies)
Homepage, Tipps, Tricks