Our company is planning to migrate conventional desktop application to web application. Our main business is property management system and we use LL for printing feature in our desktop application, usually we use the LL designer to customize the template of reports for each client and the template is stored in the sharing computer on the network of each property.
Since we are going to switch to web application, we still need to figure out how to setup the printing feature, which needs the following requirements:
A centralized server for printing system
We setup the standard report for each property and report (Normally we just copy and paste the .lst file to the specific folder in each property)
Each property can customized the report
Each property can only customzed the report which is assiged to the property
We usualy use the API / dll to integrate List and Label with our desktop application. We can trigger the create and edit function, send the fields and variables, define the template path. How does it work with the Server Report? Can we do similar for the web application?
May I ask which programming language you’re using? Basically, on the printing side there is not much difference between a web and a desktop app. You can create printouts using more or less the same code as in a desktop application and simply redirect the user’s browser to the result then.
If you’re using .NET, you can also use our specialized controls like the HTML5 viewer or the web designer. The product comes with a number of samples showing the usage of these controls. Also, we have documentation online for the usage of both the web designer and the viewer.
Maybe this can help already? Otherwise, feel free to reach out with a bit more details on your environment.
We use Progress (Windows) for the desktop app and ReactJS (in Linux environment) for the web app.
Ideally we want to seperate the Web UI and printing service, since there will be several Web UIs. So we think that the printing service (in this case, List and Label) will run in a separate server, waiting for printing requests.
As I understand from your answer, we can do the printing like before (sending fields, parameters, select the .lst used for the printing, using our existing Progress application) and send back the result (in pdf, excel, etc). Is it correct?
Yes, exactly - but keep in mind your printing server will need to be a Windows server. And you’ll have to make sure no user interaction is required during the printout. Here is a primer on how to do that:
Ok, I fully understand about the printing process.
And how about the design process? We already have many .lst files which generated using the designer (not web designer/ad hoc designer). Does this mean the user have to download the .lst files and design the report using the desktop designer?
You don’t have any .lst in a web application. You have to implement a (database) repository. Just search for IRepository in the help file.
The Repository manages all “files” for you.
As for the designer, yes the user will download a special web report designer from a web site.
While working with the Repository is definitely worth checking out, you may also use your unchanged LST files even in a web application. Designing them would then be done in a small desktop application that mimics the server’s data structure and would need to be made available to the clients. With this approach, you would need to take care of locking (i.e. only one design process at a time) yourself. If you would like to use our web designer and HTML5 viewer, you’ll need to use an ASP.NET application and import your existing project files into a Repository as @Marco_Muller1 lined out.