Desktop to web app, Is it possible?

Hi guys, I have a technical decision to make, so I hope I can get information , tips or suggestions on this.

I have this Clarion 5 app that has been running smoothly for years. Now my client wants to upgrade it in ordre to be able to add information from a smartphone, so her technitians can get field information in real time (just simple data inputting, like client name, equipment and some statistical data).

So I have to make a technical decision about what to do and use:

The current app uses .TPS files.

My client already has her own Windows Server 2019.

I am planning on migrating the Clarion 5 app to Clarion 11. No problem at all.

My concerns come to doing it web accessible. So I have this questions:

  1. Can AnyScreen do the job?
  2. Can I keep the .TPS file structure or it has to be changed?
  3. Do I have to code something else besides my app, or AnyScreen takes care of all of it?
  4. Does AnyScreen generates an iOS or Android app or it is accessible through a web browser?
  5. Does AnyScreen installation in the server requieres some special technical skills or it is pretty much straight forward?

Information on AnyScreen is a little difficult to find. If someone can point me in the right direction so I can learn more, it would be highly appreciated.

Thanks a lot.

  • Paco.

Do you need the complete functionality of the program to be available from the web?
From what you wrote, it does not sound like that is true. You only need limited functionality.
Rather than use one of the techniques to publish your complete application on the web (AnyScreen, TSPlus, etc), another option is to write a NetTalk webserver that only provides the needed web-based functionality.

This would allow you to implement a server which just the needed procedures and have the desktop app continue to be fully functional for the office. Additional functionality could be added to the web server over time/as needed.

Hi Rick, thanks for answering.

For the web portion, I only need the technicians to access 3 catalogs: articles, customers and technicians name. Thats all. So it is a tiny portion of the main desktop program.

So for what you said:

  1. Do I need to upgrade the current main program?
  2. Can I keep the .TPS files or they need to be migrated to another DB plattform?
  3. From Capesoft website, I see that NetTalk is in its version 12 already?

Rick, do you think the Clarion 5 program can continue working as it is and just creating a new tiny app with the 3 catalogs mentioned above and connect it to the NetTalk server, or I have to import the program to Clarion 11?

Thanks a lot, Rick.

Paco.

Hi, Paco.

How is your app currently structured?

It sounds as if multiple people use it already in an office? Is data on a server and everyone runs a Clarion 5 on a workstation that shares that data?

If you take Rick’s suggestion

  1. You do not need to upgrade the current main program.
  2. You can keep the .TPS files
  3. NetTalk version 12 will not work with your old Clarion.
    a. You would make a separate NetTalk web app, using Clarion 11.
    b. The NetTalk app would read and write the same TPS files that your current app is using. But only the TPS files needed for the specific functions you need for your remote use.
    c. If you wanted more sophistication, you might need to add a few more fields to those specific TPS files for data synchronization. But if you’re not doing a “disconnected app” for your field technicians that would not be necessary.
    d. Your existing app continues to work as before.

The NetTalk app IS the new tiny app. Your remote users connect to it using a web browser on their phones or laptops.

As for AnyScreen, the best place for information is on the SoftVelocity newsgroups. There’s a newsgroup specifically for AnyScreen.

Welcome to ClarionHub!

Hi Jane.

Yes, the main program is installed in a main server and all the users access it using the local network at their office.

So, if I understand well:

  1. I keep the main program and the .TPS files untoucjed.

  2. For the tiny remote app, I do need Clarion 11, because Net Talk won’t work for my current Clarion 5 program.

  3. I think I have Net Talk 5, but I never got it implemented. Can this work with a modern Windows server?

  4. I have not clear how Net Talk works. Does it compile the app and makes it behave like a web app? (or something like that?) I assume it rests in the same directory than the main app.

Jane, you showed me a new perspective. I helps a lot.

Thank you!!!

Paco.

Another question, Paco, is whether the “remote” users will also be on the local network at their office or whether they will be away.

If “away” then they will need either

  1. a server on the web (like AWS) with the app and data on it. This app will need to remain in sync with the data for your local network app.
    or
  2. a way to access the local network server from outside through the firewall. This way the NetTalk app (webserver) will be on your local network and will share data (TPS files) directly with your existing app.

