Scrollbars in einer WPF-Anwendung mit XAML verändern

console-example

Einleitung

Einer unserer Kunden hat mit SQLWindows eine .Net-Anwendung erstellt, die unter anderem auch auf Geräten mit „Touch“-Bedienung zum Einsatz kommt. Grundsätzlich, so wurde uns berichtet, funktioniere die Lösung auch wie geplant. Allerdings stellte sich bei der Fingerbedienung heraus, dass insbesondere die Standardbreite des (horizontalen und vertikalen) Rollbalkens eines Grids sehr schmal ist und daher bei der Fingerbedienung Schwierigkeiten beim Umgang mit diesem Bedienelement auftauchen können. Die Frage, die uns gestellt wurde, lautete daher: „Ist es möglich, den (automatisch eingeblendeten) Rollbalken in einem Grid in einer SQLWindows .Net-Anwendung zu verbreitern“. Der Kunde formulierte auch seine Vermutung: „Ist doch eine WPF-Anwendung. Das müsste doch mit XAML gehen, oder?“

SchmaleScrollbar

Lösungsansatz

Die Vermutung unseres Kunden war richtig, aber damit war selbstverständlich noch keine Lösung gefunden. Die Herausforderung bestand in der Umgestaltung des komplexesten Controls, dass Gupta Technologies in SQLWindows ausliefert: dem Grid. Der erste Gedanke war daher, das Grid umzugestalten. Dieser Gedanke wurde aber schnell verworfen, da der XAML-Code für das Grid während der Laufzeit und eben nicht beim Design erstellt wird. Zudem ist das Grid äußerst komplex und eine technische Dokumentation speziell der Umsetzung des Grids in XAML liegt uns leider nicht vor.
Allerdings, so die zweite Überlegung, wird vermutlich der Scrollbar, der im Grid angezeigt wird, wenn der Platz horizontal oder vertikal nicht ausreicht, um den Inhalt anzuzeigen, auf der Basis des Microsoft .Net Scrollbars aufgebaut sein. Sollte es nicht möglich sein, grundsätzlich das Aussehen des Scrollbars für die Touch-Bedienung für die ganze Anwendung durch Hinzufügung des entsprechenden XAML-Codes „umzugestalten“, dann wäre durch diese Vorgehensweise das Problem grundsätzlich für die gesamte Anwendung im Fall der Touch-Bedienung gelöst.

Lösung
Die Lösung des vom Kunden beschriebenen Problems bestand aus zwei Teilschritten:

  1. Entwicklung und Test des entsprechenden XAML-Codes für die Umgestaltung des Scrollbars und
  2. Das korrekte Deployment dieser Datei in der Entwicklungsumgebung

Umgestaltung („Perestroika“)

Die Vorgehensweise bei der Umgestaltung des Scrollbars bestand darin, den dem Gupta-Control zugrundeliegenden Microsoft .Net Control „Scrollbar“ umzugestalten. Damit ist gemeint, dass kein benannter Style — also kein Key-Attribut — definiert wurde, sondern ein Style, der sich auf das Microsoft Scrollbar bezieht (TargetType: {x:Type ScrollBar}). Der Vorteil dieser Vorgehensweise besteht darin, dass die Style-Definition grundsätzlich gilt und der Entwickler daher keine Zuordnung bei den einzelnen Controls im Attribut XAML-Style vornehmen muss.

<Application
xmlns=“http://schemas.microsoft.com/winfx/2006/xaml/presentation“
xmlns:x=“http://schemas.microsoft.com/winfx/2006/xaml“>
<Application.Resources>
<Style x:Key=“{x:Type ScrollBar}“ TargetType=“{x:Type ScrollBar}“>
<Style.Triggers>
<Trigger Property=“Orientation“ Value=“Horizontal“>
<Setter Property=“Width“ Value=“Auto“/>
<Setter Property=“Height“ Value=“40″ />
</Trigger>
<Trigger Property=“Orientation“ Value=“Vertical“>
<Setter Property=“Width“ Value=“40″/>
<Setter Property=“Height“ Value=“Auto“ />
</Trigger>
</Style.Triggers>
</Style>
</Application.Resources>
</Application>

Das Aussehen des Scrollbars des Grids wird in der ganzen Anwendung durch eine Neudefinition des Styles
des (Microsoft .Net) Scrollbars erreicht.

Durch diesen Style wird das Aussehen des Scrollbars — in diesem Beispiel lediglich in Bezug auf
seine Breite — umdefiniert.

Deployment

Der zweite Schritt der Lösung besteht darin, die Datei unter dem richtigen Namen abzuspeichern und an der Stelle abzulegen, wo der .Net Compiler von SQLWindows derartige XAML-Dateien erwartet. Dieser Schritt ist zunächst ein bisschen knifflig, wenn man sich bisher noch nicht mit der XAML-Funktionalität und deren Umsetzung in SQLWindows beschäftigt hat1. Zunächst aber das Einfache: Die Style-Definition des Scrollbars wird unter dem Namen App.Xaml abgespeichert. Die Datei App-xaml2 muss jetzt in ein spezielles Unterverzeichnis der Source Code-Datei gelegt werden.

Das Verzeichnis, in das die Datei App.xaml gelegt werden muss, existiert standardmäßig nicht. Der einfachste Weg, die notwendige Verzeichnisstruktur für die Quellcode-Datei anzulegen, besteht darin, im Hauptcode der SQLWindows-Anwendung ein Top-Level-Window in der Source-Code-Sicht zu markieren und aus dem Kontextmenü unter XAML die Option Edit auszuwählen. Der jetzt erschienene KAXAML-Editor kann sofort beendet werden. Durch den Aufruf von KAXAML im Edit-Modus wurden bereits die notwendigen (Unter-)Verzeichnisse erstellt.

Wenn jetzt beispielsweise mit dem Windows-Explorer in das Verzeichnis gewechselt wird, in der die SQLWindows Quellcode-Datei liegt, dann fällt dort das neue Verzeichnis .xaml auf. Im Verzeichnis unter .xaml liegt wiederum ein Verzeichnis, dessen Name der Name der Quellcode-Datei ist. In diesem Verzeichnis liegt eine Datei, die durch unser Arbeiten mit KAXAML angelegt wurde. Diese Datei sollte sofort gelöscht werden. Danach kann die App.xaml, die die Umgestaltung des Scrollbars enthält, in dieses Verzeichnis kopiert werden.
Das war’s …

Fazit

Innerhalb von kurzer Zeit — um genau zu sein, waren es drei Stunden für Planung, Umsetzung, Test und Dokumentation — konnte der Scrollbar des Grids in einer SQLWindows .Net-Anwendung nach den Anforderungen des Kunden umgestaltet werden. Der entwickelte Lösungsvorschlag beantwortet die Frage des Kunden. Tatsächlich ergeben sich aber in der Praxis weitere Fragen, wie beispielsweise „ich will nur eine .Net-Anwendung haben. Sie soll sich aber unterscheiden, wenn sie auf einem Touch-PC abläuft oder auf einem „normalen“ PC. Geht das auch?“ Selbstverständlich geht das auch, aber es sprengt den Rahmen dieses Papiers. In einem solchen Fall würde mit dynamischen Ressourcen gearbeitet werden, die nur in dem definierten Fall während der Laufzeit dazu gebunden würden. Aber das ist eine andere Frage …

Es könnte sich auch ergeben, dass die Form und die Größe von Pushbuttons in einer Touch-Anwendung angepasst werden müssen. Dieses Problem lässt sich analog zur beschriebenen Vorgehensweise lösen.

1 Die Vorgehensweise wird in dem Manuskript SQLWindows & XAML ausführlich ab Seite 42 beschrieben.
2 In einem produktiven Projekt würde man vermutlich die einzelnen Style-Definitionen in eigenen XAML-Dateien ablegen und diese durch Verwendung von MergeDictionaries in der App.xaml-Datei für die Anwendung zusammen führen.


TD Mobile – Apps mit Zugriff auf DB’s, SAP und andere Schnittstellen

