← Back to site
← Previous Next →

Module 2: Advanced Data & Grid Engines.

This is the "Engine Room" of the Unicorn P platform. These elements are not just visual tables; they are state-managed proxies for your MariaDB tables. They handle data fetching, pagination, and sorting automatically.


2.1 <up-fullgrid> / <up-grid>

The most powerful data manipulation engine in the library. It bridges a sys_object definition to a high-performance interactive table.

JavaScript

// A searchable ledger grid that fills the screen up-text#search[placeholder="Search..."] +up-fullgrid#ledger[object="acc_ledger" basedon="search" fill select crud="CRUD"]


2.2 <up-spreadsheet>

An Excel-like data entry interface. Unlike the standard grid, this is optimized for high-speed keyboard entry and multi-cell manipulation.

JavaScript

// A grid for manual journal entries up-spreadsheet#journal[columns="account_id,debit,credit,memo"]


2.3 <up-tree> / <up-fulltree>

Visualizes recursive or hierarchical data structures. up-fulltree includes expanded state management and "drag-and-drop" capabilities for reorganizing nodes.

JavaScript

up-fulltree#accountChart[api="acc_chart:tree_data" label="Company Accounts"]


2.4 <up-gridlov>

A sophisticated hybrid. To the user, it looks like a dropdown or text box. When clicked, it opens a searchable modal grid.

JavaScript

up-gridlov#customer_id[object="sys_party" display="name" value="id" label="Select Customer"]


2.5 <up-listing>

A mobile-optimized alternative to the grid. Instead of rows and columns, it renders data as a vertical stack of "cards."

JavaScript

// A card-based list of recent invoices up-listing#recentInvoices[api="acc_invoice:recent" template="(div.card>up-label[value='@inv_no']+up-label[value='@total'])"]


Architect's Tip for Module 2:

Remind developers that basedon is the "Secret Sauce." It eliminates the need for manual addEventListener('change', ...) calls. By simply naming the filter IDs in the basedon attribute, the platform handles all data synchronization automatically.

Ready to proceed to Module 3: Enterprise Form Fields (Inputs)?