Guidelines and tooling for the InVision Solution Development Cycle

You’ll probably need to make changes to, or continue developing InVision solutions after they have been published to production. Today, we’ll present a simple best practice pattern or guideline for continued development of InVision solutions, and the new InVision Data Migration Tool (InVision DMT for short) which helps you in this process.

Continue reading

InVision 2.0 Beta 2

InVision 2.0 Beta 2 is ready for download!

Because x-mas got in our way, it took more than the promised 2 weeks between Beta 1 and Beta 2, but now it’s here. Our primary focus for Beta 2 has been fixing the bugs in Beta 1, adding support for table reports and a few new features that will make Workbook development a bit easier.

New Features

  • Added support for Internet Explorer 10
  • In previous versions, only new, modified and deleted rows were passed to the server during a save operation. We’ve added support for optionally passing the entire Worksheet and Setting data set from the client to the server when executing a SaveData action in a Workbook. This enables you to have access to all the rows in the data set, not just the modified ones, when perform custom business logic on the server in save interception scripts. To enable this feature, you need enable the Save Interception script feature and specify ‘All’ rows in the Arguments tab.
  • Eaze native functions ISNULL and ISNULLORZERO has been extended to accept one or two arguments. Calling the functions with two arguments makes the functions behave as previously, but calling the functions with one argument makes them evaluate the expression and return true or false whether the resolved value is null or 0. This is helpful for writing statements like IF(ISNULL(expr,0) = 0,0,…) which can now be expressed as IF(ISNULL(expr),0,…)
  • Added support for filtering by type in the Solution Explorer using type:<typeName> as a filter condition, for example you can filter on objects of type view by typing type:view.
  • Added 3 new Workbook functions
    • IsHostPageActive() – Can be called from an Action to check whether or not the calling component is hosted in the currently active page.
    • HasFilterChanged() – Can be called from the LoadData action of a Worksheet, Setting or Report to check whether or not bound filters have change since the last time data was loaded.
    • GetActivePage() – Returns information about the currently active page.

The primary use cases of the 3 new Workbook functions are to make it easier to express lazy (re)loading data for Worksheets, Settings or Reports without manually having to juggle a bunch of variables.

Fixed Issues

A release notes document listing the most important fixed issues can be found here.
However, here are a few highlights

  • Table reports are now supported
  • We’ve managed to significantly speed up the performance of Dropdown column cell editors in IE and Edge
  • Date cell editing bug fixed, meaning the value won’t “randomly” change if the cell is double clicked.
  • Page popup content display issues have been fixed
  • Drop down filters now correctly displays the default filter value when loaded

Where can I get it?

Internal users can get it from <fileserver>InstallsD-SoftwareProfitbaseProfitbase InVision2.0Beta2

External users can request a copy (or demo) by contacting Profitbase.

Upgrading to Beta 2

If you already have Beta 1 installed, and don’t want to do a side-by-side install, you need to uninstall Beta 1 and then install Beta 2 using the same instance name to continue using the same databases.

If you’ve used custom themes in Beta 1, you need to recompile the theme. The reason you need to do this is because Beta 2 is installed to a diffrent folder than Beta 1.

If you’re going from InVision 1.0 to 2.0 Beta 2, you should read the Beta 1 release notes first.

Additional resources

  • A preview of the technical documentation can be found here.

Things to come

Except for fixing bugs and adding the last missing features, the next Beta phase will focus on adding support for charting and prepare for Business Module templates such as Profitbase Finance. We’re also working on a Data Migration tool that will make it much easier to continue developing InVision solutions already in production.

– The InVision team

InVision 2.0 Beta 1

We are happy to announce InVision 2.0 Beta 1!

With InVision 2.0 Beta 1, we have moved the end user client away from Silverlight and over to HTML5, making it true cross platform. The InVision Designer and Server is primarily unchanged, except for a few changes required for building HTML5 applications instead of Silverlight applications, some additional new features and bug fixes.

Obviously, moving from Silverlight to HTML5 required a total rewrite of the end user client from the ground up. Because of this, some features from InVision 1.0 did not make it into Beta 1, but they will be there by the time we ship the final release.

This post will highlight the most important new features, changes and current issues in Beta 1.

Supported Browsers

  • IE 11 (Support for IE 10 is coming)
  • Microsoft Edge (if you’ve installed InVision locally, you must use localhost instead of your dns name when opening a Workbook…)
  • Chrome 46.0 or higher
  • Firefox 42.0 or higher

