Ardent JavaScript™ - Functionality Details

To process data on the client's computer, we are utilizing our Ardent JavaScript™ Suite of modules. These modules were developed using industry standard HTML, CSS and JavaScript. All Web pages delivered to the client contain data and commands (JavaScript function calls) integrated by the server-side application. JavaScript functions dynamically generate HTML Page content and data objects inside the Browser instantaneously.

In order to familiarize you with how our offline technology actually works, we have provided a detailed listing of all major functionalities of Ardent JavaScript™ Suite, along with working Examples that you can use to explore the power of each function.

I. Navigation

1. We can select any column of any record on the screen using the mouse to click on it.

2. We can also navigate using the following illustrated buttons:
  • "Top" (Top or Top),
  • "Page Up" (Page Up or Page Up),
  • "Up" (Up or Up),
  • "Down" (Down or Down),
  • "Page Down" (Page Down or Page Down),
  • "Bottom" (Bottom or Bottom).
Examples: Simplest Sortable Table, Navigation, Sorting, Search Index.

3. Alternatively, the sliding bar (Sliding Bar) can be used.
The sliding bar has these standard navigation capabilities:
  • Click the top button to select the previous record
  • Click the bottom button to select the next record
  • Double click the top button to select the first record
  • Double click the bottom button to select the last record
  • Hold the left mouse button over the top button of the sliding bar to scroll the records up one by one
  • Hold the left mouse button over the bottom button to scroll the records down one by one.
  • Drag the knob up or down to select any desired record
  • Click on the slider bar body above the knob to select a previous page
  • Click on the slider bar body below the knob to select the next page
  • Hold the left mouse button over the slider bar body above the knob to scroll records up page by page
  • Hold the left mouse button over the slider bar body below the knob to scroll records down page by page
Examples: Data Formats and Reports, Data Formats and Reports (continue).

4. Another means to navigate to, or locate, a specific data record is through the "Record #" (or "#") column. We can click on any record in this column using the mouse, then overtype the current record number with the number of the record you desire, and push either the "Tab" or "Enter" button. The desired record will appear in the currently selected row of the table. The same result can be obtained by changing the number in the selected record field, which is usually located under the column "Record #".

Example: Navigation, Sorting, Search Index.

5. A more advanced way of navigation through the records is using the "Search Tools" (Search Set). These tools can be used to search for records in any column of the table except for "Record #" ("#").

Follow these steps in order to use the "Find (Next)" (Find (Next)) button:
  • Select any field of the column where you would like to search.
  • Type the string to be searched into the input field "Search" located to the left of the "Find (Next)" (Find (Next)) button.
    Note: Alternatively, we can place and modify the value of any visible cell of the table in the "Search" input. To do so, just double click on the appropriate cell.
  • Enable a case sensitive search (if desired) by checking the "Match Case" box.
  • Press the "Find (Next)" (Find (Next)) button.
Every time the "Find (Next)" (Find (Next)) is pressed, the program selects the next field containing a substring that searches the one being searched for. If a Search is not found, the program does nothing.

Another way to use the "Find ( Next)" (Find (Next)) button:
  • Leave the input field "Search" blank;
  • Select a field whose content you want to search by clicking on any cell in this column.
  • Enable a case sensitive search if needed by checking the "Match Case" box;
  • Press the "Find (Next)" (Find (Next)) button.
Every time the "Find (Next)" (Find (Next)) button is clicked, the program selects the next record whose field has exactly the same content as the selected field.
Note: Use the values "Y" and "N" for searching the "Check Box" columns.

the button "Find (Previous)"(Find (Previous)) has a similar behavior but it searches in the opposite direction.

Examples: Filtering, Excluding, Hiding, Indexing, Detailed Table.

6. Another method of navigation through the records is using the "Search Index" (Search Index). This tool can be used to search for records in any column of the table except for "Record #" ("#").

Follow these steps in order to use the "Search Index" (Search Index):
  • Select any field of the column where you would like to search by clicking on any cell in this column.
  • Click the appropriate character, digit or "-" sign in the "Search Index" (Search Index).
The data in the table will be sorted by the selected column values.
Ardent JavaScript™ will search the sorted table for the top value in the selected column, which starts with the clicked character, digit or '-' symbol.
If the appropriate record will be found, it will be highlighted in the grid (form). Otherwise, it will highlight the first record, which has the field value in the selected column that is alphabetically bigger than the clicked character, digit or '-' symbol.
In a case when all values in a selected column are alphabetically less than clicked character, digit or '-' symbol, the last record will be highlighted.

Examples: Data Formats and Reports (continue), Filtering, Excluding, Hiding, Indexing.

