xBase WAA und Internet
Verfasst: Sa, 19. Sep 2009 13:46
xBase WAA und Internet
Anfang vor 20 Jahren mit Clipper Warenwirtschaft dann vor 10 Jahren mit xBase und seit gut 3 Jahren
Internet mit WAA (mehrere zum Teil sehr umfangreiche Applikationen mit WAA) möchte ich Alle hier an meinen Erfahrungen teilhaben lassen. Ich denke mal hier im Forum und bei allen xBaslern wird dieses Thema bestimmt immer wichtiger.
Zuerst mal Grundsätzliches zu meiner Nutzung von xBase und WAA, außer xBase1.9 prof und Tools
werden keine weiteren Bibliotheken eingesetzt. Ich nutze heute nur noch wenige Funktion des WAA Funktionen des WAA: oHtml:getVar(), oHtml:put() und in wenigen Fällen oHtml:getAllVars()
Der komplette HTML-Code einer Seite wird zuerst in eine Variable geschrieben und mit einem einzigen put()
an den Browser gesendet.
Bespiel der besseren Übersicht wegen hier nur Grundgerüst:
function shopstart( oHtml , oContext, sessn )
/*
prüfen ob session bereits vorhanden wenn nicht neue session erzeugen
sessn wird in einer DBF abgelegt diese enthält auch alle Information über den Benutzer
z.B. Login-Status, Kundennummer u.s.w.
*/
IF EMPTY(sessn)
IF valType(oHtml:getVar(„id“))=“C“
sessn := oHtml:getVar(„id“)
ENDIF
ENDIF
IF EMPTY(sessn)
sessn := getSession( oHtml )
ENDIF
// Dynamischer Aufbau einer Seite, die Formatierung erfolgt über CSS
// einige javascripte werden innerhalb der Funktionen dynamisch erzeugt
cHtml := sheader ( oHtml , oContext, sessn ) // erzeuge HTML-Header meta-tags werden mit memvars // gefüllt
cHtml += shopmenu ( oHtml , oContext, sessn ) // hauptmenu
cHtml += artikelliste( oHtml , oContext, sessn ) // artikel aus DBF und dynamischer Aufbau TreeMenu
cHtml += shfooter( oHtml , oContext, sessn )
oHtml.put(cHtml) // erst jetzt an den Browser senden
selbst komplexe Seiten sind hier je nach Rechner in 0,05 bis 0,2 Sekunden aufgebaut.
Falls Treemenu aktiviert bei 2000 Artikeln in DBF und 3 Warengruppen-Ebenen zusätzlich ca. 0,5 Sekunden
Wenn wesentlich größere Artikel-Datenbank gefordert ist, werd ich wohl auf MySQL umstellen müssen
Javascripte werden statisch hinterlegt, lediglich nur wo erforderlich in der entsprechenden Funktion erzeugt.
In wenigen Fällen wird auch AJAX eingesetzt.
Inzwischen beläuft sich der Quellcode allein für WAA auf über 1.5 MB
Nach reichlich Erfahrung mit IIS unter XP W2003 und Vista bin ich nun wie am Anfang wieder bei Winnetou
der Apache gelandet. Der Grund hierfür waren meine mangelnden Kentnisse in .NET und der Notwendigkeit komfortable Funktionen zu Dateiupload zur Verfügung zu stellen. Mit PHP funktioniert der Dateiupload mit
realer Fortschritt- und Restanzeige hervorragend, außerdem habe ich mit PHP eine wesentlich bessere Perfomance. Die Einarbeitung in PHP war für mich relativ leicht. Erforderliche Bildbearbeitung (Bildausschnitt)
realisiere ich mit xBase und javascript.
Derzeit laufen die Programme auf den unterschiedlichsten Rechnern, XP, Vista, Vista Home und Win2003
Auch auf dem einfachsten V-Server bei 1und1 für 20 Euro mtl.
Der Datenaustausch (Adress, Artikeldaten u. Fakturierung) mit der Warenwirtschaft erfolgt im lokalen Netz durch direkten Zugriff auf die Datenbanken. Weitere Möglichkeit ist das bidirektionale Abholen und Senden über CSV-Dateien im 30 Sekundentakt. Beim V-Server gleicher Datenaustausch über automatische Senden und Empfangen von Mails mit Asinet vorzugsweise im 1 Minutentakt .
Online Zahlung wird derzeit über sofortüberweisung.de ( derzeit preiswertester Anbieter ) und PayPal angeboten.
Hier das Ergebnis: http://www.wintfs.de
Ich hoffe hiermit das Thema Internet hier im Forum etwas mehr zu beleben, und bin für Kritik oder Fragen und weitere Tips
gerne offen.
Gruss an Alle
Rainer
Anfang vor 20 Jahren mit Clipper Warenwirtschaft dann vor 10 Jahren mit xBase und seit gut 3 Jahren
Internet mit WAA (mehrere zum Teil sehr umfangreiche Applikationen mit WAA) möchte ich Alle hier an meinen Erfahrungen teilhaben lassen. Ich denke mal hier im Forum und bei allen xBaslern wird dieses Thema bestimmt immer wichtiger.
Zuerst mal Grundsätzliches zu meiner Nutzung von xBase und WAA, außer xBase1.9 prof und Tools
werden keine weiteren Bibliotheken eingesetzt. Ich nutze heute nur noch wenige Funktion des WAA Funktionen des WAA: oHtml:getVar(), oHtml:put() und in wenigen Fällen oHtml:getAllVars()
Der komplette HTML-Code einer Seite wird zuerst in eine Variable geschrieben und mit einem einzigen put()
an den Browser gesendet.
Bespiel der besseren Übersicht wegen hier nur Grundgerüst:
function shopstart( oHtml , oContext, sessn )
/*
prüfen ob session bereits vorhanden wenn nicht neue session erzeugen
sessn wird in einer DBF abgelegt diese enthält auch alle Information über den Benutzer
z.B. Login-Status, Kundennummer u.s.w.
*/
IF EMPTY(sessn)
IF valType(oHtml:getVar(„id“))=“C“
sessn := oHtml:getVar(„id“)
ENDIF
ENDIF
IF EMPTY(sessn)
sessn := getSession( oHtml )
ENDIF
// Dynamischer Aufbau einer Seite, die Formatierung erfolgt über CSS
// einige javascripte werden innerhalb der Funktionen dynamisch erzeugt
cHtml := sheader ( oHtml , oContext, sessn ) // erzeuge HTML-Header meta-tags werden mit memvars // gefüllt
cHtml += shopmenu ( oHtml , oContext, sessn ) // hauptmenu
cHtml += artikelliste( oHtml , oContext, sessn ) // artikel aus DBF und dynamischer Aufbau TreeMenu
cHtml += shfooter( oHtml , oContext, sessn )
oHtml.put(cHtml) // erst jetzt an den Browser senden
selbst komplexe Seiten sind hier je nach Rechner in 0,05 bis 0,2 Sekunden aufgebaut.
Falls Treemenu aktiviert bei 2000 Artikeln in DBF und 3 Warengruppen-Ebenen zusätzlich ca. 0,5 Sekunden
Wenn wesentlich größere Artikel-Datenbank gefordert ist, werd ich wohl auf MySQL umstellen müssen
Javascripte werden statisch hinterlegt, lediglich nur wo erforderlich in der entsprechenden Funktion erzeugt.
In wenigen Fällen wird auch AJAX eingesetzt.
Inzwischen beläuft sich der Quellcode allein für WAA auf über 1.5 MB
Nach reichlich Erfahrung mit IIS unter XP W2003 und Vista bin ich nun wie am Anfang wieder bei Winnetou
der Apache gelandet. Der Grund hierfür waren meine mangelnden Kentnisse in .NET und der Notwendigkeit komfortable Funktionen zu Dateiupload zur Verfügung zu stellen. Mit PHP funktioniert der Dateiupload mit
realer Fortschritt- und Restanzeige hervorragend, außerdem habe ich mit PHP eine wesentlich bessere Perfomance. Die Einarbeitung in PHP war für mich relativ leicht. Erforderliche Bildbearbeitung (Bildausschnitt)
realisiere ich mit xBase und javascript.
Derzeit laufen die Programme auf den unterschiedlichsten Rechnern, XP, Vista, Vista Home und Win2003
Auch auf dem einfachsten V-Server bei 1und1 für 20 Euro mtl.
Der Datenaustausch (Adress, Artikeldaten u. Fakturierung) mit der Warenwirtschaft erfolgt im lokalen Netz durch direkten Zugriff auf die Datenbanken. Weitere Möglichkeit ist das bidirektionale Abholen und Senden über CSV-Dateien im 30 Sekundentakt. Beim V-Server gleicher Datenaustausch über automatische Senden und Empfangen von Mails mit Asinet vorzugsweise im 1 Minutentakt .
Online Zahlung wird derzeit über sofortüberweisung.de ( derzeit preiswertester Anbieter ) und PayPal angeboten.
Hier das Ergebnis: http://www.wintfs.de
Ich hoffe hiermit das Thema Internet hier im Forum etwas mehr zu beleben, und bin für Kritik oder Fragen und weitere Tips
gerne offen.
Gruss an Alle
Rainer