md-consulting-unternehmen-firma-solution-lösung

Interessieren Sie sich für die einfache Entwicklung mobiler Geschäftsanwendungen? Dann haben wir was für Sie.

Egal ob Sie Oracle, Sybase, Microsoft SQL Server, MySQL oder andere SQL Datenbanken einsetzen, Sie können all diese Daten einfach in Ihre mobilen Anwendungen einbinden. Die Bindung der Unternehmensdatenquellen an die grafischen Controls der Anwendung ist automatisch und benötigt keinerlei JavaScript Programmierung.

Wenn Ihre Organisation SAP oder andere Unternehmenslösungen verwendet, importieren Sie einfach die Webservice-Schnittstelle. Sie können dann direkt aus dem Backend-Code in TD Mobile zugreifen.
Zum Beispiel:

  • Mobile Vertriebsmitarbeiter können direkt beim Kunden auf ihrem iPhone eine Bestellung aufnehmen, die dann sofort im zentralen System abgespeichert wird.
  • Wartungsingenieure können ihre Serviceaufträge von ihrem mobilen Endgerät auslesen und dann die entsprechenden Wartungen vor Ort durchführen.
  • Dokumentationen der Wartungsarbeiten können wiederum vom mobilen Endgerät direkt abgespeichert werden.

TD Mobile ist besonders gut darin, auf die unterschiedlichsten Systeme von einer Oberfläche aus zu zugreifen. Viele Unternehmen verwenden nicht nur eine Datenbank oder eine Softwarelösung, sondern speichern Prozessdaten in unterschiedlichen Systemen. Mit TD Mobile können Sie mobile Lösungen mit Zugriff auf viele unterschiedliche Systeme realisieren.

Gupta hält seine alljährliche Entwicklerkonferenz dieses Jahr in Berlin ab. Am zweiten Tag der Konferenz steht TD Mobile im Fokus. Technische Spezialisten werden ihr Wissen, im Rahmen vieler interessanter Vorträge rund um TD Mobile und die mobile Anwendungsentwicklung, mit Ihnen teilen. Dies ist der komprimierte Einstieg in das Thema „Plattformübergreifende Mobile Apps“. Alle Vorträge sind in englischer Sprache.

MD Consulting ist seit über 20 Jahren Gupta-Partner und möchte Sie, als Aussteller, recht herzlich zur Entwicklerkonferenz einladen. Besuchen Sie uns am Stand. Wir zeigen Ihnen live eine mobile Beispielanwendung, die wir in kurzer Zeit fertiggestellt haben.

MD Consulting ist gern auch Ihr Partner beim Schritt in die Welt der mobilen Geschäftsanwendungen.

Ort: Berlin

Termin: 24.10.2014

Agenda: hier

Kosten: 119 EUR (inkl. Konferenzverpflegung)

Haben Sie Interesse an einer Teilnahme an der DevCon in Berlin am 24.10.14? Dann schreiben Sie eine E-Mail an info@md-consulting.de oder rufen Sie uns an +49 (0)8122-9740-0 , Ihr Ansprechpartner Frau Evelyn Ertel.

Sie haben keine Zeit uns auf der DevCon zu besuchen? Dann lesen Sie hier den Director’s Brief.

Datenblatt, Demo-Version und Beispiele wie die Modernste Gemeinde Amerikas, Sendungszustellung oder Online-Akte finden Sie hier. Sehen Sie auch die TD Mobile Videos.


Consulting zu Webservices mit Team Developer .NET 6.2

einkaufswagen-device-tablet-support-team

Zielsetzung Workshop:

Einrichten von mit dem Team Developer .NET 6.2 erstellten Webservices auf einem Internet Information Server (IIS) 7.5 ohne und mit SSL Zertifizierung.

