Was ist neu in Access 2016?

Access 2016 Desktop

Für die klassischen Access-Desktop-Anwendungen gab es ja schon in Access 2013 keine Neuerungen. Zukünftig sind eher weitere Abkündigungen zu erwarten wie unter Access 2010 das Kalender-Steuerelement oder unter Access 2013 der Bereitstellungsassistent und das Source Code Control Add-in. Wer nur Access-Desktop verwendet, der wird auch von Access 2016 enttäuscht sein und kann getrost weiter Access 2007 oder Access 2010 benutzen (Access-Desktop 2013 war graphisch ohnehin ein Rückschritt). Auch am Objektmodell wurde nicht gearbeitet, sprich, für Programmierer gibt es auch nichts Neues. Etwas Neues konnte ich in Access 2016 tatsächlich entdecken: Der neue Datentyp BigInt wurde eingeführt um Access kompatibler zu SQL Server zu machen, dBASE Datei-Support wurde wieder eingeführt und Microsofts Online Backend-Datenbank Azure wird offiziell via ODBC Treiber unterstützt.

Excel hingegen entwickelt sich in Office 2016 weiter, z.B. mit einer besseren Unterstützung von extrem großen Tabellen von mehreren 100 Mio. Zeilen aus verschiedensten Datenquellen wie SAP Business Objects, Hadoop und Salesforce. Mal ganz ehrlich, wäre es nicht sauberer dies mit Access zu bewerkstelligen? Dazu spendieren die Redmonder gleich noch ein halbes Dutzend neuer Charts: TreeMap, Sunburst, Waterfall, Box & Whisker und Histogram & Pareto.

Office 365

Das Access Entwickler-Team arbeitet leider nur noch sporadisch an Access, denn Microsofts Politik gibt wie immer die Marschrichtung vor und die heißt O365 (Office 365), bzw. Abonnements für Office Online verkaufen, denn genau das ist O365: Das klassische Office Desktop plus Office Online (weil es Office Online gibt heißt das bisherige Office zur Unterscheidung Office Desktop). Allerdings kann man innerhalb von Office Desktop auch einige Office Online Funktionen nutzen (sofern man ein Abo hat). Wer Office Online nutzen will, der muss bereit sein ein Leben lang für dieses Abonnement zu zahlen. Access User sollten also sehr genau hinschauen und prüfen was Office Online für diese neue monetäre Abhängigkeit bietet. Die Vorteile von einem starken Access-Desktop, gepaart mit einem starken Online Backend, wären genial. Aber nein, Access-Desktop scheint für Microsoft keinen strategischen Wert mehr zu haben. Mehrere Hunderttausend Access Anwendungen weltweit haben scheinbar keine Bedeutung für Microsoft. Abgesehen von 4 Familienmitgliedern, bekommen ausschließlich zahlende Office 365 Abonnenten zu Office Online Zugang; für alle anderen heißt es: "Du kommst hier nicht rein!". Das sind Offene Technologien in einem geschlossenen System. "...only available to those with Office 365 ProPlus E3 and E5" heißt es jetzt. Für Office 365 ProPlus gibt es tatsächlich neue Verbindungsmöglichkeiten zu OData Feed, Dynamics CRM, Salesforce and Amazon Redshift.

Access Web Apps sind tot

