<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Smartchart开发手册</title>
    <link>https://help.smartchart.cn/en/docs/9.CRUD/</link>
    <description>Recent content on Smartchart开发手册</description>
    <generator>Hugo -- gohugo.io</generator><atom:link href="https://help.smartchart.cn/en/docs/9.CRUD/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDCommonDev/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDCommonDev/</guid>
      <description>Introduction # This document is a complete development guide for the SmartChart CRUD template, covering table creation, dataset configuration, conditional queries, option cascading, Excel import, master-detail writing, and backend pagination. All features are driven by the configuration panel — no form code required.
Core Concept Description Dataset #0 Query display (SELECT) Dataset #1 Write operation (INSERT/UPDATE) Configuration Panel All CRUD features are controlled via the config panel Table Creation # MySQL is recommended as the target database (thoroughly tested, supports UI-based table creation).</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDCoreConfig/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDCoreConfig/</guid>
      <description>SmartCRUD Usage Guide # A low-code CRUD framework built on the SmartChart platform — build data management interfaces quickly via a visual configuration panel.
Table of Contents # Quick Start Architecture Dataset Binding (Data Management) Table Display Configuration Query &amp;amp; Filter Add &amp;amp; Edit Field Type Reference Model Management Advanced Features FAQ 1. Quick Start # 1.1 Open the Config Panel # Click the 「CRUD Config」 button at the bottom-right of the page.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDActions/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDActions/</guid>
      <description>Introduction # CRUD row actions display icon buttons on the right side of each table row. Clicking executes preset functions like viewing detail data, popping up graphics, or sending messages. Configure icon-to-dataset mappings in the config panel&amp;rsquo;s &amp;ldquo;View ds mapping&amp;rdquo; — the system automatically passes the entire row data to the dataset.
Config Format Description icon:datasetID Click popup shows table or chart from dataset data icon:datasetID! Popup shows dataset&amp;rsquo;s table/chart icon:datasetID!</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDCustom/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDCustom/</guid>
      <description>Introduction # CRUD customization enables highly personalized UI through template overrides, including custom column display (conditional styles, progress bars), multi-level headers, custom detail pages (drawer/dialog), custom validation rules, custom functions, and custom default values.
Custom Area Block Template Custom Column body_table_column Multi-level Header body_table_columns Custom Detail Page dialog_card Custom Add Page dialog_modify Custom Indicator Card body_extHead Overriding Component Areas # Custom Column Display # Show &amp;ldquo;sales&amp;rdquo; column in red when value &amp;gt; 100: &amp;lt;!</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDDataApproval/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDDataApproval/</guid>
      <description>Introduction # SmartChart CRUD supports complete workflow approval capabilities, including approval flow definitions (multi-node process configuration) and data change approval (insert/update/delete requires approval before taking effect). Approval flows are implemented through three system tables (flowinfo, flowinstances, flowtasks), while data approval uses the modify_request table to record changes.
Approval Type Description Approval Flow Multi-node process definition for work orders, contracts, etc. Data Change Approval Insert/update data enters approval queue, takes effect only after approval Approval Flow # MySQL Table Creation # drop table if exists oa_flowinfo; CREATE TABLE oa_flowinfo( id int PRIMARY KEY auto_increment, tid smallint default 0 comment &amp;#39;Tenant ID&amp;#39;, uuid varchar(20), name varchar(50), description varchar(200), category varchar(50), flow TEXT, status varchar(20), create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, updater varchar(50), UNIQUE uc(tid,name) ) comment &amp;#39;Approval Flow Definition&amp;#39;; drop table if exists oa_flowinstances; CREATE TABLE oa_flowinstances( id int PRIMARY KEY auto_increment, tid smallint default 0 comment &amp;#39;Tenant ID&amp;#39;, uuid varchar(50), title varchar(100), remark varchar(500), formId varchar(50), variables varchar(500), definitionId varchar(50), applicant varchar(50), status varchar(50), currentNodeId varchar(50), create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, updater varchar(50) ) comment &amp;#39;Approval Instance&amp;#39;; drop table if exists oa_flowtasks; CREATE TABLE oa_flowtasks( id int PRIMARY KEY auto_increment, tid smallint default 0 comment &amp;#39;Tenant ID&amp;#39;, uuid varchar(50), instanceId varchar(50), nodeId varchar(50), nodeName varchar(50), assignee varchar(50), status varchar(50), instructions varchar(200), variables varchar(500), comment varchar(100), create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, updater varchar(50) ) comment &amp;#39;Approval Task&amp;#39;; SQLite Table Creation # DROP TABLE IF EXISTS oa_flowinfo; CREATE TABLE oa_flowinfo( id INTEGER PRIMARY KEY AUTOINCREMENT, tid INTEGER DEFAULT 0, uuid TEXT, name TEXT, description TEXT, category TEXT, flow TEXT, status TEXT, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP, updater TEXT, UNIQUE(tid, name) ); -- Similar for oa_flowinstances and oa_flowtasks Import Approval Flow Page # Available in Professional edition — contact support.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDDragCombine/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDDragCombine/</guid>
      <description>Introduction # The CRUD drag-and-drop feature allows you to freely arrange CRUD components and other graphic components in the dashboard via drag-and-drop. Reuse CRUD&amp;rsquo;s query and filter configuration capabilities while combining with graphic visualizations for richer business page layouts.