Der Kunde hatte die Grundlagen zur Erstellung eines Webservices mit dem Team Developer 6.2 bereits in einem vorhergehenden Workshop erlernt.
In diesem Workshop sollte die Installation des Webservices auf einem Rechner mit Windows Server 2008 R2 und einem IIS 7.5 erklärt und nachvollzogen werden. Da für den produktiven Betrieb das SSL-Protokoll als Transportsicherheit verwendet werden soll, wurde neben der Installation eines einfachen ungesicherten Webservices auch die Installation eines SSL-gesicherten Webservices demonstriert. Dabei kamen sowohl selbst signierte Zertifikate zum Einsatz als auch eins von der Firma erstandenes Zertifikat, welches bereits im Exchange Server eingesetzt wurde.

Um den SSL-Webservice von einer mit dem Team Developer Win32 erstellten Anwendung nutzen zu können, sollte die Konsumierung eines SSL-Webservices ebenfalls erklärt und nachvollzogen werden.

Ergebnis:

Die Installation von ungesicherten Webservices verlief problemlos. Die der Installation eines SSL gesicherten Webservices mit dem firmeneigenen Zertifikat zeigte anfangs Fehlermeldungen über fehlende Dienste. Als dieses Zertifikat gegen ein selbst signiertes Zertifikat ersetzt wurde, konnte der SSL-Webservice erfolgreich installiert werden. Es stellte sich heraus, dass das firmeneigene Zertifikat nicht ordnungsgemäß installiert war. Die Deinstallation sowie der folgende Import mit anschließender Speicherung im Zertifikatsspeicher und die Zuweisung dieses Zertifikates an den SSL Webservice brachten keine Probleme mehr hervor.

Die Konsumierung des Webservices mit einer TD Win32-Anwendung zeigte keine Probleme mehr.


Service wird bei uns Groß geschrieben: TD WS

Pausengetränke

Erstellen, Veröffentlichen und Einbinden von Web Services mit dem Team Developer  – ist das gerade eine Aufgabe, die Sie lösen müssen? Dann sind Sie in unserem Seminar: Team Developer – Web Service (TD WS) genau richtig.
Wollten Sie schon immer mal wissen, wie Sie mit dem Team Developer einen Web Service erstellen und diesen mit dem IIS (Internet Information Server) bereitstellen?
Der Teilnehmer weiß am Ende des Seminars, wie bestehende Webservices in eine Anwendung eingebaut und getestet werden können. Darüber hinaus ist er in der Lage, die Entwicklung und die Veröffentlichung eigener Web Services zu planen und umzusetzen.
Die Web Service-Technologie ermöglicht es, auf einfache Art und Weise plattformübergreifend entfernte Geschäftslogik in Anwendungen einzubinden. Team Developer unterstützt die Webservice-Technologie für die unterschiedlichsten Einsatzszenarien:
Web Services können mit Team Developer entwickelt und veröffentlicht werden
Web Services können in Team Developer-Anwendungen integriert werden, wobei diese Unterstützung sowohl für die Kompilierung als Win32 oder .Net WPF-Anwendungen gilt.
In diesem Seminar wird zunächst anhand eines im Web verfügbaren Beispiel-Web Service die Integration sowohl in eine Win32, als auch eine .Net WPF-Anwendung behandelt. Anhang einer XML-Response-Struktur wird des Weiteren behandelt, wie auch derartig komplexe Datentypen einfach in eine SQLWindows-Anwendung integriert werden können.
Im zweiten Teil des Seminars geht es um die Entwicklung und die Veröffentlichung eigener Web Services. Neben der reinen Entwicklungstätigkeit werden die Konfiguration des Webservers und die Kommunikation zu Datenbanksystem speziell im Hinblick auf SQLWindows besprochen.

TD WS – Erstellen, Veröffentlichen und Einbinden von Web Services
Ort: MD Consulting Erfurt
Termin: 20.08. – 21.08.2014
Preis: statt 990,00 EUR nur 693 EUR
Bonus: 30% Rabatt und Durchführungsgarantie!