Microsoft wirft nach 3 Jahren das Handtuch: "Die Erstellung neuer Access-Web-Apps (AWA) und Access-Webdatenbanken in Office 365 und SharePoint Online wurde Juni 2017 eingestellt. Verbleibende Web-Apps und Webdatenbanken werden im April 2018 deaktiviert." Grade mal 1 Jahr haben AWA Entwickler um ihre Apps mit SharePoint PowerApps zu ersetzen. InfoPath wird dagegen erst 2026 abgeschaltet. Auch Access Services für SharePoint werden bald eingestellt. AWA waren eigentlich ein sehr interessanter Ansatz, aber letzten Endes war es nur ein erneuter, halbherziger Versuch, Access-Usern die Möglichkeit zu geben, auf die eigenen Daten auch Online zugreifen zu können. Nicht mal die ohnehin schon zu wenigen Steuerelemente die Access bietet wurden in AWA vollständig übernommen. Ein halbfertiges Werkzeug dessen Apps dann nur innerhalb von SharePoint laufen? Rohrkrepierer! AWA sind gescheitert, nicht weil die Idee nichts taugte, sondern weil Microsoft seine politische Richtung schneller wechselt als eine Idee zu Ende gedacht wird. Es wäre zu schön gewesen um wahr zu sein, eine eigene Datenbank im Internet, Web-Content in Access erstellen, alles per Knopfdruck hochladen und synchronisieren - aus der Traum! Sehr schade, denn das Erstellen von Web-Anwendungen ist alles andere als trivial. Selbst die neue VisualStudio 2017 ASP.NET Core 2.0 MVC6 Technologie zeigt abermals wie unglaublich komplex das Programmieren von WebDataApps heute immer noch ist. Es ist sogar noch wesentlich komplexer geworden als zu Zeiten von WebForms.

Das abrupte Ende von AWA ist fatal genug, aber warum wurden auch noch Access-Webdatenbanken komplet abgekündigt? Bisher konnte man SharePoint-Daten in Access-Offline-Modus sehr effektiv nutzen. Das war ein starker Wettbewewerbsvorteil gegenüber Google, aber offensichtlich will Microsoft auch das nicht. Was ist denn bitte die Strategie dahinter? Etwa Selbstmord? Eine lokale Datenbank ist schneller, billiger und sicherer als jedes Mal die Daten quer durchs unsichere Internet zu jagen. Die SharePoint-Azure Datenbanken befinden sich dazu noch im Ausland (kein einziger deutscher Server! Im besten Fall liegen die Daten in Amsterdam oder Dublin). SharePoint ist einfach keine Lösung für jeden. Auf Access als Design-Tool für SharePoint kann man evtl. verzichten doch PowerApps müßten dafür Makros unterstützen undas ist Z.Z. nicht der Fall. Im Grunde führt Microsoft einen Krieg gegen seine eigene Win32 Desktop Technologie. Win32 soll auslaufen und damit auch Access. Ein König stirbt ohne Nachkommen. Oder kommt bald Access für die Universal Windows Platform (UWP)? Aber dann bitte mit Support für ASP.NET Web-Server statt für SharePoint Server. Übrigens, weil es UWP gibt heißt die "alte" Windows Technologie jetzt Win32 (UWP wurden auch Metro-Apps, Surface-Apps, Windows-Store-Apps oder Windows-Mobile-Apps genannt).



Wie geht es weiter?

VisualStudio ist zu komplex und die relativ einfach zu programmierenden WebForms sind im Prinzip schon Internet-Fossilien, denn in .NET Core wurden WebForms bereits abgeschafft. LightSwitch war zwar im Ansatz auch eine tolle Idee, ist aber seit jahren tot. Bereits seit 2014 wurde LightSwitch nicht mehr weiterentwickelt. LightSwitch unterstützte weder Reports, noch den Zugriff auf Access Datenbanken (es gab auch keinen direkten Importassistenten). LightSwitch für ASP gibt es ohnehin nicht. Wo ist also bitte der UWP-Nachfolger für LightSwitch? Hat Microsoft etwa Probleme seine eigenen Produkte nach UWP zu portieren? Gibt es überhaupt irgendeine UWP-Killer-App?