Feature Description Enable Drag Config panel → Table Display → Enable drag toggle Query Linkage Data Management → Query linkage, configure linked graphic IDs Row Linkage Data Management → Row linkage, trigger refresh on row click Use Cases # Implement drag-and-drop development with CRUD components and other graphic components Reuse CRUD component query and other configuration features Video reference: Drag Linkage</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDTreeQuery/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDTreeQuery/</guid>
      <description>Introduction # The CRUD tree query area displays a hierarchical tree directory on the left side of the table. Clicking a leaf node automatically passes parameters to the table dataset, enabling data filtering by hierarchy. Suitable for organizational structures, product categories, regional dictionaries, and other parent-child hierarchy data query scenarios.
Key Config Description Tree area dataset Query father/child parent-child relationship _label parameter Auto-passed on node click, value is the child value Custom tree Override body_tree template for custom styles and behavior Enable Tree Query Area # Create a lazy-load dataset, e.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDUserSettings/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDUserSettings/</guid>
      <description>Introduction # CRUD user settings allow dynamic control of interface display content and operation permissions based on the current logged-in user. Use $username to determine user identity, or query user roles from a dataset to implement different field, button, or data scope visibility for different users.
Control Method Description filter_param.username Direct username check Dataset + vapp.btnEdit Control button visibility by role Config item lookup Config panel edit page shows parameter name hints Use Cases # In many scenarios, different configurations are needed for different users, showing different content or interfaces, such as add/edit buttons.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDActionButtons/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDActionButtons/</guid>
      <description>Introduction # CRUD action buttons are used to batch-execute operations in tables, such as batch status updates, opening dialogs, or executing custom logic. Three modes are supported: single function dataset (default batch update of status field), function dataset mapping (custom SQL execution), and row button mode (trigger action on specific row click).
Button Mode Parameters Use Case Single Function Dataset action + updatelist (primary key list) Batch status update Function Dataset Mapping icon:datasetID config Custom complex logic Row Button Mode Entire row data passed as parameter View details, execute action Use Cases # Select data rows and execute batch actions, such as batch status modification, opening new function items Custom function buttons on the side of the table Single Function Dataset Mode # Configuration # Configure button display name and color in the &amp;ldquo;Add/Edit&amp;rdquo; panel&amp;rsquo;s &amp;ldquo;Batch Actions&amp;rdquo;: {&amp;#34;complete&amp;#34;: [&amp;#34;Button Name&amp;#34;, &amp;#34;black&amp;#34;], .</description>
    </item>
    
    <item>
      <title></title>
      <link>https://help.smartchart.cn/en/docs/9.CRUD/CRUDTableReference/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://help.smartchart.cn/en/docs/9.CRUD/CRUDTableReference/</guid>
      <description>Introduction # CRUD templates have certain database table structure requirements. MySQL is recommended as the target database. This document provides table creation references for MySQL, SQLite3, PostgreSQL, Oracle, and SQL Server, including standard field definitions for primary keys, auto-increment, timestamps, and updater fields.
Required Field Description id Primary key, auto-increment tid Tenant ID (multi-tenant scenarios) create_time Creation time update_time Update time updater Updated by (auto-filled via $username) -- sqlite3 CREATE TABLE work_order ( id INTEGER PRIMARY KEY AUTOINCREMENT, order_no TEXT UNIQUE, order_type TEXT, order_qty INTEGER, create_time DATETIME DEFAULT (datetime(&amp;#39;now&amp;#39;, &amp;#39;localtime&amp;#39;)), update_time DATETIME DEFAULT (datetime(&amp;#39;now&amp;#39;, &amp;#39;localtime&amp;#39;)), updater TEXT ); -- postgreSQL CREATE TABLE work_order ( id SERIAL PRIMARY KEY, &amp;#34;order_no&amp;#34; VARCHAR(50) UNIQUE, &amp;#34;order_type&amp;#34; VARCHAR(50), &amp;#34;order_qty&amp;#34; INT, create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updater VARCHAR(50) ); COMMENT ON TABLE work_order IS &amp;#39;Work Order&amp;#39;; COMMENT ON COLUMN work_order.</description>
    </item>
    
  </channel>
</rss>
