Workshops (Protokolle)

Bisher fanden drei Workshops rund um das Thema AppDesigner und Entwicklung statt. Der Teilnehmerkreis setzt sich zusammen aus Geschäftsführern und Entwicklungsleitern von unserer Business Partnern, sowie Entwicklungsleitern, Produktevangelist, Programm-Verantwortlichen und Entwicklern von Sage.

Im Folgenden werden die Protokolle dieser Workshops aufgelistet.

Partnertreffen mit Entwicklern der S10-Gruppe am 28.06.2018 

Protokoll 

Teilnehmer 

  • Peter Hertel, Kühn&Hertel Software AG (Partner WEKO) 
  • Bernhard Kirsch, Teamleiter Entwicklung Datatronic 
  • Ronny Borchert, Entwicklungsleiter ISales 
  • Rene Drexler, System AG 
  • Stefan Katins, ISales 
  • Oliver Henrich, Sage 
  • Andreas Langmaack, Sage 
  • Markus Müller, Sage 
  • Florian Schwitzgebel, Sage 
  • Gesine Linke, Sage 
  • Thomas Flügel, Sage 
  • Rudi Schuler, Sage 
  • Günther Kaufmann, Sage 

Allgemeines 

Es finden regelmäßige Abstimmungen innerhalb der S10-Gruppe statt (14 tägig). 

Sage wünscht sich für die nachfolgenden Punkte immer jeweils einen direkten Ansprechpartner für Rückfragen, Klärungen, etc. 

Die Themen sollten mit einer eindeutigen Priorität gekennzeichnet werden.  

Neue Themen der S10-Gruppe 

  • Debugging-Möglichkeiten, Fehlermeldung nur sehr eingeschränkt, Verbesserungen gewünscht. Sage plant hier einen Makro-Debugger (hohe Prio für S10-Gruppe).
  • Welche Version der Metadaten ist beim Kunden installiert? Vorschlag ist, die Version auch beim Kunden auszugeben und ggf. auch einen Fachhändler-Modus beim Kunden zu schaffen, Sage will dies kurzfristig umsetzen 
  • In den Sage-Videos zum AppDesigner sollen auch Best-Practice-Empfehlungen mit aufgenommen werden.
  • Konflikte in Makros beim Anhängen durch mehrere Partner (z.B. Rausspringen aus dem Makro durch einen Partner, wodurch der nachfolgende Makro-Code eines anderen Partners nicht mehr ausgeführt wird) sollen sichtbar werden. Tracelog ist aufgrund der Datenmengen keine Lösung, daher Lösung durch den geplanten Makro-Debugger.
  • Einzelne Punkte im AppDesigner sind nicht ausreichend dokumentiert.
  • Verbesserungs-Vorschläge im AppDesigner-Bereich: Wie sollen sie eingereicht werden? Florian Schwitzgebel macht Vorschläge. Es muss zwischen 3 Kategorien unterschieden werden: Fehler (-> Support), Verbesserung (-> noch zu klären) und Support (-> AppDesigner-Postfach).
  • Aktuell müssen noch viele Dialoge mit Access-Technologie eingebunden werden. Insbesondere sind hier die zahlreichen Unterdialoge der Belegerfassung und entsprechende Partner-seitige Dialoge zu nennen (auch z.B. Popup-Dialoge beim Speichern eines Belegs). Hier sind Erweiterungen der Popup-Dialoge und deren Aufrufe in der neuen Technik notwendig. Solche Dialoge und Aufrufe (Technik und fachliche Umsetzung) sollten nach der Produktion hoch priorisiert werden.
  • Suchen sollen auch in anderen Tabellen erfolgen können (analog zum Suchen nach Kunden-/Lieferanten-spezifischen Artikelnummern). Aktuell besteht hier aber nur der Wunsch nach mehreren EAN-Nummern pro Artikel. 
    Die S10-Gruppe klärt, ob hier eine fachliche Weiterentwicklung in diesem Bereich oder eine generische Funktionalität benötigt wird. Von Sage-Seite wird die fachliche Weiterentwicklung präferiert.
  • Die Prüfung auf fehlerhafte Views, die der Admin bei Updates durchführt, wird bemängelt. Sage hat diese Funktion ergänzt, da es hier durch fehlerhafte Kunden-/Partner-Anpassungen zu Problemen kam. Es wird darum gebeten, diese Fehler zu beseitigen. 
    Es war nicht beabsichtigt, die Updates an dieser Stelle abzubrechen. Sollte es solche Fälle geben, sollen sie über den Support gemeldet werden.
  • S10-Gruppe berichtet, dass beim Öffnen des Artikelstamms über VBA-Code wird nicht immer die Variantennummer übergeben wird. Sage bitte um Meldung beim Support.
  • Die für die Preisfindung gewünschte DCM soll auf dem üblichen Weg beim Professional Service eingereicht werden.
  • Es besteht der Wunsch (keine hohe Prio), zukünftig auch Bilder und Thumbnails in der neuen Oberfläche verwenden zu können.
  • Client-seitig sollen von Sage-Seite keine DCM-Aufrufe erfolgen. Hier stehen die Makro-Ereignisse zur Verfügung und sollen ggf. erweitert werden (siehe auch Popup-Dialoge unter obigem Punkt 7).
  • Es wird von S10-Seite eine Roadmap für die jeweils kommende AppDesigner-Version (8.1 und folgende) gewünscht. 

Vorab von der S10-Gruppe eingereichte Themen 

Nachfolgende Punkte werden jeweils mit einer Zusammenfassung und der vereinbarten weiteren Vorgehensweise eingeleitet. Danach folgt der Originaltext des Ursprungsdokuments (aus Formatierungsgründen als Bitmap). 

Problematik Umbenennen AppDesigner-Lösung 

Die S10-Gruppe berichtet von Problemen beim Umbenennen von Lösungen (Teile werden nicht umbenannt, wodurch Fehler entstehen). 

Antwort Sage: Das Umbenennen von Lösungen wurde nach der Implementierung an zahlreichen Stellen verbessert. Fehler wurden beseitig. Evtl. noch bestehende Rest-Fehler sollen gemeldet werden, da diese nur mit sehr hohem Aufwand vollständig gefunden werden können. 

Die S10-Gruppe merkt an, dass die genauen Fehler nur im Tracelog zu finden sind. Hier wären bessere Fehlermeldungen notwendig. 

Idee ist hier ein neuer Checklauf über die Metadaten, ob alle referenzierten Elemente auch wirklich da sind. 

Im Rahmen der Version 8.1 wird weiter an diesem Punkt gearbeitet. 

  

Gleichzeitiges Arbeiten an größeren Kundenprojekten problematisch, da Lösungsname teilweise Bestandteil von Schlüsseln 

Sage verweist hier auf die TFS-Anbindung, die problemloses Arbeiten mehrerer Entwickler erlaubt und bei Sage auch selbst eingesetzt wird. 

Ein entsprechendes Schulungs-Video wurde bereits zur Verfügung gestellt. 

DCM’s werden nicht immer zuverlässig ausgelöst / kein Tracelog bei DCM Ausführungen 

Die DCM-Schnittstelle wurde von Sage geprüft. Das Problem besteht allein darin, wenn mehrere Partner-Lösungen die gleiche DCM nutzen und sich gegenseitig beeinflussen. Als Lösung wird Sage die DCM-Aufrufe im Tracelog protokollieren, damit die Aufrufe nachvollziehbar sind (geplant für Version 8.1). 


Besseres Konfliktmanagement bei mehreren Lösungen  

  • Lösungen können bereits deaktiviert werden, kleinere Einheiten machen nach Absprache aktuell keinen Sinn 
  • Sage will eine konfigurierbare Lösungs-Reihenfolge schaffen und nicht mehr nur nach aufsteigender Partner-Nummer und aufsteigendem Lösungsnamen sortieren. 
  • Sage will zusätzlich zum „AppendTo“-Mechanismus einen „Replace“-Mechanismus schaffen. 
  • Von Herrn Borchert wurde angemerkt, dass ein solches Ersetzen ggf. auch von Daten abhängig sein soll (Mandanten-Einstellung oder auch Daten des aktuellen Dialogs). 

