Monitoring progress by adding a single node

Keep users informed

Some operations in applications may take a long time. For instance, loading data from an external source or running an algorithm on a large graph. In these situations, you want to keep your users informed by providing them with visual and meaningful feedback. The same applies when you iterate through a list. In that case, users want to receive visual updates on the processed items. Adding a progress indicator is a good solution in both situations.

A single node makes all the difference

Graphileon nodes are functions. The one in this example is a so-called HtmlView, that displays an Html widget, inside of which we put a textarea, that is updated every time an incoming TRIGGER is fired. You can use the TRIGGER payload to set the message that appears in the log. It has a batch TRIGGER that points to itself to clear its contents.

If you want to add a progress indicator to your Graphileon configuration, you can add the function and the batch trigger by running the Cypher statement below against your application store.

// The Cypher statement below does not take into account any existing data in the database 
// you are running it against.
// It may cause conflicts (e.g. with existing constraints), or produce other undesired side effects 
// (e.g. change results of existing queries).
// It is therefore highly recommended to create a backup of your graph database before 
// executing the statement.

CREATE (_267152:`DUMP`:`IA_Function` {
`#logEntries:evaluate`: 'full',
`container.height`: '400',
`$template`: '
<textarea style="height:95%; width:95%;" id="qvFPAgvR5dEcWHJH">{{#logEntries}}

let $textarea = $(\'#qvFPAgvR5dEcWHJH\');
`container.closable`: 'true',
`name`: 'Progress',
`$area`: 'sidebar-right',
`type`: 'HtmlView',
`uuid`: 'd978f150-b529-11ea-a47d-0242f63b198c',
``: 'progress',
`#logEntries`: '[]',
`$_instance`: 'progressView'
CREATE (_267152)-[:`TRIGGER` {
`action`: 'clear',
`#logEntries:evaluate`: 'full',
`type`: 'batch',
`uuid`: 'e7e3e420-b529-11ea-a47d-0242f63b198c',
`#logEntries`: '[]'

Triggers that point to the HtmlView should update the contents of the log by putting properties on the trigger, like the ones below.

  "$_update.add.logEntries": "'Data loading started at ' +now()",
  "$_update.add.logEntries:evaluate": "full"

An interactive diagram that illustrates the approach is available here. To see it in action, watch the video below.


Card image cap
Graphileon’s graph-based proposal wins JenV Hub Challenge of Netherlands Ministry of Justice and Security

Graphileon’s graph-based proposal wins JenV Hub Challenge of Netherlands Ministry of Justice and Security Today we proudly announce being awarded a contract to design and test a solution that facilitates the drawing of networks for the Dutch screening authority Justis. Justis is responsible for providing information to all controlling and/or regulatory authorities (e.g. the police), … Continued

Card image cap
Graphileon 3.1 released, now with App Library!

Graphileon 3.1. released, including an App Library! Graphileon 3.1 is here! This latest version includes fixes, improvements and a number of new features that were requested by our users. The new App Library is the most visible new feature. It contains demos to inspire you and to get you started building your own graphy applications. … Continued

Card image cap
Graphmantics and Graphileon Partner to Build Flexible Enterprise Knowledge Map

Graphmantics and Graphileon today announced a partnership to build solutions to create and manage flexible Enterprise Knowledge Maps, primarily focusing on SAP-centric customers. The combination of Graphmantics’ decades-long SAP experience and the agility of the Graphileon rapid application development framework allows for the delivery of solutions that help large enterprises realize enormous savings in terms … Continued

Get started with the Personal Edition

The easiest way to get to know Graphileon is by using the Personal Edition. Build graphy applications and browse your graph stores in a way you never did before.