New Features

  • Eaze – A new scripting language for writing spreadsheet formulas, cell behavior rules, form validation and configuring the Workbook Interaction.
  • Themes and styles are declared globally using LESS / CSS, and then applied to the visual elements in the Solution.
  • Live configuration reload of theme and Workbook Components during development
    • CSS style sheets, Worksheet and Setting configurations reloads after they have been modified and saved from the InVision Designer
  • Plugin support
    • You can now write custom visual and non-visual plugins to the end user client using HTML, CSS and Javascript or Typescript. Plugins have full access  to the InVision API and Workbook Interaction Model.
  • Export and Import Scripts and View queries with automatic two-way directive resolution

Things that have changed since Version 1

The primary changes from InVision 1.0 to 2.0 Beta 1 have to do with styling, spreadsheet formulas, cell behavior expressions and setting up the Workbook Interaction Model.

All styles are now defined globally, so we have removed all the local and inline styling properties in exchange for the ability to specify the CSS class name(s) on elements that can be rendered in Workbooks. This makes it easier to manage all the styles used in your Solution, and it enables you to reuse style definitions across multiple components.

In Version 1.0, we had two internal script execution runtimes. One for spreadsheet formulas and cell behavior expressions, and one for the Workbook Interaction Model. With Version 2.0, we’ve moved all our component scripting to the new Eaze runtime, meaning you’ll use the same syntax and have access to the same core library functions everywhere. Compared to the v1 script runtimes, Eaze is faster and much more powerful, giving you a more powerful tool to work with. The Eaze syntax is slightly different than the old syntax, so if you’re migrating a Solution from version 1 to version 2, you’ll have to make some manual changes to your spreadsheet formulas and Workbook Interaction configuration.

Upgrading from InVision 1.0 to 2.0

With Beta 1, we do not provide an automatic upgrade option. If, however, you want to upgrade an InVision 1.0 database to 2.0, you’ll have copy the database and run a script to set up two new metadata tables. The script can be found in this document.

Note that you cannot run InVision 1.0 and 2.0 against the same database, so if you want to keep your current InVision 1.0 running, you need to make a copy of the database before you run the scripts and change the connection strings for the 2.0 instance to point to the new database.

Things we’re still working on

  • No templates are available, meaning you cannot install business modules such as InVision Finance or the Loan Portfolio Manager
  • Page navbar paging not yet supported
  • Reports are not yet supported
  • Spreadheet issues
    • Auto sizing columns does not work when using stacked columns – recommends setting a fixed width
    • Some cells in the summary row is displaced when there are no scrollbars
    • Dropdown column editors are slow in IE and Edge. We will switch to a different editor type in Beta 2
    • Context menu option “Reverse distribute relatively” is not yet implemented
    • Context menu always opens below the clicked cell, so it will be clipped against the edge of the browser window if there is not enough space
    • AMORLINC and AMORLINCMTH functions are not yet implemented
    • No visible border between header and first row when row selectors are enabled in Chrome
    • Filtering not supported
    • Content of checkbox cells are not centered
  • Workflow Control Object status selector does not show color indicator in IE
  • Workflow State tree does not show color indicators
  • Workflow tab does not properly resize after the window has been resized

Where can I get it?

Internal users can get it from <fileserver>InstallsD-SoftwareProfitbaseProfitbase InVision2.0Beta1

External users can request a copy (or demo) by contacting Profitbase.

Once it’s installed, how do I launch it?

If you accept the default settings in the installer, you can launch the InVision Desinger from <webstite>/InVisionDesigner/main and the end user client landing page from <website>/InVision

Note! You cannot use ‘localhost’ as hostname when running the InVision Designer, because that will prevent you from making web service calls to the end user client web service api.

Wrapping things up

Should you use Beta 1 in production? Probably not, but it’s your call. It’s pretty stable, but it’s a beta, and it most probably contains bugs that we do not know about yet. We will release new beta versions about every 2 weeks, but we cannot promise there will be no breaking changes between them, and in which order bugs will be fixed.

Additional resources

  • A detailed list of bugs, changes and new features can be found here.
  • A preview version of the techincal documentation can be found here.

Welcome to the InVision team blog

Hi,

Welcome to the InVision team blog at Profitbase!

This is where we will be posting news and announcements about Profitbase InVision, such as new releases and pre-releases, technical articles, feature highlights, how-to guides and product plans.

So what is Profitbase InVision?
Profitbase InVision is a platform for building business applications and running business processes. Applications are built using the Profitbase InVision Designer and published to the organization as web applications requiring little or no training to use.

Prebuilt business components can be downloaded and installed within minutes and then customized to meet the exact needs of the customer. Other business systems can easily integrate with Profitbase InVision through a RESTful Web API, or by connecting directly to the SQL data storage.

Profitbase InVision can be extended by building custom business and user interface components using the Profitbase InVision Designer and other development tools, such as Microsoft Visual Studio.

Stay tuned for news about the upcoming Beta 1 of Profitbase InVision 2.0!

– The InVision team