Windows Phone ist auch offiziell abgekündigt und damit ist die UWP deutlich weniger universell geworden. UWP Apps laufen also neben Windows Desktops jetzt nur noch auf Surface Tablets und der XBox - also eine reine Microsoft-Show um irgendwie universel zu sein. In den USA wird über UWP gespottet: "TVs and Phones dont have it, Gamers hate it, developers ignore it, consumers don't use it." Wenn Microsoft dann den Tabletmarkt auch noch aufgibt, dann ist nichts mehr mit universell und Microsoft wäre dann dort wo Microsoft herkommt: Auf dem Desktop. Jenen Desktop den Microsoft momentan scheinbar aufgibt, womit eine Landung auf dem Hintern natürlich vorprogrammiert wäre. UWP konnte bisher den klassischen Win32-Desktop-Anwendungen jedoch nicht das Wasser reichen und daher ist UWP auf dem Desktop für viele eher eine Plage als Fortschritt. UWP waren bisher mobile Apps für einen scheiternden mobilen Markt, der jetzt krampfhaft ein Desktop-Erfolg werden soll. Für Schüler ist die UWP-Only Version namens Windows 10S vielleicht ein Markt, doch scheitert UWP auf dem Desktop, was ja technisch gesehen bisher der Fall ist, dann fährt Microsoft seine Key Desktop-Strategie gegen die Wand. Aber selbst, wenn sich die UWP auf Desktops durchsetzen würde, wozu eine MobileApp auf dem Desktop ohne einen mobilen Markt? Xamarin MobileApps haben die Nachfolge angetreten: Apps für Android, iOS und seit 2016 auch für Win10. Auch VisualStudio 2017 hatte neben Cloud-Integration primär Xamarin-Erweiterungen als klaren Schwerpunkt. Also noch mehr klobige PhoneApps auf dem Desktop? Programmierer der klassischen VisualStudio UWP-Apps können sich auf jeden Fall schon mal überlegen, wie sie die bereits veralteten UWP-Apps nach Xamarin portieren.

Windows - Was war das mal noch?

Das Konzept namens "Windows", sprich, überlappende Fenster scheint heute vor dem Aussterben bedroht zu sein. Die Windows 8 UWP-Apps waren doch tatsächlich reine Full-Screen-Apps und in LightSwitch gab es nur ein Dachreiter gesteuertes UI (tabbed vs. windowed browsing). Das ist natürlich kaum akzeptierbar, wenn man bedenkt, dass sogar fast alle jQuery Frameworks "windows" innerhalb von Browsern unterstützen. Und genau so wurde Windows 8 auf die Funktionalität eines Browsers oder eines Smartphones reduziert. In Windows 10 hat man diesen Unfug zum Glück behoben. Trotzdem sind HTML/JavaScript-Apps für mobile Geräte konzipiert worden und sehen auf dem Desktop viel zu klobig aus. Die Steuerelemente sind für Daumen und Zeigefinger auf kleinen Touch-Screens ausgelegt und nicht für die Maus und Ultra-HD Bildschirme. Hallo Microsoft! Ich bin ein Desktop-User und ich bin NICHT Sehbehindert! Begreift das doch bitte mal!

Aktuelle Trends

Ein grundsätzliches Problem bleibt also auch unter Access 2016 bestehen: Stagnation auf dem Desktop bzw. Abkündigung des Win32 Desktops. Das ist schon sehr Verwunderlich zumal der Desktop-Bereich Microsofts primäre Stärke war. Windows 10 soll angeblich die letzte Win32 Version sein und irgendwann danach wird es wahrscheinlich keinen Support mehr für klassische Win32-Desktop-Anwendungen geben. Wird sich UWP also zum neuen Windows entwickeln? Mobile Apps kontaminieren zwar den Windows-Desktop, aber Windows-Desktop hat keine Roadmap zu UWP. Niemand kauft Windows 10 wegen ein paar windigen Apps. Den Win32-Desktop wird es tatsächlich jedoch noch bis ca. 2030 geben, sprich, es wird noch 4-5 weitere Windows-Desktop Editionen geben (ca. alle 3 Jahre).

Desktop War

