中文名称
id= ${data.id}
类型
表/视图
内嵌SQL
表/视图
选择表/视图
数据字典
字段筛选
数据预览
指定表或视图的名称
sql语句
复制字段名
语句格式化
非法字符检测
选择业务模型
FreeMarker动态SQL
数据字典
字段筛选
数据预览
${data.detail.sql}
别名
字段映射
join方式
inner join
left join
right join
full join
与上级表的关联方式
关联条件
自动构建关联条件
${data.detail.joinon}
与上级的关联条件
动态检索条件
${data.detail.dynamicwhere2}
条件定义规则:
可以对本表以及本表的子表进行条件设置
每行表示一个动态条件(所以请不要为了排版好看而加回车)
如果需要续行,请以英文空格加下划线结尾表示本行条件尚未结束,需要接下一行
各个条件之间是and关系
如果某行条件表达式返回null或空字符串,则该行条件被忽略
条件表达式中可以引用入参变量
可以使用服务端全局函数,服务端全局扩展脚本中的函数,以及模板后端脚本中的函数
条件的解析在服务端进行
条件生效规则:
如果某行条件表达式引用的变量中任意一个没有数据,则该行条件被忽略
如果条件表达式的结果为null或空字符串,则该条件被忽略
如果条件表达式不包含对变量的直接引用,那么该条件肯定生效,除非它的结果为null或空字符串
备注
${data.detail.description}
{eval} $('#cb_save').show(); $('#cb_clone').show(); $('#cb_delete').show(); setTimeout(function() { console.info("load data"); if( g_currentTreeNode.getParentNode().nodetype =='table') //如果有上级表,那么 join属性需要定义 { //子表,加载join关系 $('.join-property').removeClass('hidden'); if( $('#selfmetadata').val()=='') { console.info("set alias"); // 表的别名不能直接从节点上取,因为可能这个节点是刚加了,树节点上的信息还没有刷新,导致无法获取,需要用 getNodeData强行从后台再获取一下 let t= getNodeData( g_currentTreeNode.pid).metadata; //表的别名 if( t!='') { t= stringInc( t); $('#selfmetadata').val(t); } } }else { // 主表, //if( $('#selfmetadata').val()=='') $('#selfmetadata').val('a'); //加载字段映射 $('#colMapContainer').closest('.form-group').removeClass('hidden'); let modleId= g_currentTreeNode.getParentNode().getParentNode().id; initColMap ( modleId, data.id , data.detail.colmap); } //如果没有上级表,那么 显示动态检索条件 if( g_currentTreeNode.getParentNode().nodetype =='instance') { $('#dynamicwhere2Container').removeClass('hidden'); } let dataSourceType= data.detail.dataSourceType; if( dataSourceType==null ) dataSourceType==''; if( dataSourceType=='') dataSourceType='table'; window.sqlEditor=null; setDataSourceType(dataSourceType); //关联方式 $('#jointype').val( data.detail.jointype ||'join'); $('#cb_save').show(); //自动弹出选表或视图 if(dataSourceType=='table' && $('#selfproperty').val()=='') { //selectTableFromDictOrModule(); } },100); {/eval}