MD Consulting schult nicht nur Gupta-Technologien, sondern arbeitet seit Jahren erfolgreich mit Referenzkunden an wegweisenden Projekten. Diese Erfahrungen und Verfahren fließen direkt in den Seminarbereich.
Stöbern Sie selbst in unseren Referenzprojekte Gupta, sie sollen Ihnen die Sicherheit geben, dass während einem Seminar keine Ihrer Fragen offen bleibt oder Sie bei einem Ihrer nächsten Gupta-Projekte auf MD Consulting als Projektpartner zurückgreifen.

Nicht Ihr Thema? Sehen Sie in unserem Seminarfinder nach, vielleicht haben wir auch für Sie das richtige Oracle-Seminar. Unser Seminar Finder mit allen Terminen und Seminaren jetzt auch MOBIL!

Bei Fragen oder Interesse, antworten Sie einfach auf diese E-Mail oder rufen Sie uns an unter (+49) – 0 81 22 / 97 40-0.


In 12 Monaten um die ganze (EDV-) Welt!

edv-support-it-computer-hilfe-seminar-prospekt-broschüre-heft-unterlagen-dokument

Am 31. Juli 2013 hat der Kunde eine Lizenz vom Team Developer 6.2 erworben, um eine seit 1993 bestehende Geschäftsanwendung weiterzuentwickeln und an die gesetzlichen Rahmenvorgaben anzupassen. Den Kunden selbst kannten wir bis zu diesem Datum nicht – er wurde daher auch erst mit diesem Datum in unserem System erfasst.

Der Kunde, so wurde kurze Zeit später deutlich, hatte sich allerdings noch nicht über die Konsequenzen der (automatischen) Umwandlung des Quellcodes in UNICODE hinreichend informiert oder sich nicht damit beschäftigt, sodass die Inbetriebnahme der neuen Entwicklungsumgebung zunächst scheiterte. Bei einem telefonischen Kontakt des Vertriebs mit dem Kunden am 14. August 2013 stellte sich heraus, dass es Probleme bei der Übernahme des „alten“ Quellcodes in die neue Entwicklungsumgebung gab, aber wir versicherten dem Kunden noch in diesem Telefonat, dass mit unserer Unterstützung – in der Regel vor Ort oder in einem unserer Büros – dieses Problem innerhalb ein bis zwei Arbeitstagen zu lösen sei.

Tatsächlich, so stellte sich dann heraus, wurde lediglich ein Manntag Begleitung durch einen, insbesondere im Bereich „Migration von Quellcode“, erfahrenen Entwickler von MD Consulting in Anspruch genommen, um den vorhandenen Quellcode in der neuen Entwicklungsumgebung kompilierbar und ablauffähig zu machen. Die Arbeit von MD Consulting war erledigt, es blieben noch einige Restarbeiten zu erledigen, zu denen sich aber der Entwickler des Kunden aber selbst im Stande sah.

Die Nachfrage unseres Vertriebs am 4. Oktober 2013 ergab, dass der Kunde die eintägige Vor-Ort-Unterstützung als „sehr wertvoll“ bewertete und die Einschätzung, dass „die Restarbeiten“ nunmehr alleine gestemmt werden konnten, noch einmal bestätigte.

Im November 2013 machten wir den Kunden auf die Verfügbarkeit von „TD Mobile“, der neuen Entwicklungsumgebung für mobile Geschäftsanwendungen aufmerksam, aber der Kunde sah in diesem Gespräch in dem Bereich, für den er zuständig ist, keinen Bedarf für mobile Anwendungen. Als wir den Kunden im Februar 2014 dennoch auf die Verfügbarkeit von „TD Mobile“ aufmerksam machen wollten, zeigte der Kunden zwar nach wie vor kein Interesse an mobilen Anwendungen, aber er wies daraufhin, dass es Änderungs- und Erweiterungsbedarf an der bestehenden, mit unserer Hilfe auf den Entwicklungsstand 6.2 gehobenen Anwendung gäbe, der sich nicht mehr mit der eigenen Mannschaft realisieren ließ.