Jane,

My client will provide the access to their local network, so both apps (local and remote) will share the TPS files.

So do you think Net Talk 5 will work with an app compiled with Clarion 5 in a Windows Server 2019? Or I will have to make the “remote” app in Clarion 11 with current version of Net Talk?

Thanks.

Paco,

How much is your time worth?

I would NEVER spend hours trying to build something new using outdated software.
NetTalk 5 is 12 years old.
Why spend your time learning something that is outdated?

There have been so many changes and improvements since then that you’ll find it impossibile to get help and support learning that old version.

Also web standards, security, CSS, etc. have changed enormously in that time period.

Definitely learn the current version of NetTalk if you’re going to use that approach.

NetTalk 5 is a no go. Purely for the security ramifications on the web. Let alone all the improvements, etc. in newer NT versions since then.

We’re not saying this is the only solution, but it is definitely one worth considering.

You would need to test using a C11 and C5 app on the same TPS files. I vaguely recall some folks having issues after the newer support for encryption was added to the TopSpeed driver. I haven’t worked personally with the TopSpeed driver in over 20 years.

Note also that there is a learning curve for nettalk, and it’s pretty steep.
With Nettalk you’re creating an app that is a small dedicated webserver designed by you using the nettalk templates. This solution will scale up really well.

You could also use Anyscreen to change a small desktop app into a webserver as well. The learning curve is much less. By the resources used are much more.

Either way you need a current Clarion version and updated templates. After all C5 is nearly 25 years old.

IMO, the only way to allow access to your app from the Internet without making any changes and leaving it in C5 is to use something like TSPlus. There are varieties (GoGlobal, Citrix, etc.)
Quite a few Clarion folks us TSPlus (myself included).

Hi Paco,
I assume her Windows Server 2019 is 64-bit. Therefore, your 16-bit C5 program will not run on her Windows server, unless you can get vDos to not run elevated, which I haven’t figured out.
But you are planning to migrate to a 32-bit Clarion 11 program anyway, so that is moot.
You can keep using .TPS files unchanged.
AnyScreen can do the job, but your client’s requirement is to be able to add information from a smartphone.
You don’t need AnyScreen to do that. You can use a PC, a Mac, a tablet, an iPad or a smartphone with a Clarion 11 app on a Windows Server without using AnyScreen.
I use my smartphone and iPad almost everyday with my server-based TPS-based Clarion 11 app. Most of my users access the remote server via a web browser.
Actually you don’t need a Windows Server. You can use Windows Pro and vDos runs fine on Windows Pro. TSplus runs on Windows Server and on Windows Pro.
If you can find a 32-bit Windows Pro computer it will work, otherwise you can use vDos on a 64-bit Windows Pro computer, until you have the Clarion 11 app ready.
In short, all you need is to put TSplus on a Windows Pro computer in her office and put your unchanged Clarion 5 application on it. Then allow access to the computer’s port from the outside. On the technicians’ smartphones, use the RD Client app, and give her technicians the IP address and port number, and their Windows password.
8 GB of RAM will support about 18 technicians. 16 GB of RAM will support about 42 technicians.
May I suggest the technicians use an iPad or at least a Samsung Galaxy Z Fold smartphone.
Bob

1 Like

Actually C5 can create 32 bit exes. 16 or 32 was a compile option

1 Like

Oh, right, I forgot that. That makes it easy then to do this with the client’s Windows Server.

Wow!!!

Thanks a lot Rick, Jane, Sean and Bob. You made my head spinning with so many thoughts and solutions. You all made me change my original plan.

One of the main project constrains is the time, that’s why the re-use of the old app. So here is what I am thinking:

  • There are less than 9 technicians.

  • The main app is running in 32 bits already in the Windows 2019 server without a problem.

  • I can modify the main app and delete everything but the 3 catalogs the technicians need to access and create a tiny app that runs on a tablet or in their phone.

  • The main program is already running in the local network at their office and all of the 8 or so users access it.

With this escenario:

