Browse Source

Document low-code exportable fields

pull/25610/head
SALİH ÖZKARA 4 months ago
parent
commit
172c9d26c7
  1. 3
      docs/en/low-code/designer.md
  2. 2
      docs/en/low-code/index.md
  3. 13
      docs/en/low-code/model-json.md
  4. 8
      docs/en/low-code/react-runtime.md

3
docs/en/low-code/designer.md

@ -65,6 +65,7 @@ Pages can define data grid, kanban, calendar, gallery, standalone form, and dash
* Entity * Entity
* Create and edit forms * Create and edit forms
* Visible grid/card fields * Visible grid/card fields
* Exportable fields for Excel and CSV
* Field labels and column widths * Field labels and column widths
* Default sorting * Default sorting
* Filter fields and defaults * Filter fields and defaults
@ -75,6 +76,8 @@ Kanban pages add `groupByProperty`, calendar pages add date/time properties, gal
Pages are exposed in React under `/dynamic/<page-name>` and can also appear as dynamic menu items. Pages are exposed in React under `/dynamic/<page-name>` and can also appear as dynamic menu items.
The **View Fields** section has separate **Show** and **Export** choices. Use **Show** for fields that should be rendered in the runtime view. Use **Export** for fields that may be included in Excel or CSV output. A visible field can be excluded from export, and an exportable field can be hidden from the page but still available through **Export options > All exportable fields**.
## Forms ## Forms
Use **Forms** to define create and edit experiences. Use **Forms** to define create and edit experiences.

2
docs/en/low-code/index.md

@ -112,7 +112,7 @@ React low-code filters are type-aware. The runtime shows only operators that mak
Every dynamic entity page can export data to Excel or CSV. Export requests use the current search, sorting, and filters from the runtime view, so a filtered page exports the matching subset instead of the whole entity. Every dynamic entity page can export data to Excel or CSV. Export requests use the current search, sorting, and filters from the runtime view, so a filtered page exports the matching subset instead of the whole entity.
The React runtime exports visible columns by default. These columns come from the page fields configured in the Low-Code Designer, so changing a page's visible fields also changes the quick export output. Users can open **Export options** to switch to all exportable fields or to export only the current page of rows. Server-only fields are always excluded, and foreign key values are displayed through their configured display property. The React runtime exports visible exportable columns by default. These columns come from the page fields configured in the Low-Code Designer. A field can be visible but not exportable, or hidden but still available in the **All exportable fields** option. Use this when a page should display operational data that should not leave the system through Excel or CSV. Server-only fields are always excluded, and foreign key values are displayed through their configured display property.
File and image fields are exported as file names by default. Export options can expand those fields into metadata columns or include small files as `data:<content-type>;base64,...` values. The data URL option is intended for small files only; files over the configured `LowCode:Export:MaxDataUrlFileSizeBytes` limit are skipped with a marker instead of failing the whole export. File and image fields are exported as file names by default. Export options can expand those fields into metadata columns or include small files as `data:<content-type>;base64,...` values. The data URL option is intended for small files only; files over the configured `LowCode:Export:MaxDataUrlFileSizeBytes` limit are skipped with a marker instead of failing the whole export.

13
docs/en/low-code/model-json.md

