Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Migrating an application from VFP ( sob! )
Message
De
04/02/2015 05:13:41
 
 
À
04/02/2015 04:40:10
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows Server 2012
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Divers
Thread ID:
01614670
Message ID:
01614856
Vues:
68
>I'm sorry to say but I really cannot understand the need for FIC type options when solutions like TSPlus/2X/etc. allows developers to run an existing app (written in anything) on a server and accessible via any modern browser or any Java enabled device with zero changes to the original app and without needing to install anything on the user's computer. Both FIC and TSPlus type solutions require decent bandwidth but the difference is FIC has to transfer actual data up and down the wire whereas TSPlus only transfer screen updates which I bet will be much faster than FIC for large dataset browsing.

>TSPlus requires no code changes to a VFP app at all and maintains the exact same interface as if run on the local desktop. It solves the problem of having to transfer data up and down the wire, removes network connectivity causes of database failures, provides access on all devices including Windows, Apple, Android, desktops, tablets, and even smartphones. Handles login management. It requires a single server-side installation of TSPlus (completed in minutes) and nothing else. For a single fee per server you have unlimited user access limited only by server hardware (same limitation as FIC type solutions). With a 64 bit Windows server, terabyte+ SSD, and 64+ Gb Ram you can handle a lot of users easily.

> If the idea is to extend the life of VFP apps then the TSPlus type of solutions is, in my opinion, a far better option.

Hi Jos,

If you could only take 5 minutes to play with the application I posted earlier while making sure to open your browser's development tool (eg firebug for firefox as of ss attached) - if ever you're familiar with web development - you'd understand that your assertions are totally wrong, maybe the fruit of your imagination or pre-conceived ideas.

> FIC has to transfer actual data up and down the wire

Here are the request and response headers for a user request on this application:
REQUEST:
Accept	text/javascript, text/html, application/xml, text/xml, */*
Accept-Encoding	gzip, deflate
Accept-Language	en-us,en;q=0.8,fr-fr;q=0.5,fr;q=0.3
<b>Content-Length	83</b>
Content-Type	application/x-www-form-urlencoded; charset=UTF-8
Cookie	__utma=156601276.537478118.1423043283.1423043283.1423043283.1;ip=49W0N77YB
Host	62.244.100.153
Referer	http://62.244.100.153/ip/index.ip
User-Agent	Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:35.0) Gecko/20100101 Firefox/35.0
X-Prototype-Version	1.7.1
X-Requested-With	XMLHttpRequest
RESPONSE:
Content-Encoding	gzip
<b>Content-Length	693</b>
Content-Type	text/xml
Date	Wed, 04 Feb 2015 09:51:55 GMT
Server	Microsoft-IIS/8.0
Set-Cookie	ip=49W0N77YB; path=/; expires=Mon, 3 Aug 2015 23:00:00 GMT
Vary	Accept-Encoding
X-Powered-By	FoxInCloud
Request is 83 bytes
Response is 693 bytes

How many bytes does a request on TSplus require?

For further analysis, here is the response to this sample request (beautified) (should be easily readable if XML renders right):
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<IntuiCat>
	<Result>
		<v>true</v>
		<t>boolean</t>
	</Result>
	<script_>$('ip_scx-cntuserconnected').update('
&#60;label id="ip_scx-cntuserconnected-lbl1" class="label awlbl ipwlbl"
title="Connected since 10:44 AM from IP 93.188.192.147"
style="color:#C0C0C0;width:192px;height:15px;display:block;font-weight:normal;font-family:Calibri;"&#62;SG SG [STI]&#60;/label&#62;
&#60;label id="ip_scx-cntuserconnected-lbl2" class="label awlbl ipwlbl"
title="Connected since 10:49 AM from IP 82.238.172.58"
style="color:#C0C0C0;width:192px;height:15px;display:block;font-weight:normal;font-family:Calibri;top:15px;"&#62;SG SG (me)&#60;/label&#62;');
/* Free space for Firebug messages */
$('ip_scx-cntuserconnected-lbl1').effectAppear=true;$('ip_scx-cntuserconnected-lbl1').effectFade=true;
$('ip_scx-cntuserconnected-lbl2').effectAppear=true;$('ip_scx-cntuserconnected-lbl2').effectFade=true;
$('ip_scx-cntuserconnected').effectAppear=true;$('ip_scx-cntuserconnected').effectFade=true;
</script_>
	<UserID>49W0N77YB</UserID>
	<AppTime>0.031</AppTime>
	<ServerVersion>2.20 beta03</ServerVersion>
	<ServerTimeStamp>{^2014-11-20 10:05:12 AM}</ServerTimeStamp>
	<ServerTime>0.299783</ServerTime>
</IntuiCat>
> TSPlus requires no code changes to a VFP app at all and maintains the exact same interface as if run on the local desktop

This is a choice, fully respectable.

Many users and clients need and ask for a different GUI on the Web:
- modern, trendy design, graphics and interaction (effects, etc.)
- adapt the GUI to the screen resolution

By relying on standard HTML5/CSS/JS FoxInCloud answers this requirement

here is a sample generated HTML - no inline style so you can set the visual appearance in a separate CSS:
<!-- Generated on 02/03/15 07:45:52 PM in 1.515 sec by FoxInCloud version 2.20 beta03 /-->
<div id="ip_scx" class="form awfrm ipwfrm">
<div id="ip_scx-shpsearch" class="shape awshp ipwshp" style="display:block;">&nbsp;</div>
<button id="ip_scx-cmdexit" class="commandbutton awcmd ipwcmd" style="display:block;" tabindex="29"
type="button"></button>
<select id="ip_scx-cbodivision" class="combobox awcbo ipwcbo" style="display:block;" title="Search on Division"
tabindex="6" disabled="disabled" size="1" autocomplete="off">
</select>
<div id="ip_scx-grd" class="grid awgrd ipwgrd" tabindex="20"></div>
<button id="ip_scx-cmdpayclear" class="commandbutton awcmd ipwcmd" style="display:none;" title="Clear pay on multiple
invoices" tabindex="33" type="button">...</button>
<button id="ip_scx-cmdappall" class="commandbutton awcmd ipwcmd" style="display:none;" title="Approve multiple
invoices" tabindex="34" type="button">...</button>
<button id="ip_scx-cmdpayall" class="commandbutton awcmd ipwcmd" style="display:none;" title="Pay multiple invoices"
tabindex="35" type="button">...</button>
<button id="ip_scx-cmdappclear" class="commandbutton awcmd ipwcmd" style="display:none;" title="Clear approval on
multiple invoices" tabindex="36" type="button">...</button>
<img id="ip_scx-imgdiv" class="image awimg ipwimg" alt="Division logo of current invoice" title="Division logo of
current invoice" style="display:none;" />
....
<!--/ Generated on 02/03/15 07:45:52 PM in 1.515 sec by FoxInCloud version 2.20 beta03 -->
Thierry Nivelet
FoxinCloud
Give your VFP application a second life, web-based, in YOUR cloud
http://foxincloud.com/
Never explain, never complain (Queen Elizabeth II)
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform