Lianja 1.1.3 for Windows is now available for download and purchase from

We are delighted to announce the release of the following Lianja APaaS products:

  • Lianja App Builder 1.1.3 for Windows
  • ianja App Center 1.1.3 for Windows
  • Lianja SQL Server 1.1.3 for Windows
  • Lianja Cloud Server 1.1.3 for Windows
  • Lianja ODBC Driver 1.1.3 for Windows

This release includes:

  • Added a new "Initial UI state" attribute for App, Page, Section and Field. When an App is switched into runtime view the initial UI state is applied. This provides the ability to design the App visually and hide various UI elements until they need to be shown.
  • New "Custom Actions" for pages. These can be optionally specified in the page attributes. This enables you to call app specific business procedures that handle the page actions (Add, Delete, Refresh, First, Previous, Next, Last, Save, Cancel) when you navigate data (by clicking buttons in the Action Bar or when you call Lianja.showDocument() ) and you want to handle these programatically.
  • Script editor performance improvements on large files.
  • Improved color syntax highlighting in the script editor.
  • Added popup "IntelliTips" (intellisense-like functionality) as you type in the script editor.
  • Added a new attribute to App settings, "Initial Page". If specified the specified page is selected when the App is switched into runtime mode.
  • Fixed a few issues that were reported when importing VFP tables into Lianja.
  • Made a few minor UI changes e.g. The "Data" panel tabs for Database,Tables,Procs, and Events are grouped together to avoid confusion. The "Advanced" section in the App,Page,Section and Field attributes is now labelled as "Custom Delegates".
  • Added a progressbar when importing large ODBC databases to provide feedback as to the progress of the import.
  • Added a "Change" delegate for pages. When any data is edited in a field the "Change" delegate for the field is called (if present) then this calls the "Change" delegate for the section (if present) then this calls the "Change" delegate for the page (if present).
  • Added the VFP sys(2007, expC) function.
  • Added CRC32( expC ) to calculate the CRC32 of the given expression. Use CRC32(RTOS()) to calculate a CRC32 checksum of the current record.
  • Fixed an issue importing large MSSQL tables with large varchar columns.
  • Added the ability to display form fields and grid columns as hyperlinks. There is a new LinkClick delegate that is called with the controlsource and the text value of the field as arguments when the hyperlink is clicked (or touched).
  • Added the ability to display grid cells as Buttons. When the button is clicked the LinkClick delegate is called with controlsource,text just as a hyperlink delegate is called.
  • Added the ability to display grid cells as "Custom controls".
  • Added "Insert Before" and "Insert After" to the right-click context menu in the grid column headers.
  • Performance improvements.
  • Added the ability to "Total" grid columns as a summary row at the bottom of grid sections. The "Summary" attribute in the grid section attributes can be checked on and then you can specify what columns should be totaled in the grid column attributes (double click on a grid column header). You can optionally specify an expression (a function call) that will be called to calculate the value to be displayed.
  • Made a small change to the requery() method in the CursorAdaptor (for use with Virtual Tables). If you requery("limit 20,50") then you can paginate the data from the remote data source (if the remote database engine supports the LIMIT clause; MySQL, Lianja and PostgreSQL do, MSSQL does not). This allows you to specify an empty Virtual Table using WHERE 1=0 and provides you with the ability to handle data retrieval manually in the "Ready" delegate or from your own UI buttons in your Apps.
  • Fixed various bugs from reported tickets.
  • Improved international character support.