<?xml version="1.0" encoding="UTF-8"?> <a:screen xmlns:c="leaf.application.action" xmlns:a="http://www.leaf-framework.org/application" xmlns:p="uncertain.proc" trace="true"> <a:init-procedure> <p:switch test="/parameter/@maintain_type"> <p:case value="CREATE"> <a:model-query fetchAll="true" model="sch.SCH111.sch_job_para_default" rootPath="job_para_list"/> <a:model-query fetchAll="true" model="sch.SCH111.sch_task_display_para_count" rootPath="para_count_record"/> </p:case> <p:case value="*"> <a:model-query fetchAll="true" model="sch.SCH111.sch_job_para" rootPath="job_para_list"/> <a:model-query fetchAll="true" model="sch.SCH111.sch_job_display_para_count" rootPath="para_count_record"/> </p:case> </p:switch> <p:loop nullable="true" source="/model/job_para_list"> <p:switch test="@edit_type"> <p:case value="LOV"> <p:switch test="@lov_has_default_value"> <p:case value="Y"> <p:set field="/model/temp/record/@lov_sql" value="${@lov_sql}"/> <p:set field="/model/temp/record/@default_value" value="${@default_value_format}"/> <a:model-query defaultWhereClause="t1.code_value = ${/model/temp/record/@default_value}" model="sch.SCH111.sch_task_parameter_default_value" rootPath="default_para_value_record"/> </p:case> </p:switch> </p:case> </p:switch> </p:loop> <p:echo/> </a:init-procedure> <a:view> <script type="text/javascript"><![CDATA[ function mask_jobPara() { Leaf.Masker.mask($('sch_concurrent_job_para').wrap, '正在提交..'); } function unmask_jobPara() { Leaf.Masker.unmask($('sch_concurrent_job_para').wrap); } function winClose_jobPara() { $('sch_concurrent_job_para').close(); } ]]></script> <a:dataSets> <a:dataSet id="taskParaTmpDs"> <a:datas dataSource="/model/job_para_list"/> </a:dataSet> <a:dataSet id="taskParaDs" autoCreate="true"> <a:fields> <a:placeHolder id="dynamic_ds_fields"/> </a:fields> </a:dataSet> </a:dataSets> <script type="text/javascript"><![CDATA[ function field_display_handle(record,name,display_type) { var field = record.getField(name); if(display_type=='REQUIRED') { field.setRequired(true); } else if(display_type=='READONLY') { field.setReadOnly(true); } } (function () { var tmpDs = $('taskParaTmpDs'); var tmpRecords = tmpDs.getAll(); var paraRecord = $('taskParaDs').getAt(0); for (var i=0,j=tmpRecords.length;i<j;i++) { var tmpRecord = tmpRecords[i]; var name = tmpRecord.get('parameter_name'); var parameter_type = tmpRecord.get('parameter_type'); var edit_type = tmpRecord.get('edit_type'); if('${/parameter/@maintain_type}'=='READONLY') { var display_type = 'READONLY'; } else { var display_type = tmpRecord.get('display_type'); } if(parameter_type=='DATE') { var allow_edit_type = { 'DATEPICKER':1, 'TEXTFIELD':1, 'LOV':1 }; if(!Ext.isEmpty(allow_edit_type[edit_type])) { paraRecord.set(name,$L.parseDate(paraRecord.get(name))); } else { paraRecord.set(name,''); } } else if(parameter_type=='NUMBER') { var allow_edit_type={ 'NUMBERFIELD_INTEGER':1, 'NUMBERFIELD_DECIMAL':1, 'NUMBERFIELD_MONEY':1, 'TEXTFIELD':1, 'LOV':1 }; if(!Ext.isEmpty(allow_edit_type[edit_type])) { var value = paraRecord.get(name); if(isNaN(Number(value))) { paraRecord.set(name,''); } } else { paraRecord.set(name,''); } } if(tmpRecord.get('edit_type')=='LOV') { paraRecord.getField(name+'_desc').setLovPara('lov_sql',tmpRecord.get('lov_sql')); field_display_handle(paraRecord,name+'_desc',display_type); } else { field_display_handle(paraRecord,name,display_type); } } })(); ]]></script> <a:screenBody> <a:form column="2" labelWidth="100" title=" " width="520"> <a:placeHolder id="dynamic_form_no_editor"/> <a:placeHolder id="dynamic_form_editors"/> </a:form> </a:screenBody> </a:view> <a:view-config> <c:create-config targetId="dynamic_form_no_editor"> <p:switch test="/model/para_count_record/record/@para_count"> <p:case value="0"> <c:process-config> <div style="margin-left:250px;"><![CDATA[无参数]]></div> </c:process-config> </p:case> </p:switch> </c:create-config> <c:create-config targetId="dynamic_ds_fields"> <p:loop source="/model/job_para_list"> <p:switch test="@edit_type"> <p:case value="LOV"> <c:process-config> <a:field name="${@parameter_name}" defaultValue="${model/default_para_value_record/record/@code_value}"/> <a:field name="${@parameter_name}_desc" defaultValue="${model/default_para_value_record/record/@code_value_name}" lovGridHeight="300" lovHeight="450" lovService="sch.SCH111.sch_task_parameter_value_lov" lovWidth="550" prompt="${@description}" title="${@description}"> <a:mapping> <a:map from="code_value_name" to="${@parameter_name}_desc"/> <a:map from="code_value" to="${@parameter_name}"/> </a:mapping> </a:field> </c:process-config> </p:case> <p:case value="TEXTFIELD"> <c:process-config> <a:field name="${@parameter_name}" defaultValue="${@parameter_value}" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="NUMBERFIELD_INTEGER"> <c:process-config> <a:field name="${@parameter_name}" defaultValue="${@parameter_value}" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="NUMBERFIELD_DECIMAL"> <c:process-config> <a:field name="${@parameter_name}" defaultValue="${@parameter_value}" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="NUMBERFIELD_MONEY"> <c:process-config> <a:field name="${@parameter_name}" defaultValue="${@parameter_value}" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="CHECKBOX"> <c:process-config> <a:field name="${@parameter_name}" checkedValue="Y" defaultValue="${@parameter_value}" prompt="${@description}" uncheckedValue="N"/> </c:process-config> </p:case> <p:case value="DATEPICKER"> <c:process-config> <a:field name="${@parameter_name}" datatype="date" defaultValue="${@parameter_value}" prompt="${@description}"/> </c:process-config> </p:case> </p:switch> </p:loop> </c:create-config> <c:create-config targetId="dynamic_form_editors"> <p:loop source="/model/job_para_list"> <p:switch test="@display_flag"> <p:case value="Y"> <p:switch test="@edit_type"> <p:case value="LOV"> <c:process-config> <a:lov name="${@parameter_name}_desc" bindTarget="taskParaDs" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="TEXTFIELD"> <c:process-config> <a:textField name="${@parameter_name}" bindTarget="taskParaDs" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="NUMBERFIELD_INTEGER"> <c:process-config> <a:numberField name="${@parameter_name}" allowDecimals="false" bindTarget="taskParaDs" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="NUMBERFIELD_DECIMAL"> <c:process-config> <a:numberField name="${@parameter_name}" allowDecimals="true" bindTarget="taskParaDs" decimalPrecision="-1" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="NUMBERFIELD_MONEY"> <c:process-config> <a:numberField name="${@parameter_name}" allowDecimals="true" allowFormat="true" bindTarget="taskParaDs" decimalPrecision="2" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="CHECKBOX"> <c:process-config> <a:checkBox name="${@parameter_name}" bindTarget="taskParaDs" prompt="${@description}"/> </c:process-config> </p:case> <p:case value="DATEPICKER"> <c:process-config> <a:datePicker name="${@parameter_name}" bindTarget="taskParaDs" prompt="${@description}"/> </c:process-config> </p:case> </p:switch> </p:case> </p:switch> </p:loop> </c:create-config> </a:view-config> </a:screen>