Form
概述
Form是GOT模型中用于定义画面结构的核心节点。在现代应用程序开发中,数据交互和用户界面设计的灵活性至关重要。为了有效地管理和表示数据,平台使用Form实体节点来定义数据源和用户界面组件已成为一种行之有效的方式。Form节点下包含多个关键节点,分别用于定义数据源和用户界面设计。
数据源管理
在 Form节点中,DataSources 节点作为数据源的容器,负责组织和管理与数据库交互所需的所有信息。该节点下的每个 DataSource 元素可对应数据库中的一张表,允许用户通过定义多个数据源来实现对不同表的访问和操作。为了增强数据的关联性和整合性,各个 DataSource 之间可以建立复杂的关联关系,从而支持跨表的数据操作和查询。这种设计不仅提高了数据的组织效率,还为后续的增删改查操作提供了基础。
界面设计
Form节点 下还包含一个 Design节点,负责定义用户界面的各种组件。该节点允许开发人员根据需求灵活地创建多种用户界面元素,包括但不限于表格、按钮和输入框等。在表格组件内,开发人员能够进一步定义 Editor,每个 Editor组件都可与某个特定 DataSources中的字段关联,使用户能够在表格中进行数据的新增、删除、查询和保存等操作。这种设计模式使得前端界面与后端数据之间的交互变得更加直观和高效。按钮组件的设计不仅限于用户界面的展示,它们还能够执行后台代码,从而实现复杂的逻辑处理和数据操作。通过将按钮与相应的后台服务或函数关联,开发人员可以在用户点击按钮时触发相应的数据库操作或业务逻辑处理。这一功能的实现,使得用户能够在界面上直接进行数据管理,快速响应用户操作,提高了应用的用户体验和交互效率。
Form实体支持包括:StringEditor、LongEditor、DecimalEditor、BooleanEditor、DateEditor、TimeEditor、DateTimeEditor、EnumEditor、Text、FieldGroup、Button、MenuItemButton、SubFormButton、ButtonGroup、ButtonMenu、DataGrid、Group、DividedBox、Tab、Image、Plugin共21种组件类型,这些组类型由GOT模型定义,大致分为容器和实体组件,容器下又可嵌套包含多种组件。组件与组件的嵌套融合,构造了画面结构的多样性。
每个Form实体会生成一个Form包目录,位于层节点源码的foms包目录下,命名规则为:实体名称。
每个Form包目录 包含以下内容:
- 一个实体节点命名的 Java类
- 一个base目录 base目录下 为一个FormBase_实体名称 命名的Java 类
- 一个datasource目录 目录下包含以下内容
- 一个或者多个 FormDataSource节点关联的 Java 类 命名规则为:Form+实体名称+DataSource+数据源名称。
- 一个base 目录 base 目录下包括 每个FormDataSource对应的base Java类
实体节点命名的 Java类
package gongqi.df.sales.layers.app.forms.SalesTable;
import gongqi.df.sales.layers.app.forms.SalesTable.base.FormBase_SalesTable;
public class Form_SalesTable extends FormBase_SalesTable {
}
FormBase_实体名称 命名的Java 类
package gongqi.df.sales.layers.app.forms.SalesTable.base;
import gongqi.erp.gotmodel.form.remote.CommandArg;
import gongqi.erp.gotmodel.form.remote.CommandResult;
public class FormBase_SalesTable extends
gongqi.erp.gotmodel.form.GongqiForm
{
//FormDataSource
final public static String __DS_SysUser = "SysUser";
//FormItem
final public static String _Group2 = "Group2";
...
@Override
public CommandResult afterInit(CommandArg arg) {
CommandResult result = super.afterInit(arg);
result.executeQuery().setGroup("all");
return result;
}
}
FormDataSource节点关联的 Java 类
package gongqi.df.sales.layers.app.forms.SalesTable.datasource;
import gongqi.df.sales.layers.app.forms.SalesTable.datasource.base.Form_SalesTable_DataSourceBase_SysUser;
public class Form_SalesTable_DataSource_SysUser extends Form_SalesTable_DataSourceBase_SysUser {
}
FormDataSource节点关联的Base Java 类
package gongqi.df.sales.layers.app.forms.SalesTable.datasource.base;
public class Form_SalesTable_DataSourceBase_SysUser extends
gongqi.erp.gotmodel.form.datasource.FormDataSource
{
}
实体结构
Form
Form实体节主要包含 描述数据源的 DataSources节点和 描述画面的Desgin节点
- DataSources 数据源集合 下可包含多个FormDataSource节点 每个FormDataSource对应一个Table实体节点 多个FormDataSource之间可建立关联
- 每个FormDataSource节点下包含FormDataSourceField节点 节点对应Table实体的Fileds
- 还包含 描述 分组的 GoupyBy 描述 聚合的Aggregation节点 用于在某些特殊数据展示的情况下去构建如 行列转置表等
- Relation节点是用来描述 数据源之间的关联字段关系
- Desgin节点下可建立 多种组件
Form实体节点根据不同的FormTpye属性值 有不同的体现方式。
属性列表
属性 | 说明 |
---|---|
Title | 窗体的名称。用户可自定义 根据业务设计惯式 一般来说如果有主数据源 沿用主数据源的Lable属性 如果有修改 后续MenuItem节点Lable和MenuRefMenuItem节点Lable 延用此属性值 |
FormType | Form类型。默认是Normal 正常窗体 可选以下选项 • Normal:普通窗体 正常窗体 • Lookup:下拉画面窗体,当前指定为下拉画面窗体时 能被FormItemEditor节点的FormLookup属性引用 用作对应Editor在下拉时构造成该窗体画面 ,如果是Lookup类型的Form 不需要拖入或被MenuItem节点引用 • SubForm:不受权限控制的 窗体 在后续项目实施过程中 如默认所有用户都能使用 不受权限功能影响的 则可设置为该类型窗体 |
DataSources
DataSources节点 数据源组 包含多个数据源节点
属性 | 说明 |
---|---|
ReturnTable | 返回的数据源 当前Form 的FormType 属性为Lookup时 可配置该属性 控制当作为下拉画面 选中下拉记录后 返回对应数据源的数据 |
ReturnField | 返回的数据源字段 当前Form 的FormType 属性为Lookup时 可配置该属性 控制当作为下拉画面 选中下拉记录后 返回对应数据源的单个字段的数据 |
FormDataSource
FormDataSource实体节点数据源节点,每个数据源可对应一个实体Table节点
属性 | 说明 |
---|---|
Table | 来源表 指定该数据源来源于指定Table实体 引用其Fileds节点作为FormDataSourceFiled |
Label | 数据源标签 根据业务设计惯式 一般延用关联的Table的Lable |
FetchAll | 抓取所有数据 ,当设置为true时候 默认画面上对该数据源查询时获取全部数据(根据项目配置 默认配置最大获取条数为60000) 默认值是false |
DefaultOrderBy | 默认索引 根据对应表具体索引进行排序 根据业务设计惯式 一般延用关联的Table的DefaultOrderBy属性 |
Reverse | 是否反转 默认排序的倒序排序 默认值为false 在某些特殊场景下如果设置为true 画面查询数据升序时变成降序 降序时变成升序查询 |
StartPosition | 焦点行 当数据源做为表格输出时开始焦点停留的位置,有表格开头行和末尾行两种 默认是开头 |
InsertAt | 插入位置 当数据源作为表格输出时 插入记录时的记录位置: • First:头; • Last:尾; • Next:下一行; • Prev:上一行; |
JoinSource | 关联的数据源 与其他数据源进行关联 当前数据源作为子数据源 配合 JoinType 和 Relation使用 |
Jointype | 关联类型 与数据源关联的类型,包含以下可选项 • Passive: 懒加载 即不自动过滤 需要被调用才生效 ; • Delayed:延迟500毫秒 即如果500毫秒以内父记录切换了 则此次不加载; • Active:立刻刷新 • InnerJoin:内链接; • ExistJoin:效率高,可以判断单字段和组合字段,并不受NULL的影响;缺点是逻辑稍微复杂; • NotExistJoin: • leftJoin:左链接 |
AllowChangeQuery | 数据源是否允许修改查询 在PC端窗体上表现为是否能用查询器修改查询 是否能使用Ctrl+F查询框查询 |
AllowEdit | 数据源是否允许编辑 在PC端窗体上表现为 数据源作为字段输出时 字段值能否被修改 |
AllowExport | 数据源是否允许导出 在PC端窗体上表现为 数据源作为表格时候 工具栏导出功能能否使用 |
AllowSave | 数据源是否允许保存 在PC端窗体上表现为 数据源作为表格时候 表格保存功能能否使用 |
AllowAdd | 数据源是否允许添加 在PC端窗体上表现为 数据源作为表格时候 表格新增记录功能能否使用 |
AllowDelete | 数据源是否允许删除 在PC端窗体上表现为 数据源作为表格时候 表格删除记录功能能否使用 |
AllowAttachment | 数据源是否允许附件 在PC端窗体上表现为 数据源作为表格时候 工具栏附件功能能否使用 |
DataSourceType | 数据源类型 包含以下选项: • Normal:通用类型 ; 默认为该选项 • Aggregate:聚合类型;结合其他节点使用 作为聚集数据源在画面上展示 如:当前在库 画面的数据源就使用了 聚合类型 • Pivot:转置类型;结合其他节点使用 作为行列转置数据源在画面上展示 • Temporary:临时类型;作为临时数据源在画面上展示 不从数据库获取数据 数据通过代码存储在内存 |
PivotSource | 转置主数据源 当DataSourceType是Pivot 的时候 需要指定如当前数据源是关联数据源 则需指定转置的主数据源,如当前数据源无关联 即PivotSource设置为当前数据源 |
PivotColumn | 转置项 当DataSourceType是Pivot 的时候 行列转置需要转置的数据项,(作为表头) 下拉选则数据源字段 |
PivotAggregateTye | 转置聚合类型 行列转置聚合字段的聚合类型 包含以下选项 • Avg:平均; • Concat:计数; • Max:最大; • Min:最小; • Sum:求和; |
PivotAggregateColumn | 转置聚合项 设置转置聚合的数据项 (作为交叉数据) 下拉选则数据源字段 支持数值 |
CountTotalRecords | 统计数据总数量 默认为true 一般不需要设置 |
ExternalJoin | 能否外部关联 默认为true 是否允许在PC端画面上 查询器 能否自定义关联数据源 |
FormDataSourceField
FormDataSourceField节点是 FormDataSource节点下Fields的字节的 每个FormDataSourceField节点对应 FormDataSource关联的Table实体节点对应 的 TableFiled节点 其属性 也与TableFiled 节点类似 根据不同类型 有不同属性
公共属性列表
属性 | 说明 |
---|---|
Field | 指定字段关联关系。 一个FormDataSourceField节点对应一个TableFiled节点 部分属性 |
Label | 标签。标签存在继承属,如果未设置标签,在界面渲染时会查找继承的节点的标签。 根据业务设计惯式,为保证同一个业务字段在系统内标签的一致性,一般在TableFiled上设置标签,对于关联的FormDataSourceField等不单独设置标签,通过标签继承进行实现。 |
HelpText | 帮助文本,用于描述解释,目前仅作用于GOT设计器,用于对节点解释备注说明。 |
DisplayLength | 显示宽度,单位:字符。 不同数据类型的默认显示宽度不一样。 默认继承关联的Field节点对应的属性 根据业务设计规范,建议显示宽度不小于标签内容,对于长度有限编号类(通常内容小于20个字符),建议显示大于实际内容1个字符。 |
NotNull | 是否允许为空,这里的null 与数据库字段的null无关,在平台设计逻辑上不允许字段数据在新增或者修改是为空 默认继承关联的Field节点对应的属性 对于日期时间类型的字段 在数据库层面是允许为Null 其他类型的字段 都有默认值 数值类型的默认为0 文本类型的默认为"" |
AllowEditor | 字段编辑性 ,默认为Always • Always:总能编辑 • Never:总不能编辑 • OnlyOnCreate:只有创建记录时可以被编辑 默认继承关联的Field节点对应的属性 根据业务设计惯式,为保证同一个业务字段在系统内编辑性一致,一般在TableField,对于继承TableField的FormDataSourceField、FormItem等不单独设置,通过继承进行实现。 |
Default | 默认值 一般不建议在这里统一设置 建议通过代码赋值 |
Long类型属性列表
属性 | 说明 | |
---|---|---|
ShowZero | 配置LongEditor对于数值0是否显示,如果配置为false,对于数值0,编辑框未进入编辑模式时展示为空白,进入编辑框后展示为0。 默认继承关联的Field节点对应的属性 此属性仅作用于客户端自动渲染画面的LongEditor控件。 |
|
ThousandSeperator | 配置LongEditor在非编辑模式展示时,是否显示千分位分隔符。 默认继承关联的Field节点对应的属性 此属性仅作用于客户端自动渲染画面的LongEditor控件。 |
Decimal类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 配置显示样式,支持以下样式配置 • 显示百分比:DecimalEditor展示时增加百分号“%”后缀,例如:50,显示为50%,仅增加显示后缀,数值不动。 • 货币符号:DecimalEditor展示时增加货币符号后缀,具体货币符号通过界面配置。 此属性仅作用于客户端自动渲染画面的DecimalEditor控件。 |
|
ShowZero | 配置DecimalEditor对于数值0是否显示,如果配置为false,对于数值0,编辑框未进入编辑模式时展示为空白,进入编辑框后展示为0。 默认继承关联的Field节点对应的属性 此属性仅作用于客户端自动渲染画面的DecimalEditor控件。 |
|
ThousandSeperator | 配置DecimalEditor在非编辑模式展示时,是否显示千分位分隔符。 默认继承关联的Field节点对应的属性 此属性仅作用于客户端自动渲染画面的DecimalEditor控件。 |
|
NumOfDecimals | 设置浮点数存储的精度,即小数点后的小数位数。 默认继承关联的Field节点对应的属性 |
|
DisplayDecimals | 设置浮点数通过DecimalEditor展示时,在未进入编辑状态时,显示的小数位数,允许与存储精度不一致,值范围小于等于存储精度。 例如:数据存储的精度为4,展示精度为2. 默认继承关联的Field节点对应的属性 |
Date类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 设置日期的展示样式,支持以下格式: • yyyy:展示年份。例如:2025 • MM-dd:展示月份和日期。例如:04-15 • MM/dd:展示月份和日期。例如:04/15 • yyyy-MM:展示年份和月份。例如:2025-04 • yyyyMMdd:展示年月日。例如:20250415 • yyyy-MM-dd:展示年月日。例如:2025-04-15 • yyyy/MM/dd:展示年月日。例如:2025/04/15 • yyyy-M-d:展示年月日。例如:2025-4-15 • yyyy/M/d:展示年月日。例如:2025/4/15 |
Time类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 设置时间的展示样式,支持以下格式: • HH:mm:ss:展示时分秒,例如:14:03:10 • HH:mm:展示时分。例如:14:03 |
DateTime类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 设置日期时间的展示样式,支持以下格式: • yyyy-MM-dd HH:mm:ss:展示年月日时分秒,例如:2025-04-15 14:03:10 • yyyy-MM-dd HH:mm:展示年月日时分,例如:2025-04-15 14:03 |
Enum类型属性列表
属性 | 说明 | |||
---|---|---|---|---|
Regular | 设置展示哪些EnumItem。属性值内容为EnumItem值,多个值之间用竖线“\ | ”分隔。例如:1\ | 2\ | 3 |
FomDataSourceGroupBy
GourpBy节点下的子节点 当数据源是 Pivot 和 Aggregate 时 可配置 分组项
属性 | 说明 |
---|---|
Field | 关联数据源字段 指定某字段在画面查询数据时增加 group by |
ArrayItem | 如果 关联数据源是维度项 则需要字段 维度子项 |
FormDataSourceAggregation
Aggregation节点下的子节点 当数据源是 Pivot 和 Aggregate 时 可配置 聚合项
属性 | 说明 |
---|---|
Field | 关联数据源字段 指定某字段在画面查询数据时对该字段进行聚合 |
Aggregate | 字段聚合类型 包含以下选项 • Avg:平均; • Concat:计数; • Max:最大; • Min:最小; • Sum:求和; |
FormDataSourceRelation
数据源关联关系,当前数据源关联其他数据源时 设置 数据源之间的关联关系 通常如 主数据某字段 = 当前数据源某字段
也可设置为字段等于某具体固定值
属性 | 说明 |
---|---|
Field | 绑定当前数据源字段 |
ParentField | 绑定关联主数据源字段 |
Value | 具体值 |
Desgin
FormItem
FormItem节点是 Form节点下Design子节点 。FormItem 主要用于作为元素支持画面的渲染效果,有多种节点类型 大致分为 Editor,容器和组件 。
公共属性列表
属性 | 说明 |
---|---|
Width | 宽带 固定PX值或者是百分之 根据业务设计惯式 如果是FormItemEditor节点的 一般设置 DisplayLength 不设置Width |
Height | 高度 固定PX值或者是百分之 根据业务设计惯式 如果是FormItemEditor节点的 一般设置 DisplayHeight 不设置Height |
Label | 标签。标签存在继承属性,对于继承自DataType的节点,如果未设置标签,在界面渲染时会查找继承的节点的标签。 根据业务设计惯式,为保证同一个业务字段在系统内标签的一致性,一般在DataType上设置标签,对于继承DataType的TableField、等不单独设置标签,通过标签继承进行实现。 |
HelpText | 帮助文本,用于描述解释,目前仅作用于GOT设计器,用于对节点解释备注说明。 |
Visible | 是否允在画面上可见,默认是true 这里的可见性与权限无关,如果有代码二次更改则以代码为主 |
PlaceHolder | 是否占位 默认false 当设置隐藏时 画面上是否占据空白位置 |
SkipTab | 是否跳过Tab 按键操作 默认是false 通常用户在画面操作表格时 可以用 Tab按键 切换单元格,这里如果设置成true 则 Tab按键自动跳过该单元格 |
AllowEditor | 字段编辑性 ,默认为true • true:总能编辑 • false:总不能编辑 根据业务设计惯式,为保证同一个业务字段在系统内编辑性一致,一般在TableField,对于继承TableField的FormDataSourceField、FormItem等不单独设置,通过继承进行实现。 |
DataSource | 数据源 当从FormDataSourceFiled节点拖拽生成的Editor节点必有该属性 属性值为关联的DataSource的名称 如果是右键功能新建的FormItemEditor 默认为空 ,可下拉指定,注意当该Editor处于DataGrid下时 必需有该属性值 有该属性值的Editor 称为有数据源字段 ,无该属性值的Editor称为无数据源字段 该属性 需 配合 Extends 和 DataMethod 属性使用 |
FormItemEditor
字段元素,主要用于画面上字段框的渲染 包含 StringEditor、LongEditor、DecimalEditor、BooleanEditor、DateEditor、TimeEditor、DateTimeEditor、EnumEditor和Text九种类型
公共属性列表
属性 | 说明 |
---|---|
DisplayLength | 显示宽度,单位:字符。 不同数据类型的默认显示宽度不一样。 根据业务设计规范,建议显示宽度不小于标签内容,对于长度有限编号类(通常内容小于20个字符),建议显示大于实际内容1个字符。 |
DisplayHeight | 显示高度 单位:行 一行约20PX 如果该FormItemEditor 的处于DataGird下 则按照DataGird下所有FormItemEditor 最大设置的DisplayHeight来渲染行高 即 只需设置一个FormItemEditor 对于整个DataGird生效 |
Default | 默认值 一般不建议在这里统一设置 建议通过代码赋值 |
DataSource | 数据源 当从FormDataSourceFiled节点拖拽生成的Editor节点必有该属性 属性值为关联的DataSource的名称 如果是右键功能新建的FormItemEditor 默认为空 ,可下拉指定,注意当该Editor处于DataGrid下时 必需有该属性值 有该属性值的Editor 称为有数据源字段 ,无该属性值的Editor称为无数据源字段 该属性 需 配合 Extends 和 DataMethod 属性使用 |
Extends | 该字段继承已选数据源的某个字段 配合DataSource使用 继承字段的部分属性 不仅仅包含 Label,AllowEditor等 |
DataMethod | 数据方法 默认为空 可包含以下选项: • Normal:当有DataSource时 无Extends属性值时 可设置为该属性,该列的通过二次开发 dataMethod_方法 结合当前记录 计算等到数据,一般用于通过计算得出的统计数据 如:差额,总销售额等 • Aggregation:当有DataSource时 且数据源类型为Aggregate时使用,结合AggregationField属性 指定 聚合字段 根据不同类型 DataMethod 也有不同表现形式 • StirngEditor 可设置成 Password 表示为 暗纹显示 内容 ** • BooleanEditor 可设置成 SelectRecords 表示为DataGird 多一列boolean 选中框列 选择记录可打勾选择 |
AggregationField | 当DataSource为聚合类型时 可选择聚合字段 |
QuerySource | 查询的数据源 从该form的数据源中选择(做design设计自动查询时,设一个Group,QueryType为Query,里面新建无数据源字段,QuerySource设数据源、QueryField设查询字段,设置一个Button QueryType为Submit即可实现,不需要二次开发) |
QueryField | 查询的字段 从选定数据源中选择 同类型字段 |
QueryFilter | 查询的筛选条件 不同类型字段有不同查询调节选择 具体不一一列举 |
HasDropDown | 箭头 是否有下拉箭头 默认为空 不显示下拉箭头 |
DropDownMode | 下拉画面样式 下拉画面展示形式 包含以下选项: • PullDown:字段下方出现下拉画面; • PopUp:模态窗口 弹出展示下拉内容 |
String类型属性列表
属性 | 说明 | |
---|---|---|
StringSize | 数据存储长度,不区分字符与汉字。 默认值:20 如果有Extends 属性 则根据Extends属性继承对于的StringSize 表现形式为【】 根据业务设计惯式,一般设置在TableFiled节点上 通过层级继承 |
|
Trim | 空白字符的处理策略,空白字符包括:半角空格、全角空格、回车、换行、Tab。默认值:LeftRigth • Left:去除字符串左侧的空白字符; • LeftRigth:去除字符串左右两侧的空白字符; • None:不处理空白字符,保持原样; • Through:去除字符串左右两侧空白字符,内容的空白字符,连续的多个空白字符合成一个半角空格; |
|
ChangeCase | 字符串大小写处理策略。默认值:None • Lower:转换为小写字符 • None:不处理,保持原样 • Upper:转换为大写字符。 |
|
FilterEditor | ||
Regular | 配置字符串的数据格式,属性值为正则表达式,如果数据不满足此规则,输入后提示数据无效。 此属性仅作用于客户端输入过程,通过程序自动生成的数据此属性无效。 |
|
AllowKeyIn | 允许键盘输入 默认是true 在某些特殊场景下 不允许键盘录入 | |
FormLookup | 指定下拉画面 设置该Editor 可存在下拉箭头和下拉画面, | |
ReturnLookup | 下拉后选择数据后的返回值方式 默认的 Replace • Replace:替换原有值; • Insert:原有值基础上追加 |
|
ValidateLookup | 检查下拉 默认值为 true 可选:true or false table和formdatasource字段上都有此属性,不管是无数据源或者有数据源的字段,都有此限制,假如,类似与模糊查询这种,继承了某个字段,成false则不检查,如不设则会提示“引用的数据不存在”、“引用的数据存在多条”、“无法自动识别引用的数据未启用”。 |
Long类型属性列表
属性 | 说明 | |
---|---|---|
ShowZero | 配置LongEditor对于数值0是否显示,如果配置为false,对于数值0,编辑框未进入编辑模式时展示为空白,进入编辑框后展示为0。 此属性仅作用于客户端自动渲染画面的LongEditor控件。 |
|
ThousandSeperator | 配置LongEditor在非编辑模式展示时,是否显示千分位分隔符。 此属性仅作用于客户端自动渲染画面的LongEditor控件。 |
Decimal类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 配置显示样式,支持以下样式配置 • 显示百分比:DecimalEditor展示时增加百分号“%”后缀,例如:50,显示为50%,仅增加显示后缀,数值不动。 • 货币符号:DecimalEditor展示时增加货币符号后缀,具体货币符号通过界面配置。 此属性仅作用于客户端自动渲染画面的DecimalEditor控件。 |
|
ShowZero | 配置DecimalEditor对于数值0是否显示,如果配置为false,对于数值0,编辑框未进入编辑模式时展示为空白,进入编辑框后展示为0。 此属性仅作用于客户端自动渲染画面的DecimalEditor控件。 |
|
ThousandSeperator | 配置DecimalEditor在非编辑模式展示时,是否显示千分位分隔符。 此属性仅作用于客户端自动渲染画面的DecimalEditor控件。 |
|
NumOfDecimals | 设置浮点数存储的精度,即小数点后的小数位数。 | |
DisplayDecimals | 设置浮点数通过DecimalEditor展示时,在未进入编辑状态时,显示的小数位数,允许与存储精度不一致,值范围小于等于存储精度。 例如:数据存储的精度为4,展示精度为2. |
|
RoundOff | 设置四舍五入的方式,默认值:HalfUp,可选策略如下: • Ceiling:向正无限大方向舍入的舍入模式。如果结果为正,则舍入行为类似于 UP;如果结果为负,则舍入行为类似于 DOWN。注意,此舍入模式始终不会减少计算值。 • Down:向零方向舍入的舍入模式。从不对舍弃部分前面的数字加 1(即截尾)。注意,此舍入模式始终不会增加计算值的绝对值。 • Floor:向负无限大方向舍入的舍入模式。如果结果为正,则舍入行为类似于 DOWN;如果结果为负,则舍入行为类似于 RoundingMode.UP。注意,此舍入模式始终不会增加计算值。 • HalfDown:向最接近数字方向舍入的舍入模式,如果与两个相邻数字的距离相等,则向下舍入。如果被舍弃部分 > 0.5,则舍入行为同 UP;否则舍入行为同 DOWN。 • HalfEven:向最接近数字方向舍入的舍入模式,如果与两个相邻数字的距离相等,则向相邻的偶数舍入。如果舍弃部分左边的数字为奇数,则舍入行为同 HALF_UP;如果为偶数,则舍入行为同 HALF_DOWN。注意,在重复进行一系列计算时,此舍入模式可以在统计上将累加错误减到最小。此舍入模式也称为“银行家舍入法”,主要在美国使用。此舍入模式类似于 Java 中对 float 和 double 算法使用的舍入策略。 • HalfUp:向最接近数字方向舍入的舍入模式,如果与两个相邻数字的距离相等,则向上舍入。如果被舍弃部分 >= 0.5,则舍入行为同 RoundingMode.UP;否则舍入行为同 DOWN。注意,此舍入模式就是通常学校里讲的四舍五入。 • Unnecessary:用于断言请求的操作具有精确结果的舍入模式,因此不需要舍入。如果对生成精确结果的操作指定此舍入模式,则抛出 ArithmeticException。 • Up:远离零方向舍入的舍入模式。始终对非零舍弃部分前面的数字加 1。注意,此舍入模式始终不会减少计算值的绝对值。 |
Date类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 设置日期的展示样式,支持以下格式: • yyyy:展示年份。例如:2025 • MM-dd:展示月份和日期。例如:04-15 • MM/dd:展示月份和日期。例如:04/15 • yyyy-MM:展示年份和月份。例如:2025-04 • yyyyMMdd:展示年月日。例如:20250415 • yyyy-MM-dd:展示年月日。例如:2025-04-15 • yyyy/MM/dd:展示年月日。例如:2025/04/15 • yyyy-M-d:展示年月日。例如:2025-4-15 • yyyy/M/d:展示年月日。例如:2025/4/15 |
Time类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 设置时间的展示样式,支持以下格式: • HH:mm:ss:展示时分秒,例如:14:03:10 • HH:mm:展示时分。例如:14:03 |
DateTime类型属性列表
属性 | 说明 | |
---|---|---|
DisplayStyle | 设置日期时间的展示样式,支持以下格式: • yyyy-MM-dd HH:mm:ss:展示年月日时分秒,例如:2025-04-15 14:03:10 • yyyy-MM-dd HH:mm:展示年月日时分,例如:2025-04-15 14:03 |
Enum类型属性列表
属性 | 说明 | |||
---|---|---|---|---|
Source | 指定继承实体的类型,可选值:DataSource、DataType、Enum、Regular。 | |||
Regular | 设置展示哪些EnumItem。属性值内容为EnumItem值,多个值之间用竖线“\ | ”分隔。例如:1\ | 2\ | 3 |
DataGrid
平台界面设计核心组件之一,负责呈现和管理与数据库交互所需的信息。
属性列表
属性 | 说明 | |||
---|---|---|---|---|
Layout | 布局【horizontal】:横向;【vertical】:纵向 |
|||
Regular | 设置展示哪些EnumItem。属性值内容为EnumItem值,多个值之间用竖线“\ | ”分隔。例如:1\ | 2\ | 3 |
HeaderHeight | 表头高度参照 默认的Row 参照行号 可选 Fixed 固定成默认 | |||
Rows | 表格的显示数据的行数。默认是空,自适应撑满剩余空间 | |||
DynamicColumn | 行列转置列设置, 当数据源类型是 Pivot时 ,下拉选择在DataGird下的字段作为 交叉数据 | |||
FreezeColumns | 冻结列数,默认值为 0 冻结指定的前几列数,使得其不随滚动条滚动 |
|||
ShowToolbar | 是否展示工具栏(新增,保存 删除 查询的功能栏) 默认是 true |
Button
平台界面设计核心组件之一,负责界面与后台业务逻辑的交互,每个Button 都可指定 buttonOk_ 二次开发方法执行后台业务逻辑
属性列表
属性 | 说明 |
---|---|
ShortCut | 按钮快捷键 多值可选 Ctrl+ 数字 0-9 |
AutoSaveRecord | 是否保存记录 默认true 当有数据源没保存数据时 点击按钮是否自动保存数据源数据 |
AllowMultiSelect | 是否允许多选 默认true 按钮能否触发多选数据 |
AuthorityLevel | 按钮操作类型 默认是 Edit • Edit:编辑; • Query:查询 |
ButtonType | 按钮类型 默认为空 当按钮处于QueryGroup 下时 可以选 Reset:重置; Query:查询; 用于自动查询数据源 |
HasIcon | 按钮图标 默认是fasle 如果设置为true 则在画面上渲染按钮时 多 一个 元素标签 用于做客户端二次开发 |
MenuItemButton
MenuItemButton节点常用于快速配置跳转画面 结合属性MenuItem 打开的菜单受 权限控制
属性列表
属性 | 说明 |
---|---|
MenuItem | 打开的关联菜单MenuItem |
SubFormButton
SubFormButton节点常用于快速配置跳转画面 结合属性SubForm 打开的画面不受权限控制
属性列表
属性 | 说明 |
---|---|
SubForm | 打开的关联画面SubForm |
Image
Image 节点是平台提供的一种图片展示控件,支持单图片或多图片展示,一般图片结合DataGrid时候 如 选择DataGrid内一行记录展示绑定该记录对应的图片
属性列表
属性 | 说明 |
---|---|
URL | 该图片地址 相对于GongqiERP/resource的相对路径 如 绑定SysUser表的RecId 数据的图片 ./images/(SysUser.RecId).jpg |
Suffix | 图片后缀 默认JPG 可选PNG |
PopupMode | 弹出图片方式 默认是 单击 可选 Click DoubleClick None |
ImageLayoutMode | 图片排列模式 Clip;Fit;Repeat;Scale:正常默认 |
FailureImage | 图片显示失败时的图片路径 相对于GongqiERP/resource的相对路径 |
MultipleImage | 多图片 是否是 多图片组件 当是 true的时候 URL 指定路径 不需要加 图片后缀 |
Plugin
Plugin节点是平台提供的控件组件,组件类型包括 Radio、Html 和Tree
属性列表
属性 | 说明 |
---|---|
PluginType | 类型,包括以下三种: • Html:html格式网页; • Radio:单选组; • Tree:树形; 这些控件都需要结合 二次开发 通过代码去渲染 |
Parameters | 参数:参数设置 |
FieldGroup
FieldGroup节点是 FormItemEditor节点的容器,即 FieldGroup节点下只允许存在FormItemEditor 常用于对画面上输入框布局调整
属性列表
属性 | 说明 |
---|---|
FieldGroup | 数据组 当设置了关联的DataSource 属性后,可以和数据源的FieldGroup节点自动关联 展示FieldGroup节点下字段内容 |
Component | 维度 维度选择 当选择维度后 自动构造 维度子项到 FieldGroup节点下 |
LabelLength | 标签长度 默认按标签内容 也可自定义指定 单位 PX |
RowsOrColumns | 单元格换行/列 表明显示行数或者是列数 |
BoxJustify | FieldGroup字段长度自动对齐 已最长为主 |
Group
Group节点是 FormItem节点的容器,即 Group节点下允许建任何节点,常用于画面布局调整
属性列表
属性 | 说明 |
---|---|
GruopType | 组模式 可选:空或者Query 当设置为Query时 结合DataSource属性 变成一个查询组,查询组内 设置查询字段和查询按钮后 可实现对指定数据源的数据过滤 |
Collapsible | Group是否折叠 默认是false 不折叠 |
Tab
Tab节点是 平台提供的选项卡组件,Tab节点下可建立多个TabPage 每个TabPage就是一个选项,TabPage下可包含任意组件
DividedBox
DividedBox节点是 平台提供的折叠组件,DividedBox 下可包含任意组件,DividedBox下的根组件之间会渲染出折叠按钮用于折叠内容