Das anvisierte Ziel lautet: Eine Software für alle Bildschirmgrößen und für alle Betriebssysteme. Im Browser wurde dieses Ziel schon erreicht und dabei wurde ein mächtiger Standard definiert: HTML5 und JavaScript (90% Marktanteil im Browser). Auf dem Desktop herrscht dagegen Krieg. Google bietet für Chrome-Apps seit 2013 Desktop-System-Dienste an (z.B. für WebCam, USB, Bluetooth, etc.). Mit Cordova können so Hybrid-Apps erstellt werden die im Browser laufen als auch als native Anwendung (kein Windows Support!). Praktisch ist dabei die automatisierte Bereitstellung und Aktualisierung der Anwendung. Web-Programmierer entwickeln also heute Desktop-Apps. Chrome Storage (Local & Sync) sind jedoch nur sehr triviale Dienste für kleine Datenmengen, sodass ein Vergleich mit Access-Desktop natürlich keinen Sinn ergibt. Microsoft schlug mit VisualStudio 2015 zurück und spendierte einen Android Emulator, Python und Node.js Support. Sprich, Windows-Programmierer entwickeln Android und iOS Apps.
Ein Problem sehe ich trotz allem bis Dato als ungelöst: Desktops und Handhelds sind Äpfel und Birnen. Ich will keine MobileApp auf meinem Desktop. Professionelle Apps müssen für das Ausgabegerät optimiert sein (Apple hat das übrigens von Anfang an besser verstanden). Leider herrscht jedoch immer noch ein gewaltiger Mobile-First Trend der große Bildschirme und Mäuse nur langsam zurückerobert. Irgendwie tun alle so als würde man nur noch mit dem Smartphone am Flughafen arbeiten oder mit dem Tablet im Fahrstuhl - als ob es uncool wäre an einem Schreibtisch zu sitzen. Tatsache ist vielmehr, das 85% der MobileApps reine Junk-Entertainment-Programme sind. Während Google sich den Kopf über Offline-Szenarien zerbricht, stopft Microsoft alles in den Browser was geht, schwächt den Win32-Desktop-Markt und schaltet die Sharepoint-Offline-Option in Access ab.

Microsofts PowerApps

PowerApps ist ein neues Online-Design-Tool für SharePoint mit einem UI für Tablet-User. Desktop-User würden möglicherweise sagen: ein UI für Menschen mit Sehschwäche (tatsächlich entwickelt Microsoft laut Microsoft by the Numbers Technologie für 246 Mio. Menschen mit Sehschwäche). Die Anzahl verkaufter Access Lizenzen taucht in dem Bericht hingegen nicht auf. Ausgabegeräte für PowerApps sind Smartphones und Tablets. Die Entwicklungsumgebung hat in etwa die Steuerelemente von Access, die Programmierbarkeit basiert allerdings nur auf dem Prinzip von Excel-Formeln. Somit ist die Programmierbarkeit sehr eingeschränkt und bietet keinen vollwertigen Ersatz für Access. Man kann jede Datenquelle anzapfen die man sich vorstellen kann oder direkt aus Excel importieren. Leider gibt es keine direkte Anbindung zu Access Datenbanken. Für Firmen die zu SharePoint migrieren wollen ist das das einzige Angebot. Hier ein WhitePaper für AWA Entwickler.

PowerApp ist ein nettes neues Spielzeug für SharePoint, ersetzt aber nicht die Funktionalität von AWA. Fragt sich also eins: Wo bleibt Microsofts neues HTML5/JavaScript basiertes RAD-Werkzeug (Rapid Application Development) für UWP Apps? Access wird es nicht sein und VisualStudio auch nicht. Preis: Für Entwickler und Administratoren von Apps €33,70 pro Benutzer pro Monat. Wer sein Abo nicht lebenslang bezahlt für den ist die Show beendet.

WebApps To Go

