A GUI option for your CA:2E systems - Quickstep:2e

Quickstep GUI for Synon 2E applications


06/12/2025 - Update to remove legacy links that were causing Google to have a hissy fit!

Shame on me I hear you all say!


How dare he use his personal blog for a product launch for his company.

Well, I can assure you I haven’t sold out, not in the slightest and I certainly haven’t been asked to do this. But I did state when I started this blog that I’d post the latest news as I heard it for both CA:2E and CA Plex.

Today the revised website for Quickstep:2e was launched by SASIT (www.sasit.co.nz) based in Auckland, New Zealand. Also, the latest build of the product (version 3.1) has been compatibility tested with CA:2E 8.5 and it works a treat.

Synon GUI


Remembering that not every application in your armoury requires the total modernisation treatment. Quickstep:2e remains a viable alternative for organisations that are happy with their green screens productivity.  You are also happy with the CA:2E development environments rapid development capability but want to give a little extra functionality with the least possible expense.


Using Quickstep:2e is one of the easiest ways for you to create a GUI for your CA:2E applications.


Anyhow, don’t take my word for it.  Just visit the site, download and try for yourself.

www.quickstep.net.nz


Thanks for reading the
Synon 2E and Plex Emporium by Lee Dare (A developer blog)
Lee.

'Generic' Data Driver File + Printing/Displaying Arrays (Part III)

Data Driver for *arrays in Synon (Arrays on screen or print)


UPDATE: 06/12/2025 - Linked to a summary post dedicated to deep dive long form posts.

Firstly.  Sorry for the delay in finishing off this series.  I have been away on holiday for 6 weeks and when I returned I have been in hospital having my knee operation.  I am now in recovery (bed rest) and finally have a little spare time to finish off the blog.

So let's do a little recap. 

In part one, I discussed the merits of a generic data driver file.  This is a different approach to normal 2E data driven programming but as indicated is particularly useful for implementing *Arrays for DSPFIL's or a PRTFIL or for merging head/footer details into one DSPFIL/PRTFIL.

https://leedare-plex2e.blogspot.com/2009/11/implementing-generic-data-driver-file.html

In part two, I was merely trying to walk you through the solution I was required to provide for one of my customers.  These screenshots have been modified from their original form for confidentiality reasons but are posted with permission from my employer https://www.sasit.co.nz/.

https://leedare-plex2e.blogspot.com/2009/11/implementing-generic-data-driver-file_20.html

Today I am just going to do a quick walk through of what was required to create the solution.  With a little bit of effort (and luck) you should be in a position to work this out for yourself.  Of course, I am always happy to take questions and assist if necessary.

Step 1.  Implement a Data Driver file.

A very simple file with one key.  I just made mine a simple numeric field.

Data Driver project

Here are the field details


Data Driver project

I just went with the default sizes for a NBR field.

Remember, once you have created this file you will need to populate it.  I simply populate this with two records 1 and 2 as the keys.  I have seen other implementations where people have put all 99,999 records in the file to make their programming a little easier.  I prefer a slightly different method of key jumping.  Explained a little later.

Step 2 - Some AD coding for the Super 14 table.

I have already computed my table placings based on the scores that have been entered into the system and the Array is keyed in position order.  In the AD below you will see that I set a counter.  This was initialised to 0 in the initialise program section.  The counter is there so I get the correct record for the correct position in the table as my data driven data only has two records.  If I wanted to, I could have populated more and had the counting already available in the DB1 context as I read each record. Personnal preferences here I guess.  I'd be interested in your viewpoints.

Next, I simply retrieve the data from the Array and do some populating of the fields in the subfile.  Now because I am reading down the data driver file and there are only two records I simply have to reset the cursor by doing a re-read of the first record if I think that there are other records to be displayed.  If not, the second record is read, not a lot happens and the subfile loading has done its job.

Data Driver project

This is a screenshot of the device design for the Super14 table.

Data Driver project

And the final table with 2009 results in place is as follows:-


Data Driver project

That's it.   Simple.  If there are other areas in 2e you'd like me to cover.  Drop me a line.

Thanks for reading the
Synon 2E and Plex Emporium by Lee Dare (A developer blog)
Lee.

'Generic' Data Driver File + Printing/Displaying Arrays (Part II)

Data Driver project to get *Array onto screen or print


UPDATE: 06/12/2025 - Linked to a summary post dedicated to deep dive long form posts.

The greatest rugby competition on the planet. Alright, I live in the Southern Hemisphere now and as a direct result have begun to believe the hype. That said the Super 14 (Super 15 from 2011) competition is recognised as one of the strongest leagues in Rugby Union and has team from Australia, South Africa and my current place of residence, New Zealand. Sorry to all those that think I have sold out and not created a Football (Soccer) or NFL example.

System Overview

The requirement was to build a system that allowed the user to make simple sports results/margins predictions on a group of games on a weekly basis. The fuxtures would be published and the predictions made. Once the results were known they would be entered in to the system and participants points (awarded for correct or near correct predictions) would be calculated.

Requirement

Not everyone had the time to trawl the internet looking for a league table that may assist them with making their predictions (Hopefully they have enough time to read this article though). The requirement was to show a realtime league table as fixtures results were entered.  It was decided to record the points the actual teams achieved for each fixture and then simply build the league table on the fly.

Additional information

One could have built a simple file and recreated each and every time the results changed. However, due to the limited number of teams and fixtures in a period it was decided to build on the fly in an array. Also this also meant there was no physical file to maintain and promote and the user could easily view any of the previous years.

Solution

Using a generic data driver file. Build an array that computes and sorts the team table into the correct order and then read from the array the teams and show in that order they are in the table.

Next week I will show you how this was achieved. There will be otherways to receive the same result and all notes are intended as a guide. Your individual circumstances and requirements may vary but feel free to emulate and utilise.

As an appetiser the screen below is a DSPFIL based over an Array.

Data Driver project

If you require any further assistance you can always email me at (leedare at talk21 dot com)

Thanks for reading the
Synon 2E and Plex Emporium by Lee Dare (A developer blog)
Lee.

'Generic' Data Driver File + Printing/Displaying Arrays (Part I)

Generic Data driver for *Array to Screen (DSPLFIL) or Print (PRTFIL/PRTOBJ)


UPDATE: 06/12/2025 - Linked to a summary post dedicated to deep dive long form posts.

This is a three part story.

I can think of quite a few occasions in 2E where I have needed to display or print information from a non 2e standard file i.e. A non 2E defined file, an array or even a Data Queue.

I have also had the need to build PRTFIL's and DSPFIL's which needed to aggregate data in a master/detail arrangement. The example below is from a change management application I worked on years ago.  It shows a diary note (Header) and the detailed comments (Detail) in one screen and uses a toggle button to determine the entires shown for either the summary mode or detail mode.

Sample MEMOS screen
Sample MEMOS screen

To implement these solutions I have used the 'Generic Data Driver' file concept.  I have introduced this at the last 3 2E sites I have worked at.

A worked example of how to do this with screen shots and code sample code will be in part III .  I have also included some notes to help you set up your own generic data driver file and one example of how to utilise it.  This example also has the added bonus of showing you how you can show arrays on a DSPFIL.  Whooarah....Yippee....Get on with it..... I can hear you all say........

This might save Rory and Simon some hassle anyway!!!!  At least with fending off this often requested enhancement to the base 2E tool.

Until then.....(Next Week).

Thanks for reading the
Synon 2E and Plex Emporium by Lee Dare (A developer blog)
Lee.

Enhancement Requests

CA Plex wishlist post


Well it is almost that time of year again.  You know.  Christmas!!!!   We all sit back and relax, eat turkey (far too much) and discover that port is okay to drink by the bottle after all.

But putting that aside it is also nearly the new year and that will mean the annual CA enhancements voting survey.  So many of you know this annual event and the results are collated and influence the R&D effort. 

Certainly a .NET client for Plex came top last year and this is what we saw at the conference albeit in technology preview mode.

Whilst not everything on the list can get done.  CA tend to try and get the balance right between the list items that rank highly and the market direction of the product as they see it too.  Which is fair I guess.

My call to you all today is not that the enhancements are starting soon and you should al be reaching for your new 2010 Pirelli calendar.  That's for Bill and the team to decide.   However, I am saying that the list is made up of requests that we make to the CA support desk.  i.e. no requests equates to a smaller list of items or last years ones (some of which may still be very valid).

My challenge to the community is to think through some of your preferred enhancements and ensure that you register these via the support desk online so that they make the list for you to vote on.  I am also aware that CA is planning to extend its arm further into the user community with a product advisory type approach involving some of the clients.  I am certainly looking forward to contributing to this.

However, in the meantime, start raising those tickets and remember when you are voting you are voting for your top ten in the order you want them.  Some people have been confused by this in the past..... 

Thanks for reading the
Synon 2E and Plex Emporium by Lee Dare (A developer blog)
Lee.