Ein entsprechendes Konzept wurde vorgestellt und diskutiert. Die Umsetzung soll nach der Version 8.1 erfolgen. 

Eigenes Thema LiveUpdate-Version 

Die S10-Gruppe wünscht sich, dass Live-Updates nur bis zu einem bestimmten Stand (auf dem dann auch die Partner-Lösung basieren würde) eingespielt werden sollen (konfigurierbar in den LiveUpdate-Einstellungen). Aktuell kann immer nur der neueste Stand eingespielt werden. 

Sage nimmt den Punkt auf ins Backlog auf. 

Der in der Besprechung hinzu gekommene Wunsch, LiveUpdates auch bis zu einem bestimmten Stand zurücksetzen zu können, wird gemeinsam als schwierig und fehlerträchtig betrachtet und verworfen. 

Anbindung Versionsverwaltung im AppDesigner (Team Foundation Server, TFS)

Siehe "Gleichzeitiges Arbeiten an größeren Kundenprojekten problematisch, da Lösungsname teilweise Bestandteil von Schlüsseln"

Quellcode/AppDesigner-Dokumentation unzureichend… 

Die S10-Gruppe wünscht sich eine bessere Quellcode-Dokumentation für die zentralen Anwendungs-Objekte (z.B. Beleg-Engine, Lager-Engine, wichtige PPS-DLLs, etc.), insbesondere auch für Werte von Schaltern und deren Folgen. Die Umsetzung über die bereits teilweise bestehenden Quellcode-Kommentare und deren Extraktion ist der Weg hierzu. Die Sage-Entwickler wurden hier bereits um mehr Sorgfalt gebeten. Für die S10-Gruppe hat dies eine hohe Prio. 

Sage bereitet aktuell ein Online-Confluence mit allen Infos zur neuen Technik vor. Der aktuelle Stand wird gezeigt. Er erlaubt auch das Anfügen von anonymen Kommentaren (Beta). 

Außerdem weist Sage daraufhin, dass aktuelle Infos auch auf der AppDesigner-Startseite veröffentlicht werden.

Moderierte Kommunikationsplattform/Wiki für Sage und Developer Partner  

Wurde in "Quellcode/AppDesigner-Dokumentation unzureichend… " mit behandelt. 

Bessere Kommunikation seitens Sage bei „breaking changes 

Breaking Changes werden von Sage aktuell über die LiveUpdate-Texte (unter Kundenaktion), über die Developer Preview, über Webcasts, über Professional Service, über die WDB, etc. veröffentlicht. Primär werden die Live-Update-Texte genutzt. 

Wichtig aus Sicht der S10-Gruppe sind auch Änderungen von DevExpress- und Stimulsoft-Versionen, die bisher nicht immer veröffentlicht wurden. Hier gibt es aber Seiteneffekte auf Partner-Lösungen. 

Problematisch sind auch Änderungen in Hotfixes. Dies versucht Sage zu vermeiden, was leider nicht immer möglich ist. 

Hohe Prio der S10-Gruppe. 

Hilfreich bei „breaking changes“ ist auch die Einschränkung auf bestimmte Live-Update-Stände (siehe auch "Eigenes Thema LiveUpdate-Version").

Bereitstellen Sage Sourcen als PDB-Dateien für Devoloper Partner

PDB-Dateien könnten bei Partnern zum Debuggen genutzt werden, um den Sage-Code besser zu verstehen. Hierzu müssten aber nicht nur die PDB-Dateien sondern auch Debug-Versionen der DLL-Dateien ausgeliefert werden. Eine solche Auslieferung parallel und synchron zu den LiveUpdates ist recht schwierig umsetzbar. Es wird daher besprochen, dass es ohnehin sinnvoller ist, den Sourcecode entsprechend zu dokumentieren (siehe "Quellcode/AppDesigner-Dokumentation unzureichend…"), weshalb diese Lösung vorgezogen wird.