WaveMaker z.B., eine RAD Umgebung aus Indien, kann all das was Access heute eigentlich längst können müsste. Es basiert serverseitig hauptsächlich auf Java und im Browser auf JavaScript und Angular JS. Auch die unterstützten Connect-Datenbanken können sich sehen lassen: MySQL, HSQLDB, Oracle, PostgreSQL, SQLServer. Zum bequemen Upload werden jedoch nur MySQL .sql Dateien unterstützt, leider aber keine Access Dateien. Der Zugang zum Online-Design-Tool kostet $250 pro Monat für Programmierer. Nach Fertigstellung der App ist man Eigentümer der eigenen App und bezahlt nur noch fürs Hosting. Leider funktioniert selbst in der Version 9 noch längst nicht alles so wie man es erwarten würde. Z.B. muss man um ein banales hierarchisches Navigationsmemü zu erstellen eine JSON Datenstruktur eintippen, mit eckigen und geschweiften Klammern. Wenn man sowas in HTML schneller erledigt, hat das dann natürlich nichts mehr mit RAD zu tun. Der Support ist vormittags schnell, aber es hilft wenig, wenn die Antwort ständig lautet: "Wir werden Ihren Vorschlag an unser Entwicklerteam weiterleiten".
Zwei weitere Online-RAD-Schmieden sind Caspio und Airtable. Wer hier jedoch nicht jeden Monat brav sein Abo bezahlt, der verliert den kompletten Zugang zu seinen Daten samt allen Apps. Ab 50 Usern ist Caspio immerhin billiger als SharePoint.
Zend Studio nutzt serverseitig PHP und kostet nur €89. Leider ist Zend jedoch keine RAD Umgebung, sodass es etwas länger dauern wird bis man individuelle CRUD-Funktionen erstellt. Reizvoll ist jedoch: Die Apps laufen über jeden beliebigen PHP/MySQL Web-Server. (PHP hat einen Marktanteil von 82%, ASP.NET 17% und Java 3%.) Zend nutzt Dojo Steuerelemente. Open Source CRUD-Generatoren für PHP/MySQL gibt es allerdings zahlreiche: Mit Grocery CRUD z.B. braucht man für AccessApp ähnliche Funktionen gerade mal 4 Zeilen PHP Code (Bootsrap Demo).
Aber die gute alte Access-Desktop-Power im Web? Geht das? Die Brasilianer machen es mit ScriptCase tatsächlich für $298/Jahr möglich: Access-Datenverbindung, Blanko-Anwendungen, Sicherheit, Raster, Berichte, Charts...endlose Möglichkeiten. Und alles läuft auch nach Ablauf des Abos auf jedem Apache 2.5 / PHP 7 Server. Für $600 gibt es eine lebenslange Lizenz inkl. 12 Monate Updates für die ScriptCase Software die per Windows-Installer installiert wird und über localhost im Browser läuft. Das ist noch kein Access-Nieveau, denn Software-Development im Browser für Browser ist einfach noch nicht so weit. ScriptCase bietet sogar ein Datenbindung für Access-Dateien an, doch leider Probleme mit dem ODBC-Treiber. Und auch hier muss noch viel nachgebessert werden: Die Chat-Anwendung und auch Teile des UI sind auf Portugiesisch, teilweise antwortet niemand im Support-Chat, Lernvideos mit nervigem Akzent, "Fatal error: Uncaught Error" beim erstellen einer MySQL Datenbank, fehlende Zugriffsrechte, Demos mit Fehlern wie URL /scriptcase/app/businessintelligence/menu_sales/ was not found on this server....
Software-Development aus der Desktop-Anwendung für Browser ist einfach immernoch unschlagbar. Das zeigt eindeutig der Dashboard Designer von Syncfusion. Das Win32-Desktop-Meisterwerk stellt selbstverständlich spielend einfach eine DSN-Datenverbindung zu Access her ... und los gehts! RAD in seiner Vollendung! Leider nur für Dashboard-Chart-Anwendungen und weniger für Formulare und Berichte.
Wem das noch zu kompliziert ist der kann ZOHO eine Mobile-First WebApp spielend einfach erstellen. ZOHO bietet einen Access-Integration-Service an.

JavaScript kann fast alles

Es ist wirklich beeindruckend was in den JavaScript Frameworks der letzten Jahre erschaffen wurde: Ein wirklich tolles Beispiel dafür wie eine WebApp heute aussehen sollte ist webix (Demo). webix bietet eine kostenlose Standart-Edition an und der Code ist schön kompakt. Kendo UI und Wijmo bieten auch sehr hochwertige Steuerelemente an. Und so wird es SharePoint bei der massiven und rasanten Entwicklung im Web zusätzlich schwer haben. Es vergeht ja kaum ein Wochenende ohne ein neues Open-Source-Web-Framework. Der enorme Erfolg von Access wird mit PowerApps nicht wiederholt. Weitere Beispiele: Bootstrap/Angular JS, AngularJS/PHP/MySQL.

