TD Mobile: Arbeiten mit Kombinationsfeldern (Combobox)

combobox-td-mobile-server-client-cloud-device-md-consulting

Seit der Version 1.1.2 des TD Mobile können Comboboxen nicht mehr nur mit Zeichenketten (Strings), sondern auch mit Werten einer UDV (user defined variable) gefüllt werden. Dies alles hat Gupta recht einfach und intuitiv gelöst, so dass man es auch ohne Studium der Dokumentationen leicht umsetzen kann.

Oft möchte man die Combobox(en) nicht nur mit Wertlisten befüllen, sondern auch einen Eintrag vorauswählen. Dies wird über die Wertbindung (Richtung Set) gesteuert. Man muss also nur eine Bindung vom richtigen UDV-Typ anlegen und diese entsprechend füllen. Das ist jedoch einfacher gesagt als getan, wenn man sich dafür entscheidet diese Vorauswahl auf Clientseite zu treffen. Man kann die Bindung mittels des SET-Befehls mit den gewünschten Werten zwar leicht füllen (siehe Ausschnitt 1).


Ausschnitt 1:
Set: CB_CLIENT_VALUE.nId 3
Set: CB_CLIENT_VALUE.sText "DREI"

Anschließend wird man aber feststellen, dass die Combobox dennoch weiter nur den ersten Listeneintrag anzeigt. Hierfür ist ein kleiner Trick mit Hilfe einer JavaScript-Funktion nötig. Es muss zusätzlich „von Hand“ der gewünschte Wert gesetzt und anschließend die Auswahl aktualisiert werden (siehe Ausschnitt 2).


Ausschnitt 2:
$("#cmbClient").val(value);
$("#cmbClient").selectmenu("refresh");

Dann ist der gewünschte Eintrag auch ganz ohne Serveraufruf vorausgewählt.

PS: Selbstverständlich sollte die Vorauswahl auch ohne den beschriebenen Workaround funktionieren, dieser Fehler wird bei Gupta unter der Nummer TDM-901 geführt und in einer der nächsten Versionen behoben.

Wer das alles einmal im Detail nachvollziehen möchte findet hier ein TD Mobile Beispiel, das sowohl die Vorgehensweise am Server als auch am Client demonstriert. Sollten Sie Fragen hierzu haben kontaktieren sie uns bitte, wir helfen Ihnen gern weiter.


Gupta SQLBase – einfache Verbindung

gupta-sqlbase-11.7

Immer wieder hören wir von Verbindungsproblemen zur SQLBase. Daher wollen wir hier über zwei Neuerungen der SQLBase 11.7 in Bezug auf die Client Verbindungen – wenn auch nicht mehr ganz taufrisch – eingehen. Stichwort „Easy to Use Database Clients“.

Zwei wesentliche Verbesserungen wurden mit SQLBase 11.7 eingeführt:

  1. „Single File Client Interfaces“

    D.h. man muss nicht mehr diverse dll’s, ini- und andere Dateien im Pfad verfügbar machen, sondern für jede Verbindungsart benötigt man genau eine Datei. Das macht ein Deployment bzw. eine Registrierung auf einem Clientrechner natürlich viel einfacher und schützt so beispielsweise vor dll-Versionkonflikten. Hier eine Übersicht der Verfügbaren Schnittstellen:

    SQLBase Interface Datei
    sqlwntm.dll SQLBase Application Programming Interface (API)
    SqlBaseODBC.dll Open Database Connectivity (ODBC)
    SQLBaseOLEDB.dll Object Linking and Embedding, Database (OLE DB)
    Gupta.SQLBase.Data.dll .NET Data Provider (ADO.NET)
    SQLBaseJDBC.jar Java Database Connectivity (JDBC)
  2. „Connection Strings“

    Diese sind eine Alternative zur bisher obligatorischen sql.ini. D.h. man kann der SQLBase Client-Schnittstelle einen einfachen String (z.B. „DATABASE=ISLAND“ für Verbindung zur lokalen ISLAND-Datenbank als sysadm oder „DATABASE=MDDB;USERNAME=MD;PASSWORD=SECRET;TRANSPORT=TCP;HOSTNAME=SERVERMACHINE;PORT=2155“ für Verbindung zur MDDB-Datenbank als Benutzer MD) übergeben und eine Verbindung völlig ohne sql.ini herstellen.

Beides ist eine große Vereinfachung und wir können die Verwendung nur jedem empfehlen.

