Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Scripts

You can create queries and extend part of the application using the domain specific language of the called IHDSL domain. To write a new query, open a script terminal window, define the data source you will use (you can define new ones), and write your script.
To do this, the context menu has support for IHDSL commands, command templates, available field names and fields, and the power of the Smalltalk dynamic environment to inspect and debug objects in runtime.

...

An enabled user with SQL knowledge can define its own indicators and filters in IHDSL. You could build the equivalent complex SQL stored procedures in a few lines of expressive code. If you part of examples, does not need to know Smalltalk. If you know basics of Smalltalk, it opens up a new world of productivity with IHDSL.

Examples:

  1. data average defects

  2. data distinct type

  3. data groupBy  field: #project as: 'p'  select: [:r| r count] as: 'items'

  1. data select defaults

  2. data where releaseName: '*2012*'

  3. (data releaseName where: '*2012*') distinct type 

The following example implements a complex algorithm whose implementation in SQL not only demanded more lines of code, some far from a declarative level, a code harder to understand that IHDSL:

...

We call the Rubby version of our IHDSL domain language Ruby Query Language (RQL).
The same protocols and objects are available as in IHDSL, that is:

...