7. A more convenient way of navigation through the records is using the "Look Up Index" (Look Up  Index). This tool can be used to search for records in any column of the table except for "Record #" ("#").

Here is the method used for the "Look Up Index" (Look Up  Index):
  • Select any field of the column where you would like search by clicking on any cell in this column.
  • Type the substring to be searched into the input field of "Look Up Index" (Look Up  Index).
Data currently located in the table will be sorted by the selected column values.
Ardent JavaScript™ will search the sorted table for the top value in the selected column, which starts with the substring to be searched.
If the appropriate record is found, it will be highlighted in the grid (form). Otherwise, it will highlight the first record which has the field value in the selected column that is alphabetically bigger than the substring to be searched.
In case all values in the selected column are alphabetically less than the substring to be searched, the last record will be highlighted.

Example: Look Up Filter and Look Up Index Example - Medications.

II. Sorting

1. We can sort data in the table by simply clicking on the title of that column (Sorting Title or Sorting Link) in the grid.
After sorting, the appropriate arrow represents a visual confirmation:
After one click, data will be sorted in an ascending order (Sort Ascending). Click the title again to sort the data in a descending order (Sort descending).
2. We also have a one click sorting functionality. It can be achieved by using two sorting buttons: "Sort Ascending" (Sort Ascending) and "Sort Descending" (Sort Descending).
To sort by any column:
  • Select any field of the column which we would like to sort by clicking on any cell in this column.
  • Click on the button "Sort Ascending" (Sort Ascending) or on "Sort Descending" (Sort Descending).
Different types of fields can be sorted: Text fields, Text Areas, Pop Up Menus, Check Boxes and Radio Buttons with different contents, including: a character string, date, time, float number and an integer number.

Examples: Data Formats and Reports (continue), Detailed Table.

III. Filtering and Excluding

For instance, we may want to filter from a list of computers of all computers with the clock speed 1500 Mhz.
We can filter data using one of following ways:

1. Use the "Filter" (Filter) button like the "Find (Next)" (Find (Next)) button for selecting all records with a field that contains a substring from the "Search" input.

2. The "Exclude" (Exclude) button extracts all records that DO NOT contain a substring from the "Search" input.

3. The "Hide" (Hide) button hides the current record - selects all records except the current one.

4. The "HideUp" (Hide up) button hides all records above the current record - selects the current record and all records below the current record.

5. The "HideRest" (Hide Rest) button hides all records below the current record - selects the current record and all records above the current record.

Note: Sorting may be useful before using the "HideUp" (Hide up) and "HideRest" (Hide Rest) buttons.

Examples: Filtering, Excluding, Hiding, Indexing, Grid with Detailed Form.

6. Another simple way of filtering records is offered by the "Filter Index" (Filter Index). This tool can be used to filter records by any column of the table except for "Record #" ("#").

Here are the steps for using the "Filter Index" (Filter Index):
  • Select any field of the column where you would like to search by clicking on any cell in this column.
  • Click the appropriate character, digit or "-" sign in the "Filter Index" (Filter Index).
Ardent JavaScript™ will search the original table for values in the selected column, which starts with the clicked character, digit or '-' symbol.
If no appropriate record is found, an empty result will be shown.

Examples: Filtering, Excluding, Hiding, Indexing, Grid with Detailed Form.

7. An advanced way of filtering records is the "Look Up Filter" (Look Up Filter). This tool can be used to filter records by any column of the table except for "Record #" ("#").

To use the "Look Up Filter" (Look Up Filter), refer to the following steps.
  • Select any field of the column where you would like search by clicking on any cell in this column.
  • Type the substring to be searched into the input field of "Look Up Filter" (Look Up Filter).
Ardent JavaScript™ will search the original table for values in the selected column, which contains the substring to be searched.
If no appropriate record is found, an empty result will be shown.


Note: After filtering records, the quantity of remaining records is shown in the "of" field on the left side of the "Total" line.
Another Note: The program automatically recalculates all totals for the remaining records (see text section).

Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Look Up Filter and Look Up Index Example - Medications.

IV. Totals

Remark: This functionality has meaning only for Numeric and Boolean columns.

Possible values for Numeric columns:
  • Minimum value
  • Maximum value
  • Sum of column values
  • Average of column values
  • Median of column values
Possible values for Boolean columns:
  • Quantity of checked checkboxes (value 'Y') in the current column (Example: '10')
  • Percent of checked checkboxes (value 'Y') in the current column relative to the current row quantity in the table (Example: '27%')
  • Quantity and percent of checked checkboxes (value 'Y') in the current column relative to the current row quantity in the table (Example: '10(21%)').
  • Quantity of checked checkboxes (value 'Y') in the current column and quantity of the current row quantity in the table (Example: '10 of 39')
  • Total quantity of checkboxes (value 'Y' or 'N') in the current column = quantity of the current row quantity in the table (Example: '39')