@ -242,7 +242,7 @@ Pages create runtime routes and menu entries. They also choose how entity data i
"columns": [ "columns": [
{ "propertyName": "Name", "order": 0 }, { "propertyName": "Name", "order": 0 },
{ "propertyName": "Status", "order": 1 }, { "propertyName": "Status", "order": 1 },
{ "propertyName": "Budget", "order": 2 } { "propertyName": "Budget", "order": 2, "exportable": false }
], ],
"filters": [ "filters": [
{ "propertyName": "Name", "control": "text", "defaultOperator": "contains" }, { "propertyName": "Name", "control": "text", "defaultOperator": "contains" },
@ -253,6 +253,15 @@ Pages create runtime routes and menu entries. They also choose how entity data i
} }
``` ```
Page columns support two independent flags:
| Field | Default | Purpose |
|-------|---------|---------|
| `visible` | `true` | Renders the field in the React page view |
| `exportable` | `true` | Allows the field to be included in Excel and CSV export |
If `columns` is present, export uses this list as the page-level export policy. `exportable: false` prevents the field from being exported even if a caller sends the field name manually. Server-only entity properties are never exportable.
| Page type | Required fields | Purpose | | Page type | Required fields | Purpose |
|-----------|-----------------|---------| |-----------|-----------------|---------|
| `dataGrid` | `entityName` | Searchable, sortable CRUD grid | | `dataGrid` | `entityName` | Searchable, sortable CRUD grid |
@ -483,7 +492,7 @@ Background workers require either `period` in milliseconds or `cronExpression`.
"columns": [ "columns": [
{ "propertyName": "Name", "order": 0 }, { "propertyName": "Name", "order": 0 },
{ "propertyName": "Status", "order": 1 }, { "propertyName": "Status", "order": 1 },
{ "propertyName": "Budget", "order": 2 } { "propertyName": "Budget", "order": 2, "exportable": false }
], ],
"filters": [ "filters": [
{ "propertyName": "Name", "control": "text", "defaultOperator": "contains" }, { "propertyName": "Name", "control": "text", "defaultOperator": "contains" },

8
docs/en/low-code/react-runtime.md

@ -151,7 +151,7 @@ The URL keeps the existing `lcFilters` query parameter shape. The runtime maps u
## Export ## Export
The runtime export button opens a small menu with direct Excel and CSV actions. Direct export uses the current search, sorting, filters, and visible columns from the page definition maintained in the Low-Code Designer. Use **Export options** when users need a different row or column scope. The runtime export button opens a small menu with direct Excel and CSV actions. Direct export uses the current search, sorting, filters, and visible exportable columns from the page definition maintained in the Low-Code Designer. Use **Export options** when users need a different row or column scope.
Available options: Available options:
@ -159,13 +159,13 @@ Available options:
|--------|----------| |--------|----------|
| Rows: all matching records | Exports all records matching the current search, filters, and sorting | | Rows: all matching records | Exports all records matching the current search, filters, and sorting |
| Rows: current page | Exports only the current page using the runtime `skipCount` and `maxResultCount` | | Rows: current page | Exports only the current page using the runtime `skipCount` and `maxResultCount` |
| Columns: visible columns | Exports the columns visible in the current page definition | | Columns: visible exportable columns | Exports columns that are both visible and exportable in the current page definition |
| Columns: all exportable fields | Exports all non-server-only fields that can appear in generated views | | Columns: all exportable fields | Exports page fields marked exportable in the Low-Code Designer, including fields that are hidden from the grid |
| File/image: file name | Writes the uploaded file name, or an empty value | | File/image: file name | Writes the uploaded file name, or an empty value |
| File/image: metadata columns | Writes file name, content type, size, width, and height columns | | File/image: metadata columns | Writes file name, content type, size, width, and height columns |
| File/image: data URL | Writes small linked files as `data:<content-type>;base64,...`; large or unavailable files are written as markers | | File/image: data URL | Writes small linked files as `data:<content-type>;base64,...`; large or unavailable files are written as markers |
The runtime first requests a short-lived token and then calls the Excel or CSV export endpoint. The token is single-use and is bound to the current page, entity, tenant, child page, and foreign-access context. Text that looks like a spreadsheet formula is escaped in exported cells. The runtime first requests a short-lived token and then calls the Excel or CSV export endpoint. The token is single-use and is bound to the current page, entity, tenant, child page, and foreign-access context. Text that looks like a spreadsheet formula is escaped in exported headers and cells. If a caller manually sends a non-exportable field name, the backend rejects the request.
| Endpoint | Description | | Endpoint | Description |
|----------|-------------| |----------|-------------|

Loading…
Cancel
Save