Skip to content

Create a page ​

Do it in this order, or the SQL never lands on the allowlist:

  1. Create a page_sql in /sql_editor and take the sql_id. One record holds pre_sql, main_sql, and post_sql, executed in that order inside one transaction.
  2. Create a page_def in /page_editor. Put the sql_id on Component.LoadSql, UpdateRowSql, and the other SQL fields.
  3. Point a menu at /page/run?param={page_def.id}.
  4. When columns, fields, or buttons need limits, sync them on the matching permission page.

A tab that is already open keeps the old allowlist after you edit page JSON or SQL. Close the tab and open it again so sql_id values are collected again.

After changing an engine script under plus/, also change the matching ?v= in custom_component_source at the top of assets/eqp/util.js. Otherwise the running page keeps the old script from the browser cache.

Extension-page steps are in Two kinds of pages. The menu field is external_url, and page_id stays empty.

This describes the platform. One customer’s business tables are not in these docs.