Examples: Totals, Totals (continue), Selecting, Filtering, Excluding, Hiding, Indexing.

V. Reports, Export, Preview, E-mail and Print

  • The click on "Grouped Report" (Grouped Report) button creates a report in which the records are grouped according to the currently selected field:
    Grouped Report
  • The click on "Standard Report" (Standard Report) button generates a report listing all records:
    Standard Report
  • The click on "Detail Report" (Detail Report) button generates a detailed report for the selected record:
    Detail Report
  • The click on "Summary Report" (Summary Report) button generates a summary report for the selected record:
    Summary Report
    with summary
    Summary Report
    custom scatterplots
    Summary Report
    custom line charts
    Summary ReportSummary Report
    custom bar charts
    Summary Report
    custom stacked bar charts
    Summary Report
    and custom pie charts
    Summary Report
  • The click on "Export" (Export) button creates an HTML page which, after saving, can be used for importing data to another application:Export Report Note: Once we start a Web page; we can generate, save and print many reports without having a connection to the server. To do this, we can filter, sort and/or edit (see information about data manipulation in next section) local the records, then create a report. After restoring the original data using the "Start Over" (Start Over) button, we can adjust data another way to generate another report. For information about the "Start Over" (Start Over) functionality, please refer to the section "X. Undo"
  • The click on "Preview" (Standard Report) button allows the user to automatically view generated objects (letters, labels, envelops...). It also can be used for print preview.
  • The button "E-mail" (E-mail) allows the user to send multiple e-mails generated on the fly using the selected records.
  • The click on "Print" (Print) button allows the user to automatically print generated objects (letters, labels, envelops...).

Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Multiple Forms, Moveable and Resizable Columns, Leads (One Page Application).

VI. Data Manipulation

Ardent JavaScript™ manipulates data in the following ways:

1. We can click on the field and edit this field value inline (like in MS Excel).

Note: If on the Web page, we have more than one grid/form related to one table, the results of editing in any form become visible in all grids/forms immediately.

2. Another way to change data is using the "Replace" (Replace) and "Replace All" (Replace All) buttons.
Both buttons work with "Search" input located on the left from "Find (Next)" (Find (Next)) button in the "Search Set" (Search Set) and "Replace" input located from the left side of "Replace" (Replace) button in the "Replace Set" (Search Set).
The text to be replaced is entered into the "Search" input.
The text to be substituted is entered into the "Replace" input.

When the "Replace" (Replace) button is clicked, the next occurrence (beginning at the currently selected record) of the "Search" text is replaced.
Note: Do not forget to check the "Match Case" checkbox to make the search and replace case sensitive.

The "Replace All" (Replace All) button will replace all occurrences of the selected column for all records in the table.
Note: For searching and replacing Check box values and Radio button values, characters "Y" and "N" should be used.

Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Multiple Forms, Moveable and Resizable Columns.

3. Widgets to pick the value for the edited field.
Currently we have two widgets:
  • Date Picker (Date Picker)
  • Color Picker (Color Picker)

Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Grid with Detailed Form.

VII. Adding New Records Locally

Ardent JavaScript™ has three commands to add new records to the table.

1. The Add Record (Add Record) command appends a new record to the end of the table. All fields of the new records have default values.
If default values are not specified, all fields will be set to the value "" (empty string).

2. The Insert Record (Insert Record) command is similar to the "Add Record" command, but the new record is placed directly after the currently selected record instead of appending.

3. The Copy Record (Copy) command works similarly to the "Insert" (Insert) button but instead of default values, the fields are copied from the currently selected record.

Note: The "Copy" (Copy), "Add" (Add) and "Insert" (Insert) buttons set the "Action Code" in the new record to "Add" (Add).


Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Multiple Forms, Moveable and Resizable Columns.

VIII. Deleting Records

Ardent JavaScript™ has the following tools to mark records for deletion.

1. The user can manually set the Action Code of the record received from server by selecting the 'D' (Delete) value in the "Action Code" drop down: Action Code. Please refer to next section for more details about the "Action Code".

2. Select the row in which you would like to mark for deletion by clicking on any cell in this row. Click the Delete (Delete) button.

3. The user can click the "Delete All" (Delete All) button to mark all rows for deletion in the table.

Note: The "Delete" (Delete) and "Delete All" (Delete All) buttons set the "Action Code" in the records received from server to "D" ("delete"). After submitting, these records will be deleted from the server database.
But both of these buttons delete any new records recently added locally by the user from the RAM database. These records have the Action code "A" ("added") and do not yet exist on the server.


Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Leads (One Page Application).

IX. Action Code

