06 July 2019

Neoxam: Tools

This page is a work in progress.

Neoxam comes with many built-in tools to aide in development and troubleshooting. I will cover some of the key tools below.

SQL Window
This window allows a user to execute SQL commands against the Neoxam database. I would recommend disabling access to this window via configuration settings since the commands execute as the application id. Instead, I recommend accessing the database via a tool such as SQL Developer. This way you have more granular control over the permissions granted to individual users. You will still need some administrative users to have elevated privileges in order to clean up data and tables.


Evaluator
This window allows a user to execute scripts written in the Neoxam scripting language. These scripts can be used to stage or clean up test data, debug a scheduled task job, and test out code snippets. Using the debugger with the evaluator is very helpful when tracing an error.

Debugger 
After opening the debugger, you have to enable it in the right side bar. You can set breakpoints by double-clicking on the left margin of the line you would like to place it on. You can also enable and disable breakpoints via the checkboxes found in the right side bar (you will only see them if you have one or more breakpoints set).

Neoxam: Administrative System Screens

This page is a work in progress.

Network Statistics
This screen shows the processes running on each Smart Planet and Scheduler. Regular users should not have access to this screen as it provides the ability to shutdown servers and disconnect clients. This screen also provides the ability to move clients between servers, display IP addresses, and display ports for the servers.

Scheduled Tasks
This screen displays the configuration of scheduled tasks. You can see the name of the rule being called, parameters being passed to that rule, and the schedule that the task should execute on.


Job Reports
This screen displays the results of scheduled tasks that were executed. You can view the output in the bottom of the screen, view the location of the log, and what scheduler executed the task. Successfully executed tasks show a green check. Executing tasks show a grey gear. Failed tasks show a red X.

Neoxam: Operators

This page is a work in progress.

Assignment

:=  is used for assigning values to variables. If you are used to Java or other langauges that use the
      equal sign, then this will take some getting used to.

?= is used to assign the right side value to the left side variable if the left side variable is empty.


Comparison

returns true if the left side of the operator is numerically greater than the right side.

returns true if the right side of the operator is numerically greater than the left side.

returns true if the two sides of the operator are equal.

>= returns true if the left side of the operator is greater than or equal to the right side.

<= returns true if the left side of the operator is less than or equal to the right side.

!= returns true if the two sides or the operator are not equal.

07 June 2019

Neoxam: Reserved Words and Their Uses

This list is a work in progress. If you have any to add, please leave a comment with your suggestion.

Reserved Words with no Use

I found it confusing that some words common in other languages would show up as bold within Neoxam but would not perform any function.

     break

     continue

Reserved Words

     for (i=0: i<5; i+1) - Similar to other languages. However, break and continue to not work. If you
            want to exit on specific conditions, then you must use if blocks to set and check flags.

     foreach item in array - This will loop through each item of an array.

     if (1=1) - Executes the if block if the comparison is true.

     else - Follows and if block and executes if the preceding if statement is not true.

     while (i<5) - Executes until the given condition is no longer true.

     try - Denotes a block of code to execute. If an error occurs, the following "onerror" block will be
              executed. I would recommend encapsulating your rule (function) in a try so that you can
              provide a detailed error message via the onerror block.

     onerror - Similar to the catch block in Java. The code in this block will execute if there is an error
                      in the preceding try block.


     return - Exits the rule (function) with the optional given value. Returning zero at the end of a
                   successfully executed function is not required, but can be useful in conjunction with
                   some automation tools.
   

Neoxam: Shortcuts

This page is a work in progress. Feel free to contribute in the comments.

Many common shortcuts work in Neoxam, such as Ctrl X, Ctrl C, Ctrl V, etc. Here are some of the Neoxam specific ones:

Ctrl+H - Open the audit trail (history)
Ctrl+I - Open the inspector for whatever item has focus
Ctrl+Q - Exits the application
Ctrl+T - Brings up audit history. This is a different view than right clicking or Ctrl+H.
Ctrl+G - Opens the config window for the screen in focus.

F3 - When you click on the name of a rule being called in a script, you can hit F3 to bring up the implementation of the called rule.