Aufgrund der vielen Erfahrungen im Bereich der Übernahme des Quellcodes bestehender Anwendungen in die Wartung und Pflege durch MD Consulting, konnte der Kunde recht schnell überzeugt werden, dass MD Consulting auch für diese geplanten Arbeiten der geeignete Partner sei.
Am 24. Juli 2014, also in etwa ein Jahr nach dem ersten Kontakt, haben der Kunde und MD Consulting die Zusammenarbeit im Bereich „Wartung und Pflege“ einer bestehenden Gupta-Anwendung aufgenommen. In diesem Zeitraum hat der Kunde MD Consulting als verlässlichen Partner bei der Beschaffung der benötigten Lizenzen kennengelernt, sehr schnell danach auch erleben können, dass MD Consulting kompetente und mit der Materie vertraute Entwickler stellen kann, die sehr effektiv dabei helfen können, die neueste Version des Entwicklungswerkzeugs in Betrieb zu nehmen.

Für den Kunden schien es daher nur allzu logisch, sich bei der nächsten Herausforderung in diesem Bereich, wieder an MD Consulting zu wenden, um zu erfahren, dass auch die „Pflege und Wartung“ ihrer sehr spezifischen Geschäftsanwendung übernommen werden konnte.

Die Synergien zwischen dem Vertrieb von Lizenzen (Entwicklungsumgebung, Datenbanken), dem (Individual-) Coaching und der Softwareentwicklungsabteilung von MD Consulting lassen sich nicht eindrucksvoller darstellen.


Strategieberatung/Architekturberatung rund um den GUPTA Team Developer bei einem Handelsunternehmen in Nordrhein-Westfalen

Ein Kunde will seine sehr komplexe Gupta-Anwendung, in der Version 4.2, schrittweise in eine .Net Umgebung neu programmieren. Dazu hat er unsere Unterstützung angefordert. Im Vorfeld erfolgte ein Beratertag um alle notwendigen Schritte und Vorbereitung abzusprechen. Sowie um die neue Architektur und das Design festzulegen.

Die zentrale Softwarelösung ist eine Individualsoftware. Im Projekt wurden auch BuildingBlocks eingesetzt, welche aber teils umfangreich angepasst wurden. Eine Besonderheit der Software ist eine Navision-Schnittstelle.

Die Software wird als historisch gewachsen und sehr zerwartet bewertet. In den letzten Jahren gab es ein Änderungsaufkommen von durchschnittlich einem Personenjahr/Jahr.

Das strategische Ziel ist eine Anwendung auf Basis C# und MS SQL Server.

Letztlich ging es bei der Strategieberatung um die Frage, wie geht der Kunden mit seiner zentralen Anwendung mittel- bis langfristig um.

Wir haben die Möglichkeiten (u.a. Migration auf aktuelle GUPTA Team Developer- und SQLBase Version, Migration auf aktuelle GUPTA Team Developer-Version und Wechsel der Datenbank auf MS SQL Server und Neuprogrammierung) diskutiert.

Entscheidet sich der Kunde für den von MD Consulting vorgeschlagenen Weg, dann wird MD Consulting im 1. Schritt die Migration auf GUPTA Team Developer 6.2 und SQLBase 11.7 vornehmen und im 2. Schritt die modulweise Neuentwicklung mit C# vornehmen.

20140606


Unterstützung am MS VS 2012-Projekt bei einem Softwarehaus in Thüringen

Dezentrale Geräte erfassen Gerätesignale und sind für die Übermittlung an den Server verantwortlich.

Die vom dezentralen Gerät ermittelten Ereignisse werden über eine Schnittstelle an den Server gesendet. Für die Kommunikation wird auf das Protokoll SOAP über HTTP aufgesetzt.

Ereignismeldungen werden empfangen und in der zentralen SQL Datenbank zur Visualisierung und Archivierung gespeichert.
Hierfür wurde eine Webanwendung benötigt. Die vorhandene Webanwendung soll das Monitoring der Signale, das Erzeugen und Pflegen der Stammdaten, sowie die Benutzerverwaltung ermöglichen.

Es soll kein direkter Zugriff auf die Datenbank erfolgen. Alle lesenden und schreibenden Aktionen laufen ausschließlich über Views und Stored Procedure.