Ardent JavaScript™ keeps track of all changes made by the user with locally located data. For this purpose, every record has an "Action Code". An Action Code has four possible values:
  • " " (blank) - record was not altered locally after it was received from the server. When the Browser is receiving records from the server, all records have the blank Action Code.
  • "C" (Changed) - record was altered locally by the user.
  • "A" (Added) - record was locally added by the user. This record does not yet exist on the server.
  • "D" (Deleted) - record was marked for deletion by the user. When data is submitted, Action Code "D" will instruct the server to delete this record from the database.
Examples: Detailed Table, Multiple Forms, Moveable and Resizable Columns, Grid with Detailed Form, Leads (One Page Application).

X. Show All, Undo, Star Over

Undo functionality is flexible in Ardent JavaScript™. The developer can create his/her own undo buttons with the appropriate behavior.

Ardent JavaScript™ has the two most popular commands "Undo" and "Start Over".

1. Show All (Show All Records) is a command which shows all records after filtering, exluding, hiding. All records keep all modifications, order and Action Code previously set by another comands.

2. Undo (Undo) is a command which erases the last change done to the table by reverting it back to an older state.

3. Start Over (Start Over) gives us the original records we received from the server (this deletes any changes made before).

Examples: Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Detailed Table, Multiple Forms, Moveable and Resizable Columns, Grid with Detailed Form, Data Manipulation, Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker, Leads (One Page Application).

XI. Save Locally and Restore Locally

1. Save Locally (Save Locally) command in Ardent JavaScript™ allows the user to locally save the current application state into the RAM database, including all records, and its modifications, added records, and track of all actions made by the user on the client side.

2. Restore Locally (Restore Locally) restores the application state saved by the Save Locally (Save Locally) command.

Example: Leads (One Page Application).

XII. Update / Save

Update/Save (Save) functionality in Ardent JavaScript™ allows the user to send multiple (locally edited, added or marked for deletion) records back to the server for batch processing. Ardent JavaScript™ can generate data in any format.

Ardent JavaScript™ has three commands:

1. Save is a command which packs only edited, added or marked for deletion records and submits them to the server for batch processing.

2. Save All submits all records to the server.

3. Save Selected Keys submits a list of keys for the records selected by the user.

Examples: Leads (One Page Application), One Page Search Engine #1, One Page Search Engine #2, One Page Search Engine #3.

XIII. Previw, E-mail, Print

Preview Template Preview allows the user to preview documents, populated by data from the currently selected record

Schedule Sending E-mails (Send E-mail) E-mail aloows user to sent mass e-mails for all selected clients (Column "selected" in the grid)

Print Letter Print aloows user to print letter populated by data from the currently selected record


Example: Leads (One Page Application).

XIV. Default Editor

Full Power Default Record Editor (Click the checkbox Search to activate it).

Example: Leads (One Page Application).

XV. Drag and Drop Functionality

Ardent JavaScript™ uses Drag and Drop functionalities for following tasks:

1. Resize Columns Resize Colomns.

Examples: One Page Search Engine #1, Multiple Forms, Moveable and Resizable Columns, Look Up Filter, Inline Editing, Validation, Date Picker and Color Picker.

2. Shifting Columns Shifting Colomns.

Examples: One Page Search Engine #1, One Page Search Engine #2, One Page Search Engine #3.

3. Change Record Order Change Record Order.

Examples: Row Drag Reorder, Medications, One Page Search Engine #3, Leads (One Page Application).

4. Copy Records Copy Records.

Examples: Row Drag Reorder, Medications.

5. Delete (Hide) Records Delete Records.

Examples: Medications.

6. Drag Field Drag Field replaces the value of the field into another table Drop Field.

Example: Medications.

Note: Ardent JavaScript™ allows the developer to create custom Drag and Drop functionalities.

XVI. Ardent JavaScript™ Built In Visual Data Representation

1. Numeric Bar Delete Records.

Example: Data Formats and Reports.

2. Numeric Bar with Custom Colors Delete Records.

Examples: Data Formats and Reports, Data Formats and Reports (continue), Totals (continue), Selecting.

3. Image Bar Delete Records.

Examples: Data Formats and Reports, Totals (continue), Selecting.

4. Star Bar Delete Records.

Examples: Data Formats and Reports, Totals (continue), Selecting.

5. Image Delete Records.

Examples: Detailed Table, Custom Formats - Countries.

6. Image-Link Delete Records.

Examples: Detailed Table, One Page Search Engine #2.

7. Link Delete Records.

Examples: Data Formats and Reports, Detailed Table.

8. Custom Color (CSS). Delete Records.

Example: Custom Formats - Countries.

9. Custom Format. Delete Records.

Example: Custom Formats - Countries.