<?xml version="1.0" encoding="UTF-8"?>
<!--
    $Author: ouyangzhaochang2663 $
    $Date: 2010/12/10 08:05:10 $
    $Revision: 1.5 $
    $Purpose: 任务定义-参数定义
-->
<a:screen xmlns:a="http://www.leaf-framework.org/application" trace="true">
    <a:init-procedure/>
    <a:view>
        <a:link id="sys_alert_rule_param_values_link" url="${/request/@context_path}/modules/sys/SYS2030/sys_alert_rule_param_values.lview"/>
        <a:link id="sys_alert_rule_parameter_sql_text_link" url="${/request/@context_path}/modules/sys/SYS2030/sys_alert_rule_parameter_sql_text.lview"/>
        <script type="text/javascript"><![CDATA[
            function queryAlertRuleParameters(){
                $('sys_alert_rule_parameters_result_ds').query();
            }

            function parameterCodeEdit(record,name){
                if(record.isNew){
                    return 'parameter_code_grid_tf';
                }else{
                    return '';
                }
            }

            function parameterTypeEdit(record,name){
                if(record.isNew){
                    return 'parameter_type_grid_cmb'
                }else{
                    return '';
                }
            }

            function setParameterType(value, record, name){
                var parameterId = record.get('parameter_id');
                var parameterType = record.get('parameter_type');
                if(parameterId){
                    var alink = '<a href="javascript:setParameterTypeInfo('+parameterId+',\''+parameterType+'\')">';
                    if(parameterType == 'SQL_TEXT'){
                        alink += '${l:SYS_ALERT_RULES_PARA.SEARCH_LANG}</a>';
                    }else{
                        alink += '${l:EXP_BUS_RULES_EXP_OBJ.VALUE_LIST}</a>';
                    }
                    return alink;
                }else{
                    return '';
                }
            }
            
            function setParameterTypeInfo(parameterId,parameterType){
                if(parameterType=='SQL_TEXT'){
                    new Leaf.Window({id:'sys_alert_rule_parameter_sql_text_window', url:/*sys_alert_rule_parameter_sql_text.screen*/$('sys_alert_rule_parameter_sql_text_link').getUrl()+'?parameter_id='+parameterId, title:'${l:SYS_ALERT_RULE_PARAM_SQL_TEXT.SQL_QUERY}', height:500,width:600});
                }else{
                    new Leaf.Window({id:'sys_alert_rules_param_values_window', url:/*sys_alert_rule_param_values.screen*/$('sys_alert_rule_param_values_link').getUrl()+'?parameter_id='+parameterId, title:'${l:TASK_PARAMETER_DEFINITION_VALUE_LIST}', height:400,width:600});
                }
            }
        ]]></script>
        <a:dataSets>
            <a:dataSet id="parameter_type_combobox_ds" lookupCode="ALERT_RULE_PARAMETER_TYPE_VALUE"/>
            <a:dataSet id="sys_alert_role_info" loadData="true" model="sys.SYS2030.sys_alert_rules">
                <a:fields>
                    <a:field name="alert_rule_code" readOnly="true"/>
                    <a:field name="description" readOnly="true"/>
                    <a:field name="event_name" readOnly="true"/>
                    <a:field name="event_desc" readOnly="true"/>
                </a:fields>
            </a:dataSet>
            <a:dataSet id="sys_alert_rule_parameters_result_ds" autoQuery="true" fetchAll="false" model="sys.SYS2030.sys_alert_rule_parameters" queryUrl="${/request/@context_path}/autocrud/sys.SYS2030.sys_alert_rule_parameters/query?alert_rule_id=${/parameter/@alert_rule_id}" selectable="true">
                <a:fields>
                    <a:field name="alert_rule_id" defaultValue="${/parameter/@alert_rule_id}"/>
                    <a:field name="parameter_sequence" required="true"/>
                    <a:field name="parameter_code" required="true"/>
                    <a:field name="description" required="true"/>
                    <a:field name="parameter_type_display" displayField="code_value_name" options="parameter_type_combobox_ds" required="true" returnField="parameter_type" valueField="code_value"/>
                    <a:field name="enabled_flag" checkedValue="Y" defaultValue="Y" uncheckedValue="N"/>
                </a:fields>
            </a:dataSet>
        </a:dataSets>
        <a:screenBody>
            <a:fieldSet column="2" title="SYS_ALERT_RULES.RULE_INFO" width="570">
                <a:textField name="alert_rule_code" bindTarget="sys_alert_role_info" width="195"/>
                <a:textField name="description" bindTarget="sys_alert_role_info" width="195"/>
                <a:textField name="event_name" bindTarget="sys_alert_role_info" width="195"/>
                <a:textField name="event_desc" bindTarget="sys_alert_role_info" width="195"/>
            </a:fieldSet>
            <a:grid id="sys_alert_rule_parameters_grid" bindTarget="sys_alert_rule_parameters_result_ds" height="300" navBar="true" width="660">
                <a:toolBar>
                    <a:button type="add"/>
                    <a:button type="clear"/>
                    <a:button type="save"/>
                </a:toolBar>
                <a:columns>
                    <a:column name="parameter_sequence" align="right" editor="parameter_sequence_grid_nf" sortable="true" width="50"/>
                    <a:column name="parameter_code" align="center" editorFunction="parameterCodeEdit" sortable="true" width="160"/>
                    <a:column name="description" align="left" editor="parameter_name_grid_tf" width="220"/>
                    <a:column name="parameter_type_display" align="center" editorFunction="parameterTypeEdit" width="60"/>
                    <a:column name="enabled_flag" editor="parameter_enabled_flag_cb" sortable="true" width="40"/>
                    <a:column name="parameter_id" align="center" prompt="SYS_ALERT_RULE_PARAMETER.PARAMETER_TYPE" renderer="setParameterType" width="95"/>
                </a:columns>
                <a:editors>
                    <a:numberField id="parameter_sequence_grid_nf" allowdecimals="false" allownegative="false"/>
                    <a:textField id="parameter_code_grid_tf" typeCase="upper"/>
                    <a:textField id="parameter_name_grid_tf"/>
                    <a:comboBox id="parameter_type_grid_cmb"/>
                    <a:checkBox id="parameter_enabled_flag_cb"/>
                </a:editors>
            </a:grid>
        </a:screenBody>
    </a:view>
</a:screen>