Arbeiten mit dem neuen Applikationsprozess für Developer Partner

Es besteht der Wunsch, den Client-seitigen Isolations-Prozess (externer Prozess) auch durch Partner nutzbar zu machen. Sage stellt dar, dass es sich nur um Microsoft-APIs handelt, die für die spezielle Anforderung genutzt werden. Partner-seitig sollten hier eigene Lösungen genutzt werden.

Konsequentere Umsetzung aller Kontextmenüaufrufe 

Die S10-Gruppe bemängelt, dass Datenklassen oft mehrfach vorhanden sind, was oft unnötig ist. 

Sage will dies schrittweise beseitigen, soweit möglich und sinnvoll. Oft sind diese Mehrfach-Datenklassen historisch bedingt bzw. können durch Metadaten-Erweiterungen unnötig gemacht werden.

AppDesigner-Stabilität (Designer) 

Aktuell bestehen hier nur Probleme im Report-Designer, der Memory Leaks hat. Das Problem wurde von Sage dadurch gelöst, dass der Report-Designer immer wieder in neuen Prozessen gestartet wird. Dies soll die Stabilität gewährleisten. 

Soweit noch Probleme auftreten, soll die S10-Gruppe diese über den Sage-Support melden.

Performance des Frontends 

Die Verbesserungen der Version 8.0.2 haben die meisten Probleme beseitigt. 

Infos von Sage: 

  • Die Performance Messungen werden auch auf Terminalservern vorgenommen. 
  • In der Nutzungsanalyse werden auch Informationen zu den eingesetzten Systemen unserer Kunden gesammelt, so dass diese detailliert ausgewertet werden können. Eine Umfrage ist daher nicht notwendig. 
  • Der benannte XAML-Code wird Sage-seitig geprüft. 
  • Testmandanten sind vorhanden und werden weiter ausgebaut. Kundendaten dürfen und können hier nicht eingesetzt werden.
  • Die benannte und ähnliche SQL-Abfragen entstehen, da diese generisch gebildet werden. Sie sind aber kein Performance-Problem. 

Das von der S10-Gruppe noch bemängelte Cursor-Verhalten (Versatz bei Tippen und Springen) wird in der Version 8.1 durch das neue .NET-Framework behoben.

Fehlende Features

Unter diesem Punkt sind eine Reihe von Unterpunkten zusammengefasst, die nachfolgend beantwortet werden: 

  • Suche in den Metadaten (in SQL) 
    • Hier ist eine Volltextsuche auf allen SQL Eigenschaften/Attributen nach Version 8.1 geplant. 
  • Artikelgruppenbaum bei der Suche 
    • Ist für nach Version 8.1 geplant. 
  • Umschalten der Listen im Adressenstamm auch nach Ansprechpartner 
    • Ist im Rahmen des Features Intelligente Listen für Version 8.1 geplant. 
  • Kontextmenüs, Menüs Einstiegspunkte durchgängig 
    • Siehe "Konsequentere Umsetzung aller Kontextmenüaufrufe" 
  • 1:n:m 
    • Ist für Version 8.1 geplant. 
  • An Datensätze gebundene UX-Elemente haben Probleme mit „sprechenden“ Primärschlüsseln, wenn diese durch den Anwender geändert werden können. 
    • Dies soll so nicht gemacht werden (sprechende Schlüssel). Es soll über eine TAN gelöst werden. Sage hält dies für einen Datenbank-Designfehler. Die Lösung der Anforderung wurde bereits kommuniziert. 




Sage 100 - AppDesigner Workshop 24.10.2017

Protokoll

Autor: Eckhardt Weinholz 

Stand: 26.10.2017 