Desktop Datenbank Nr. 1

Der große Vorteil von Access-Desktop ist, dass man mit VBA kein Code-Guru sein muss und trotzdem tolle Anwendungen recht schnell und sauber entwickeln kann. Man kann mit wenigen Kenntnissen anfangen und kann die Anwendung weiterentwickeln ohne zu schnell an Grenzen zu stoßen. Obwohl Microsoft schon seit Ankündigung von .Net (2002) die Weiterentwicklung von Access-Desktop nahezu aufgegeben hat, gibt es seit mehr als 20 Jahren nichts Vergleichbares. Sogar WinForms in VisualStudio war nie eine Alternative, weil hier der Aufwand zehn Mal höher ist um an dasselbe Ziel zu kommen. Davon abgesehen werden auch WindowsForms seit .Net 2.0 (2006) nicht mehr weiterentwickelt. Das einzige Produkt welches VisualStudio auf die Beine hilft ist DevExpress. Für $999 (pro Jahr!) kann man dann immerhin eine moderne MDI-WPF-Desktop-Anwendungen entwickeln. Es dauert etwa 20 Mausklicks und 1 Tasse Kaffee und man hat per Assistent eine vollständige CRUD-Desktop-Anwendung im schönen Stiel von Office 2010 oder für Anspruchslose auch im Office 2013/16 Design. Aber nur wenn alles rund läuft, sonst landet man durchaus mal mit einer Exception mitten im Programmcode der Entity-Framework Klassen. Das schreit natürlich geradezu nach Support, was die jährlichen Kosten auf $2.199 hochtreibt.

Geht O365 den Bach runter?

Microsoft hatte 2014 rund 30 Prozent mehr Abonnenten für Office 365 Home und Personal (also einschließlich Access). Allerdings wurden massenhaft Office 365 Personal Abos verschenkt, sodass der Konsumerumsatz mit Office real um ein Viertel zurück viel. Ausgerechnet das kostenlose O365 für Entwickler beinhaltet jedoch kein Access. Für 2015 war die Rede von 124% mehr Abonnenten. Laut Microsoft derzeit 70 Mio., davon 25 Mio. in 2015. Seit 2016 fällt die Anzahl neuer Abonnenten jedoch dramatisch ab. Möglicherweise wegen enttäuschten privaten Nutzern die nicht so sehr von O365 profitieren können wie mobile Arbeitsgruppen und ihr Abo deshalb nicht verlängern (allein Emails per Outlook Online auf meinem Handy zu lesen rechtfertigt den Preis z.B. nicht). Makaber, aber das sind sehr gute Nachrichten für Access, denn unerfüllte Erwartungen von Office Online zwingt Microsoft zur Rückbesinnung auf den Desktop.

O365 liefert einige Dienste die Abhängigkeiten schaffen könnten. Allein den Outlook Kalender mit anderen Kollegen zu Teilen ist für viele unverzichtbar geworden. Microsoft arbeitet hart daran neue Office 365 Dienste zu integrieren und User mehr an diese Online-Dienste zu binden. Ein wirklich tolles Beispiel ist die Online-Colaboration in Word 2016. Gemeinsam in Echtzeit mit anderen Usern an einem Dokument zu arbeiten ist ein tolles Erlebnis. Das gibts aber bei Google kostenlos.

Fazit

UWP liefert nicht nur nichts Gleichwertiges, sondern gar keine Desktop Datenbank. Daher ein dreifaches Hurra auf Win32! Access ist und bleibt DER Desktop-Datenbank-Standard für weitere 10-20 Jahre. Win32 Desktop samt Access ist ein schwärer Frachter ohne Kapitän und ohne Roadmap. Access-Apps sind abgekündigt und sollen von PowerApps ersetzt werden. MobileFirstApps auf dem Desktop sind ein Schritt rückwerts. Es gibt keine RAD-Lösung für WebApps mit der Qualität von Access. Lang lebe der Win32-Desktop, Windows und die Maus!