Abschließend seien der Vollständigkeit halber der neue .NET Provider (komplett neu in C# entwickelt) und der neue Visual Studio Data Extensibility (DDEX) provider nur noch kurz erwähnt.


Funktionalität des Expanders in TD-Mobile erweitern!

mein-expander-inhalt

Einleitung
In einer TD-Mobile-Anwendung soll ein Listen-Control — eine Liste — mit relativ vielen Einträgen angezeigt werden. Da die angezeigte Liste in den meisten Fällen den gesamten Bildschirm – vermutlich muss der Anwender sogar scrollen – in Anspruch nehmen würde, soll die Liste zunächst hinter einem Expander verborgen werden. Auf diese Art und Weise könnte die Liste zunächst verborgen bleiben und würde erst sichtbar, wenn der Anwender den Expander antippt. Ein Problem bleibt allerdings: standardmäßig wird beim Expander nur das Event Create unterstützt. Es würde bedeuten, dass die Liste beim Seitenaufbau mit umfangreichen Daten erzeugt würde. Das hätte zur Folge, dass der gesamte Seitenaufbau verzögert wird, obwohl der Anwender möglicherweise die Liste gar nicht anschauen will. Es sollte möglich sein, die Liste erst aufzubauen und anzuzeigen, wenn der Anwender den Expander antippt.

Lösungsansatz
Da es sich beim Expander-Control in TD Mobile um das reguläre JQuery Mobile Control handelt, bietet auch das TD-Mobile-Control die Möglichkeit, auf die (JQuery mobile) Ereignisse expand und collapse zu reagieren. Allerdings stellt sich die Frage, ob eine derartige Erweiterung in TD Mobile möglich ist. Die kurze Antwort lautet: es ist möglich. Die genaue Vorgehensweise wird im nächsten Abschnitt erläutert.

Lösung

Das Listen-Control wird über einen (komplexen) Bindungsarray und eine (ebenfalls komplexe) Bindung gefüllt, wobei die Bindungen über den Rückgabewert der entsprechenden Operation mit Werten versorgt werden. Diese Funktionalität bleibt erhalten. Entfernt wird lediglich der Aufruf dieser Operation Invoke beim Create-Ereignis.

Im nächsten Schritt muss der zusätzliche Event-Händler für das expand-Ereignis des Expanders implementiert und die Funktionalität, die beim Eintreten dieses Ereignisses ausgeführt werden soll, hinterlegt werden. Da beim Antippen des Expanders das Listen-Control mit den Daten aus der Datenbank gefüllt werden soll, muss als Aktion die im Quellcode hinterlegte Operation aufgerufen werden. Dieser Job wird durch Verwendung der TD Mobile-API im entsprechenden JavaScript erledigt.


Td.Data.Operation.get('name_der_operation').invoke();

Die Bezeichnung name_der_operation muss beim Nachvollziehen dieses Beispiels noch an die tatsächliche Operation auf der entsprechenden Seite angepasst werden.

Die Hinzufügung des Event-Handlers geschieht zum Zeitpunkt des Seitenaufbaus. Beim Create-Ereignis der Seite wird das JavaScript aufgerufen. Die Ausführung dieses Scripts bewirkt, dass der zusätzliche Event-Handler für das expand-Ereignis und die dann auszuführende Funktionalität zur Seite hinzugefügt wird. Wenn der Anwender jetzt die Seite aufruft, wird die JavaScript-Funktionalität mit dem expand-Ereignis erweitert: die Bindings, die die im Listen-Control zu visualisierenden Daten enthalten, werden durch den Aufruf der Operation mit Daten versorgt und das Listen-Control wird im Expander angezeigt. Die gesamte JavaScript-Funktion hat folgenden Inhalt:


$("#name_des_expander_controls").collapsible ({
expand: function(event, ui) {
Td.Data.Operation.get('name_der_operation').invoke();
}
});

In diesem Beispiel wird der Name des Expander-Controls im Quellcode referenziert. Standardmäßig legt TD Mobile die Controls mit dem Namen exp und einer laufenden Nummerierung an, z.B. exp1.

Der Aufruf dieser Funktion erfolgt beim Seitenaufbau, also beim Create-Ereignis auf der entsprechenden Seite. Hierdurch wird die zusätzliche Expander-Funktionalität der Seite
hinzugefügt.


On Create

Javascript name_der_JavaScript-Funktion

Das Hinzufügen der zusätzlichen Funktionalität für den Expander erfolgt beim Create-Ereignis der Seite.

Fazit
Es ist mit TD Mobile relativ einfach möglich, zusätzliche Funktionalität, die bereits in JQuery Mobile hinterlegt ist, aber nicht an TD Mobile durchgereicht wurde, hinzuzufügen. In diesem Beispiel wurde die Expander-Funktionalität so erweitert, dass auch auf das Ereignis des Antippens des Controls von Programmierer definierte Aktionen ausgeführt werden. In diesem Beispiel wurde der Event-Handler für das Ereignis „expandieren“ des Expanders und die dann auszuführende Operation hinzugefügt.


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