Can I use TSPlus to connect the small app using the same TPS files?

If so, this will be my route to go, since the client is in a rush (she always is).

Thanks a lot.

Let’s answer your questions first;

  • Can AnyScreen do the job?

Yes

  • Can I keep the .TPS file structure or it has to be changed?

You can keep tps (regardless of the approach you choose)

  • Do I have to code something else besides my app, or AnyScreen takes care of all of it?

Any screen takes care of it for you

  • Does AnyScreen generates an iOS or Android app or it is accessible through a web browser?

No local app, via Web browser

  • Does AnyScreen installation in the server requieres some special technical skills or it is pretty much straight forward?

Installing the server doesn’t take special skills, but there are things to learn and understand. Lots of people have learned it, it’s not hard.

Any Screen 's primary benefit is taking an existing desktop app and presenting it via a browser. This is very powerful, but comes with a catch - each user consumes some amount of ram and cpu resources. For a program like this, small number of users, small program, that’s not a huge consideration. In this case Any Screen is your fastest route to market. You simply write a small, new, app in C11, probably running in a new folder but sharing the data files with the c5 app.

All that said, you will be better off, in the long run, building a Nettalk app. Because;

It’ll force you to learn Nettalk - which in itself is a useful and valuable skill. Plus you’d be learning on a small app, which is a great way to get started. Writing the app will take a couple weeks, and there are lots of resources to help you learn, including a free weekly webinar and a (not free) book.

You will also get experience deploying and looking after a server. Again this is not hard to do, but there are steps to take. You’ll learn about TLS security, how to get certificates (for free) - you’ll need to register a DNS address and so on.

It is inevitable that your Web program will grow. Once your user discovers this approach, especially in this work-from-home era, they’ll dream up more and more functionality for the Web server. Both anyscreen and Nettalk are good for this, but Nettalk means writing some stuff new (anyscreen does not.) then again, Nettalk has a richer set of controls than Clarion, so you end up with a richer Web experience.

Remember Nettalk is a built-for-Web template set, so things like serving static pages, Web sockets, api servers, are all part of the server and are routes you can expand into. Anyscreen is just the desktop app.

Whichever way you go, you’re using c11, not c5. And no, you can’t use Nettalk 5 - that won’t work with tls 1.2,which is required.

Whichever way you go you need to understand that you can’t just stop upgrading, like you did with c5. You MUST upgrade from time to time. The web is a constantly changing security landscape and you are making a long-term commitment to “keep up”. The approach of using a 25 year old compiler and not upgrading will not work on the Web. There is a very real, ongoing cost to running a server, and you and your client need to be aware of that.Do NOT go down a web route if you are not able to afford this cost.

,

3 Likes

Yes. You can expose just the small app.

While this is a good short-term solution, you might then want to build a better one in the background to improve your skills. This will take longer, but an app of this size is good practice and a great way to learn.

Hi Paco,
Time is not really the constraint. You can do this now. It will only a little time. All you have to do is download and install TSplus. And you have to open a port in your router to allow access to the server from the outside.
9 technicians. Okay. The server only needs 8 GB of RAM.
The main app is 32-bit Clarion 5 program. Okay. That works, as noted, without a problem.
Create a tiny app to fit on their tablet or phone. Okay, great. Sounds pretty easy.
The main program is unchanged. Okay. These 8 or so users can access the server in a LAN environment still, but I recommend changing to sign on to the server (using TSplus).
It will be faster, and easier for you to manage. Printing works the same too.
Question about small/tiny app and TSplus. Answer: Yes, of course. Not an issue at all.
I would suggest getting the MobileWeb Edition of TSplus. See my sign on page that is created by using the MobileWeb Edition (and I’m not a web person): 66.135.42.135. Put this IP address in your web browser and see what you get.
There is a 30-day 5-user trial version of TSplus. Also, there is a 15% discount for Clarion developers.
Would you want a test user account on my test server to see how it looks? What time zone are you in?

Hi Bob.

Yes, absolutely!!!

I am with US Central time.

Thank you.

Good thought.

I don’t like to stop learning, so it’s a nice advice. Will do that.