用途:在分支上编写或修改 Datex Studio 选择器(configurationTypeId=7),即平台的下拉/自动补全控件。选择器定义由数据源支撑的选项列表、针对每个选项的显示标签表达式,以及会把输入转发给底层数据源的内置全文搜索框;它挂载在表单字段、hub 筛选下拉和网格筛选单元格内,不能独立渲染。
主要能力:支持三种常见形态——数据源支撑的下拉(包装已有或新建的 -datasource.json,按 outParams 渲染)、自动补全(同形态,依靠内置搜索框与三件套契约实时过滤)、枚举下拉(flow 型数据源迭代 $types.<Package>.<enum> 产出 Key/Value 行)。
使用方式:通过 dxs configuration 通用 CRUD 编辑,无 dxs selector 子命令,也不支持字段级修补,需整体构建或先取回再提取 JSON 再推送。新建:先构建 body.json,再执行 dxs configuration validate selector -b <branchId> -D body.json,然后 dxs configuration upsert selector -b <branchId> -D body.json。编辑已有配置:dxs configuration get selector <configId> -b <branchId> -O envelope.json,再用 jq .json envelope.json > body.json 提取内部 body,编辑后 validate 再 upsert。注意命令行类型标识为 selector(小写),对应 configurationTypeId: 7。
限制:绝不可把 envelope.json 直接管道进 upsert,否则会静默破坏配置内容;datasourceConfig.configId 必须指向 -datasource.json(configurationTypeId=6),绝不能指向 -footprintDatasource.json(configurationTypeId=19);datasourceKeyDef 需镜像数据源的 keyDef;configOutParameters 需镜像 outParams;top 必须是字符串(如 "25")而非数字;flow 型 backing 需补齐 getList 与 getByKeys 的 keyed-collection 形态;参数层只用原始类型,不用枚举类型;文本按显示标签排序。全文搜索三件套(数据源声明 full_text_search inParam、条件 contains 过滤、选择器注入 $selector.fullTextSearch)仅在数据源专为该选择器存在时适用。创建 OData 支撑的选择器前需先确认实体与字段存在。其他技能细节暂未提供。