Aus Performancegründen wurde auf die Verwendung von Postbacks weitestgehend verzichtet. Die Kommunikation zwischen Client und Server musste aus diesem Grund, wo immer möglich, über Ajax realisiert werden.

Der Zugriff auf die GUI wurde durch Benutzer-Authentifizierung gesichert. Es wurden unterschiedliche Zugriffsebenen für die einzelnen Benutzer definiert, um den Zugriff auf die einzelnen Funktionen zu regeln.
20140521


Verwendung eines DMS mit GUPTA Team Developer 6.1 unter Win32 in Form eines Workshops bei einem bayerischen Kunden vor Ort

Das DMS stellt benötigte Funktionen bereit für:

  • den Import von neuen Dokumenten
  • den Import von überarbeiteten Dokumenten
  • der Suche von Dokumenten
  • den Export von Dokumenten
  • administrative Funktionen wie Ping, Versionsinfo …

Es sollte ein Weg aufgezeigt werden, wie die Funktionalitäten des DMS vom Team Developer verwendet werden können. Die bestehende ActiveX-Schnittstelle des DMS sollte nicht mehr verwendet werden, da lt. Hersteller des DMS diese nicht weiter supported wird und evtl. in der Folgeversion  entfallen könne. Web Service war die Alternative.

Bei dem DMS-Web Service handelt es sich um eine Schnittstelle mit recht komplexen und verschachtelten Datenstrukturen. Weiterhin besteht bei der Weitergabe von Dokumenten an den Web Service die Forderung, dass hierbei MTOM (Message Transmission Optimization Mechanism, eine W3C-Empfehlung für die Übertragung binärer Daten in Web Services) aktiviert sein muss.

Am ersten Tag ging es darum, einen Weg zu finden, den Web Service vom Team Developer aus, zu konsumieren.

Win32: Die Web Service Proxy-Klassen wurden zwar vom Web Service-Wizard des Team Developer erstellt, allerdings wurde das Request falsch erstellt, wodurch jede Web Service-Anfrage mit entsprechender Fehlermeldung verlief.

.NET: Mittels des .NET Web Service-Wizard wurde die Schnittstellen-DLL erstellt, konnte auch für einige Funktionen mit einfachen Datentypen verwendet werden, aber Funktionen mit verschachtelten Strukturen konnten auch hier nicht verwendet werden.

Damit schlugen die Versuche, den Web Service mit Team Developer eigenen Mitteln zu konsumieren, fehl.

Die Einbindung des Web Services in ein C#-Test-Projekt mit Visual Studio konnte mit Erfolg stattfinden. Die nachfolgend erstellten Testfunktionen für die Web Service-Schnittstelle konnten mit Erfolg erstellt werden. Hierbei ging es um folgende Funktionalitäten:

  • Ping
  • Versionsinfo abfragen
  • Dokumente suchen
  • Import eines Dokumentes

Auf dieser Grundlage wurden die Funktionalitäten aus der Testanwendung in eine .NET-DLL extrahiert und diese im Team Developer-Test-Projekt eingebunden. Somit wurde der Web Service in einem .NET-Assembly gekapselt und konnte dann vom Team Developer verwendet werden.

Ein entsprechendes Test-Projekt wurde begonnen, einige Funktionen zur Demonstration erstellt.

Für weitere Funktionen fehlte dann doch die Zeit, aber der gezeigte Weg war für den Kunden hilfreich und durchführbar. Der Import erfolgte bisher nur mit kleinen Dokumentgrößen, die scheinbar auch ohne MTOM-Aktivierung auskommen. Ein Test mit größeren Dokumenten muss noch erfolgen und die MTOM-Aktivierung mittels WSI 3.0 erfolgen.

Eine weitere Unterstützung durch MD Consulting ist vorgesehen.

20140425


Anbindung eines Dokumenten-Scanners in eine Team Developer-Anwendung mittels TWAIN-Schnittstelle für einen Schweizer industriellen Hersteller

