AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Windows Desktop Anwendung auch auf mobilen Endgeräten
Thema durchsuchen
Ansicht
Themen-Optionen

Windows Desktop Anwendung auch auf mobilen Endgeräten

Ein Thema von delphia · begonnen am 14. Jan 2014 · letzter Beitrag vom 17. Jan 2014
Antwort Antwort
bcvs

Registriert seit: 16. Jun 2011
737 Beiträge
 
Delphi 12 Athens
 
#1

AW: Windows Desktop Anwendung auch auf mobilen Endgeräten

  Alt 16. Jan 2014, 07:25
Hallo delphia,

ich stand vor einem ähnlichen Problem.

Ausgangspunkt:
Windows-Desktop-Anwendung, (übrigens auch mit DBISAM als DB). Ein Teil davon (Arbeitszeiterfassung) sollte auch über ein Web-Frontend oder mobile Apps bedienbar sein.

Meine Lösung:
Eine MySql-Datenbank, die auf einem einfachen 1und1-Hosting-Account läuft. Die Desktopanwendung stellt die für die mobile Bearbeitung notwendigen Daten dort zur Verfügung. Dies geschieht über den Aufruf entsprechender php-Scripte über Indy-Komponenten. Dann gibt es eine Web-Oberfläche, über die Daten eingebenen werden können, die zunächst ebenfalls in der MySql-DB landen.

Die Desktopanwendung schaut von Zeit zu Zeit nach, ob neue mobile Datensätze vorhanden sind, lädt diese herunter und integriert sie in die lokale DB. Das Herunterladen erfolgt ebenfalls über ein php-Script, dass die neuen Daten aus der MySql-DB liest und sie in einem für die Desktopanwendung verständlichen Format ausgibt.

Damit sich die Daten verschiedener Anwender nicht in die Quere kommen, gibt es Accounts mit Login. Falls es einmal zu viele Anwender werden (ist momentan noch überschaubar), kann man das Ganze auch auf mehrere MySql-Dbs verteilen.

Vorteil: Der Anwender braucht nichts zu installieren. Er braucht lediglich einen Web-Browser, seine Login-Daten und kann loslegen.
  Mit Zitat antworten Zitat
delphia

Registriert seit: 23. Aug 2010
22 Beiträge
 
Delphi 2010 Professional
 
#2

AW: Windows Desktop Anwendung auch auf mobilen Endgeräten

  Alt 16. Jan 2014, 14:44
@bcvs

In diese Richtung habe ich auch schon überlegt. Wäre zumindest ein Ansatz um Nur-Lese-Daten mobil verfügbar zu machen. Gibt es keine Klassen oder Komponenten, die MySQL direkt aus Delphi schreiben können? Aber wahrscheinlich kommt man per FTP an die MySQL DBS nicht heran, bei den LowCost Accounts. Könnte man einfach die Files überschreiben.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Windows Desktop Anwendung auch auf mobilen Endgeräten

  Alt 16. Jan 2014, 15:33
Gibt es keine Klassen oder Komponenten, die MySQL direkt aus Delphi schreiben können? Aber wahrscheinlich kommt man per FTP an die MySQL DBS nicht heran, bei den LowCost Accounts. Könnte man einfach die Files überschreiben.
Nein, und wozu denn auch?

MySQL ist ein Datenbank-Server mit dem man (über ein Protokoll) sprechen kann, und das sollte man auch dann machen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
jensw_2000
(Gast)

n/a Beiträge
 
#4

AW: Windows Desktop Anwendung auch auf mobilen Endgeräten

  Alt 16. Jan 2014, 20:24
Datenbanken auf Webservern sind im Grunde ein No-Go.
Für die Webcontents von Content Management Systemen sind sie natürlich OK, aber Produktivdaten gehören da keinesfalls mit drauf.

Wenn es für Kunden ist, dann wird sicher auch der eine oder andere Euro für ein fertige kommerzielle Drittanbieter Komponente drin sein, oder?
Ich habe damals ein eigenes kleines Paket für 3-Tier Anwendungen gebaut. Der Pflegeaufwand war enorm und bei jeder neuen Anforderung kam das Panik "P", besonders wenn die Kunden ihren Datenschutzbeauftragten bei den Projektbesprechungen mit ins Boot geholt haben. Die Kunden haben auch nicht verstanden, dass eine "kleine Anpassung" oft viel Aufwand in den anderen Schichten nach sich gezogen hat.

Letztendlich bin ich bei DataAbstract und dem RemObjects SDK hängengeblieben und bin mehr als glücklich damit. Damit sind 3-Tier Datenbank- oder Serviceapplikationen kein "kompliziertes" Thema mehr. Alle gängigen Protokolle, Verschlüsselung und Redundanz
werden unterstützt. Der Support ist wirklich gut und der Einarbeitungsaufwand eher klein.
Ehrlich. Ich bin auch Einzelkämpfer und würde nie wieder auf die Idee kommen, derart komplexe Frameworks selbst zu bauen und zu pflegen. Der Aufwand refinanziert sich nicht mal ansatzweise und an die Qualität und den Funktionsumfang kommt man bei Weitem nicht heran.

http://www.remobjects.com/products/
Es gibt natürlich auch Trialversionen zum reinschnuppern.

RemObjects baut allerdings seit XE2 keine FMX Komponenten mehr.
Windows RT, .Net, iOS, OSX und Android werden daher "nur noch" nativ unterstützt.
Die plattformspezifischen Libraries von RemObjects nehmen einem dabei aber das ganze komplizierte Protokollimplementieren ab.

PS: Ich bekomme keine Provision von Denen . Ich bin einfach nur glücklich sie gefunden zu haben.

Geändert von jensw_2000 (16. Jan 2014 um 20:28 Uhr)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#5

AW: Windows Desktop Anwendung auch auf mobilen Endgeräten

  Alt 17. Jan 2014, 06:48
So ein wenig kommt es auch darauf an, was auf den Endgeräten angezeigt und ausgeführt werden soll. Wenn es eine überschaubare Anzahl von unterschiedlichen Operationen ist, dann baust Du dir das selbst.

Ich komme ziemlich gut klar mit einer einzigenMethode, der ich eine Query übergebe, und die mir die Daten (die Tabelle) als JSON-Objekt (oder XML, egal) übermitelt. Damit kann ich schon mal alle Tabellen, Charts, etc. auf dem Endgerät *darstellen*.
Das ist dann ein wenig hemdsärmelig, weil ich *oh Graus* die Queries im Endgerät zusammenbaue (über eine Toolbox und ein Art Textrepository für die Skripte). Da eh nur SQL-Server unterstützt wird, reicht mir das so.

Operationen habe ich nicht so viele. In erster Linie sind es direkte Business Operationen, wie 'Produkt X verlässt Lagerort Y durch Person P um Z Uhr'. Jede Operation ist eine Methode (davon gibt es so 20). Das war -gottseidank- schon immer ein Middletier also war der Aufwand, das als Webservice in C# umzusetzen an einem Nachmittag erledigt. Dabei wird der MIDAS-Server per COM angesprochen, so wie von den Delphi-Clients. Der C#-Webservice ist quasi nur eine Bridge, wenn ich mal Lust habe, schmeiß ich den alten Midas-Server auf den Müll, aber der ist 14 Jahre alt und läuft und läuft.

Die ganze Arbeit (Webservice + Installation) war in 2 Tagen durch. Es muss als nicht immer supersofisticated sein.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz