Fun with summary functions and column rendering on Nitro Query grids
By far the most popular UI component in the Valence modernization framework is the subfile-on-steroids known as the Ext JS grid.
Put a link on it: Launching apps directly from a URL
Sometimes the best way to get a business point across to someone, or get them to look at something at all, is to make it insanely easy for them to get where they need to go with a single click. The Valence 5 portal makes it possible to do this with just about any app or Nitro Query you've got set up. Simply construct a special URL and email it!
Migrating an AutoCode-generated app from Valence 4.2 to 5.0
AutoCode apps generated with Valence 4.2 use Ext JS 4.2 -- the fact that these are the same version numbers iwherever possible it is recommended that you just regenerate the app using the new autocode that comes with valence 5. However, if you've made enhancements to AutoCode apps generated in Valence 4.2 then regeneration from scratch isn't a very viable option.
Using a Validation Program with Nitro Query’s Edit Grid Widget
One of the most powerful widgets available in Nitro Query is the Edit Grid. Traditionally queries are read-only, but with an Edit Grid you can actually allow users to update records in a single-file data source — right from within the query itself! In some cases you may find you can simply create a query for data entry in lieu of coding an actual app, saving yourself a ton of time and effort.
Creating Complex JSON Arrays in RPG
In order to provide data to more intricate UI elements in Ext JS such as trees or collapsible grids with nested lists, you will often find it necessary for your RPG programs to create JSON strings containing arrays within arrays.
Adding Click Events to a Nitro Query
One common trait we see at companies small and large is that users have a seemingly insatiable appetite for queries, dashboards and Excel downloads. Fortunately, the Nitro Query app included with Valence provides a great mechanism for quickly whipping out these kinds of apps without any programming.
CNX and Sencha Announce Formal Partnership for IBM i Modernization
Sencha and CNX Partner to Revolutionize App Modernization for IBM i Applications
COMMON Annual Meeting Recap
If you missed the show this year, here are some pictures from the Conference and of the Valence team in action.
Rob Swanson from CNX gave a few sessions at this event, including:
Valence 5 is Now Available!
CNX Announces General Release of Valence 5
Handling Null Dates with Date Selectors
When working with dates on IBM i you will often need to deal with null date values of 0001-01-01. Depending on the display format you’ve chosen, in a Valence UI designed with Ext JS a null date field will be rendered like this: When the user clicks on the date selector trigger here, a calendar pops up based on the year and month specified in the field.
Styling .xlsx Spreadsheet Cells in Valence 4.2
The VVOUT spreadsheet procedures were enhanced in Valence 4.2 to support the generation of Excel spreadsheets in .xlsx format. You can see a practical example of these procedures in action by clicking on the download button on any of the entities in the Portal Admin app (the corresponding backend RPG code is located in various VVADM*** source members). The procedure for applying styling to cells in these .xlsx-based spreadsheets is a bit different from the old .xls formatting used in prior versions of Valence.
Setting up Valence on IBM i for External Access with SSL
You already know that installing Valence on IBM i and using it internally within your corporate network is fast and easy. Your company’s employees should also be able to access your Valence instances through a standard VPN connection when they are located outside of your company’s physical network. But what about when you need to provide secure access to Valence apps to the outside world directly through the Internet?
Adding "Record in Use" Control to your Valence Apps
Note: This month's tip is an update to a blog post originally made a few years ago, when integrated record locking functionality was first incorporated into the Valence RPG toolkit (in version 3.2.20130912.0).
Uploading and Consuming a Spreadsheet in Valence
If there's one common theme among IBM i power users, it's that they all love playing with spreadsheets! Fortunately, Valence makes it easy to cater to this love.
Using a Dynamically Set App Path
Normally the paths associated with Valence apps are hard-coded to specific values that never change. The users clicks on the app and the Valence Portal directs them to a specific IFS path or web page. But what if you had a special use case where you wanted to alter the IFS path or URL based on who is logged in, or depending on which environment they're using? This can be done using a special exit program technique that will dynamically alter the path of an app upon being launched from the Valence Portal.
Creating a JSON Web Service in Valence
REST-based web service, with the other end being the "consumer" of said service. Consider this scenario: You want to give a VIP customer the ability to have their system automatically contact your system to obtain real-time shipment status updates for specific orders being fulfilled by your company. And as luck would have it, you've already done the legwork to creat an order inquiry Valence app on your system, complete with an RPG program that provides the necessary data for these shipments in JSON format.
Valence 4.2 Has Arrived!
CNX Support. The new features included with Valence 4.2 are summarized in last month's Cat-out-of-the-Bag post, with one significant addition: The mobile version of Nitro iAdmin is now included with the Valence Framework. This handy mobile app makes it possible to perform common IBM i administrative tasks while you're on-the-go with your SmartPhone.
Making a Valence Portal app tab "sticky"
As you create and deploy more Valence apps within your organization, logging in to the Valence Portal becomes more of a daily routine for your IBM i users. In such cases, setting up a global auto-start tab (as done in Portal Admin > Settings > Session Options > Application to autostart) can be a handy way to convey daily news, bulletins and announcements to the office staff. This tip shows how to make that launched tab "stick" so that it's always open. You could also apply this concept to any other apps that are launched in the Valence Portal.
Valence 4.2 - Letting the Cat out of the Bag
How time flies! We're well into September now, which means we're just over a month away from the next major release of Valence, version 4.2. While there are a number of goodies being incorporated into this newest release, the biggest items for Valence 4.2 are:
- PHP support
- JSON-based web service functionality
- A new solution for running 5250 programs in the Valence Portal
Here's a quick breakdown of the details behind these features...
Giving your Apps a Multilingual Flair
With the recent introduction of Polish as our ninth spoken language translation in the Valence Portal, developers now have yet another option for supporting multilingual installations running on IBM i.