Der manuelle Prozess der Dokumentenverwaltung/-suche sollte durch eine edv-technische Lösung ersetzt werden. Dazu sollten die Dokumente/Pläne, welche bisher in Dokumenten-Ordnern in Papierform abgelegt, gesucht und entnommen wurden, eingescannt werden und diese, als PDF gespeicherten Dokumente entweder im Filesystem oder in der Datenbank gespeichert werden.

Es galt folgende Punkte zu betrachten und umzusetzen:

  1. Einscannen der Dokumente und speichern in verschiedenen Formaten (pdf, jpg)
  2. Speichern und Verwalten der Dokumente im Dateisystem
  3. Speichern und Verwalten der Dokumente in der Datenbank

Lösung:

  1. Um die Twain-Schnittstelle zum Dokumentenscanner ansprechen zu können, wurde auf die EZTwain-DLL von Atalasoft zurückgegriffen. Diese DLL und die notwendigsten Funktionalitäten wurde in die Team Developer-Applikation eingebunden und ein kleines Testprogramm erstellt. 
    Im Weiteren wurde der Scanvorgang in der TD-Applikation verfeinert, so dass der Anwender nicht mit der Twain Schnittstelle agieren muss, die ganzen Einstellungen also von der TD-Anwendung gesetzt werden konnten.
  2. Das Speichern der eingescannten Dokumente erfolgte bereits über die Twain-Scanfunktion. Hier wurde das Organisieren im Dateisystem und die Ablage der File-Informationen in der Datenbank betrachtet.
  3. Das Speichern von BLOB-Daten in der Datenbank haben wir näher betrachtet. Für diesen Workshop waren 2 Tage angesetzt. Der Kunde kam mit seinem Scanner zu uns ins Erdinger Büro und brachte auch seine Team Developer-Anwendung mit.

Da die Einbindung der Twain-DLL recht zügig erfolgte, konnte abschließend noch die Einbindung eines Time Scheduler Controls über die ActiveX-Schnittstelle betrachtet und eine kleine Demoanwendung erstellt werden.

20140417


Erstellung der Funktionalität „Krankenstatistik“ als Erweiterung einer bestehenden Kundensoftware bei einer Behörde in Mecklenburg-Vorpommern

Kurz vor dem Rollout der Kundenanwendung wurden noch erheblich Bugs festgestellt, welche seitens des Kunden nicht gelöst werden konnten. MD Consulting wurde gerufen. 

Bei der Software handelt es sich um eine Lösung für die Erfassung von Personal- und Maschinenleistungszeiten und die Übergabe der erforderlichen Daten an SAP. Zusätzlich sollte dies um eine Abbildung von Krankenstatistiken unter Nutzung der bestehenden Klassenbibliotheken erweitert werden.

Bei der genaueren Analyse der Anforderungen wurde festgestellt, dass diese sehr vielschichtig sind. Für die Abrechnung der Waldarbeiter für die Krankentageerfassung, wird ein komplettes neues Formular benötigt. Aus der Zeiterfassung werden mindestens die Krankenstunden in Summe benötigt. Weiterhin wird die auflaufende Krankheitstagesumme je rollendem Jahr für die Verfahrenseinleitung benötigt. Für interne Statistiken wird eine detaillierte Gliederung der Krankheitsfälle und Tage nach Beschäftigtengruppen und Varianten der Krankheiten aus dem Servicebereich Personal gefordert.

Diese sehr unterschiedlichen Anforderungen gleichzeitig zu erfüllen ist eine Herausforderung, die innerhalb des bisherigen Zeiterfassungsinstrumentariums nicht umsetzbar ist.
Daher soll für die Anforderungen einer Krankenstatistik ein neuer separater Erfassungsbereich geschaffen werden, der möglichst einfach aber inhaltlich stark detaillierte Informationen enthält und die Krankentage darstellen kann.

Fazit:
Statement unseres Kunden:

Guten Morgen Herr …,
anliegend das Testergebnis zur Software „Zeiterfassung und Krankenstatistik“, insgesamt ein gutes Ergebnis!

Mit freundlichen Grüßen und noch einen schönen Tag …

20140407