Teilnehmer

  • Businesspartner: Herr Borchert, Herr Schwarz, Herr Dahms, Herr Rheinicke, Herr Kopp, Herr Kaufmann, Herr Setzepfand, Herr Frommelt, Herr Lipphardt, Herr Kirsch, Herr Langen 
  • Sage: Herr Flügel, Herr Kaufmann, Herr Lauth, Herr Müller, Herr Langmaack, Herr Schwitzgebel, Herr Sprenger, Herr Weinholz

Zielstellung des Workshops

Ziel des Workshops mit den Business Partnern war es, Feedback über das Arbeiten mit dem AppDesigner zu bekommen und gleichzeitig zusätzliche Anforderungen an das Entwicklungswerkzeug der Sage 100, den AppDesigner zu diskutieren und zu bewerten. 

Vorgehensweise

Die Vision, Strategie und die bis heute umgesetzten Themen der Sage 100 wurde den Business Partnern durch Florian Schwitzgebel, dem Produktevangelisten der Sage 100 vorgestellt.  

Die bis heute durchgeführten Ausbaustufen im AppDesigner wurden durch Herrn Weinholz dargelegt. Diese Ausbaustufen ergaben sich einerseits durch den Bedarf der Sage Entwickler für die Umsetzung der neuen Sage 100 Oberfläche und zum anderen durch den vielfältigen Input unserer Business Partner.  

In einer Feedbackrunde schilderte jeder der Teilnehmer aus den Reihen der Business Partner seine Erfahrungen im Umgang mit dem AppDesigner und seine Erwartungen an den weiteren Ausbau des Entwicklungswerkzeugs AppDesigner.

Die wichtigsten Anforderungen zum Thema AppDesigner wurden von den einzelnen Teilnehmern dann nochmals explizit aufgeschrieben und folgenden Kategorien zugeordnet:

  • AppDesigner Werkzeug
  • Applikation 
  • Schnittstellen – externe Anbindung 
  • Dokumentation und Kommunikation 

Priorisierung der Anforderungen 

Nach der Kategorisierung der aufgeführten Anforderungen wurden diese von den Business Partnern nach ihrer Dringlichkeit zur Umsetzung bewertet. 

Dabei ergaben sich folgende Schwerpunkte: 

Kategorie „AppDesigner Werkzeug“  

  • Vergleichsmöglichkeit von Lösungen im AD 6 Punkte 
  • Makro für die Lizenzprüfung 4 Punkte 
  • Länge des Lösungsnamens erweitern 3 Punkte 
  • Suche im AD erweitern (z.B. in Makros) 3 Punkte 
  • Bessere farbliche Gestaltung des AD (Hervorhebungen) 3 Punkte 
  • Weitere Vereinfachungen / Automatisierungen 2 Punkte 
  • Weitere Anforderungen max. 1 Punkt 

Kategorie Applikation 

  • 1:N:M Beziehungen in Erfassungsformularen 5 Punkte 
  • Layouts im AD vordefinieren 3 Punkte 
  • Vorlagen/Konfigurationen für User/Gruppen 3 Punkte 
  • Spalten an Listen mit 1:N Beziehung anfügen 3 Punkte
  • Ersetzen der Standard Auskunft (analog Berichte) 3 Punkte  

Kategorie Schnittstellen, externe Anbindung  

  • API um Elemente von außerhalb AD zu ändern 5 Punkte 
  • Clientseitige DLL aus Regiezentrum aufrufbar 5 Punkte 
  • Clientseitiger DLL Aufruf mit Parametern im eigenen Prozess 3 Punkte 

Kategorie Kommunikation und Dokumentation  

  • Verbesserte Dokumentation und mehr praxisrelevante Beispiele 7 Punkte 
  • Fehlerbehandlung – Detailliertere Angaben 3 Punkte 

Weitere Vorgehensweise 

Sage wird die Möglichkeit zur Umsetzung obiger Punkte zum Thema AppDesigner prüfen und wichtige Punkte daraus in die Roadmap der Sage 100 aufnehmen. 

Wir werden Sie im Rahmen der Vorstellung der weiteren Roadmap für die Sage 100 darüber informieren.