unknown 5 лет назад
Родитель
Сommit
e623a9b8fe

+ 6 - 7
o2web/source/o2_core/o2/xScript/ViewEnvironment.js

@@ -669,13 +669,12 @@ MWF.xScript.ViewEnvironment = function (ev) {
 
 
     this.statement = {
     this.statement = {
         "execute": function (statement, callback, async) {
         "execute": function (statement, callback, async) {
-            var filterList = { "filterList": (statement.filter || null) };
-            MWF.Actions.get("x_query_assemble_surface").execute(statement.view, statement.application, filterList, function (json) {
-                var data = {
-                    "grid": json.data.grid,
-                };
-                if (callback) callback(data);
-            }, null, async);
+            var obj = { "filterList": (statement.filterList || []), parameter : (statement.parameter || {}) };
+            MWF.Actions.load("x_query_assemble_surface").StatementAction.executeV2(
+                statement.name, statement.mode || "data", statement.page || 1, statement.pageSize || 20, obj,
+                function (json) {
+                    if (callback) callback(json);
+                }, null, async);
         },
         },
         "select": function (statement, callback, options) {
         "select": function (statement, callback, options) {
             if (statement.statement) {
             if (statement.statement) {

+ 17 - 18
o2web/source/x_component_query_Query/Statement.js

@@ -177,14 +177,15 @@ MWF.xApplication.query.Query.Statement = MWF.QStatement = new Class({
             this.filterList.push( d );
             this.filterList.push( d );
         }.bind(this))
         }.bind(this))
     },
     },
-    loadParameter : function( data ){
+    loadParameter : function(){
         this.parameter = {};
         this.parameter = {};
+        var parameter = this.json.parameter ? Object.clone(this.json.parameter) : {};
         //系统默认的参数
         //系统默认的参数
-        ( this.viewJson.filterList || [] ).each( function (f) {
+        ( this.viewJson.parameterList || [] ).each( function (f) {
             var value = f.value;
             var value = f.value;
-            if( data.parameter && data.parameter[ f.parameter ] ){
-                value = data.parameter[ f.parameter ];
-                delete data.parameter[ f.parameter ];
+            if( parameter && parameter[ f.parameter ] ){
+                value = parameter[ f.parameter ];
+                delete parameter[ f.parameter ];
             }
             }
             debugger;
             debugger;
             if( typeOf( value ) === "date" ){
             if( typeOf( value ) === "date" ){
@@ -254,14 +255,12 @@ MWF.xApplication.query.Query.Statement = MWF.QStatement = new Class({
             this.parameter[ f.parameter ] = value;
             this.parameter[ f.parameter ] = value;
         }.bind(this));
         }.bind(this));
         //传入的参数
         //传入的参数
-        if( data.parameter ){
-            for( var p in data.parameter ){
-                var value = data.parameter[p];
-                if( typeOf( value ) === "date" ){
-                    value = "{ts '"+value+"'}"
-                }
-                this.parameter[ p ] = value;
+        for( var p in parameter ){
+            var value = parameter[p];
+            if( typeOf( value ) === "date" ){
+                value = "{ts '"+value+"'}"
             }
             }
+            parameter[ p ] = value;
         }
         }
     },
     },
     loadCurrentPageData: function( callback, async, type ){
     loadCurrentPageData: function( callback, async, type ){
@@ -484,14 +483,14 @@ MWF.xApplication.query.Query.Statement = MWF.QStatement = new Class({
     switchStatement : function (json) {
     switchStatement : function (json) {
         this.switchView(json);
         this.switchView(json);
     },
     },
-    setFilter : function( filter, callback ){
+    setFilter : function( filter, parameter, callback ){
         if( this.lookuping || this.pageloading )return;
         if( this.lookuping || this.pageloading )return;
-        if( !filter )filter = {"filterList": [], "paramter" : {} };
-        if( typeOf( filter ) === "object" )return;
-        this.json.filter = filter.filterList || [];
-        this.json.paramter = filter.paramter || {};
+        if( !filter )filter = [];
+        if( !parameter )parameter = {};
+        this.json.filter = filter;
+        this.json.parameter = parameter;
         if( this.viewAreaNode ){
         if( this.viewAreaNode ){
-            this.createViewNode({"filterList": this.json.filter.clone(), "paramter" : Object.clone(this.json.paramter) }, callback);
+            this.createViewNode({"filterList": this.json.filter.clone() }, callback);
         }
         }
     }
     }
 });
 });

+ 50 - 50
o2web/source/x_component_query_StatementDesigner/$Statement/view.html

@@ -166,28 +166,28 @@
                         <td class="editTableTitle">数据类型:</td>
                         <td class="editTableTitle">数据类型:</td>
                         <td class="editTableValue"><select class="datatypeInput_vf">
                         <td class="editTableValue"><select class="datatypeInput_vf">
 <!--                                 onchange="if (this.selectedIndex==2){-->
 <!--                                 onchange="if (this.selectedIndex==2){-->
-<!--                                    $('text{$.id}viewFilterDateFormulaSelector').setStyle('display', 'block');-->
-<!--                                    $('text{$.id}viewFilterDateOnlyFormulaSelector').setStyle('display', 'none');-->
-<!--                                    $('text{$.id}viewFilterTimeOnlyFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterDateFormulaSelector').setStyle('display', 'block');-->
+<!--                                    $('text{$.id}viewParameterDateOnlyFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterTimeOnlyFormulaSelector').setStyle('display', 'none');-->
 <!--                                   }else if (this.selectedIndex==3){-->
 <!--                                   }else if (this.selectedIndex==3){-->
-<!--                                    $('text{$.id}viewFilterDateFormulaSelector').setStyle('display', 'none');-->
-<!--                                    $('text{$.id}viewFilterDateOnlyFormulaSelector').setStyle('display', 'block');-->
-<!--                                    $('text{$.id}viewFilterTimeOnlyFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterDateFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterDateOnlyFormulaSelector').setStyle('display', 'block');-->
+<!--                                    $('text{$.id}viewParameterTimeOnlyFormulaSelector').setStyle('display', 'none');-->
 
 
 <!--                                }else if (this.selectedIndex==4){-->
 <!--                                }else if (this.selectedIndex==4){-->
-<!--                                    $('text{$.id}viewFilterDateFormulaSelector').setStyle('display', 'none');-->
-<!--                                    $('text{$.id}viewFilterDateOnlyFormulaSelector').setStyle('display', 'none');-->
-<!--                                    $('text{$.id}viewFilterTimeOnlyFormulaSelector').setStyle('display', 'block');-->
+<!--                                    $('text{$.id}viewParameterDateFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterDateOnlyFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterTimeOnlyFormulaSelector').setStyle('display', 'block');-->
 <!--                                }else{-->
 <!--                                }else{-->
-<!--                                    $('text{$.id}viewFilterDateFormulaSelector').setStyle('display', 'none');-->
-<!--                                    $('text{$.id}viewFilterDateOnlyFormulaSelector').setStyle('display', 'none');-->
-<!--                                    $('text{$.id}viewFilterTimeOnlyFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterDateFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterDateOnlyFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterTimeOnlyFormulaSelector').setStyle('display', 'none');-->
 <!--                                }-->
 <!--                                }-->
 
 
 <!--                                if (this.selectedIndex==0){-->
 <!--                                if (this.selectedIndex==0){-->
-<!--                                    $('text{$.id}viewFilterTextFormulaSelector').setStyle('display', 'block');-->
+<!--                                    $('text{$.id}viewParameterTextFormulaSelector').setStyle('display', 'block');-->
 <!--                                }else{-->
 <!--                                }else{-->
-<!--                                    $('text{$.id}viewFilterTextFormulaSelector').setStyle('display', 'none');-->
+<!--                                    $('text{$.id}viewParameterTextFormulaSelector').setStyle('display', 'none');-->
 <!--                                }">-->
 <!--                                }">-->
 
 
                             <option value="textValue" selected>文本</option>
                             <option value="textValue" selected>文本</option>
@@ -201,9 +201,9 @@
                     <tr>
                     <tr>
                         <td class="editTableTitle"></td>
                         <td class="editTableTitle"></td>
                         <td class="editTableValue">
                         <td class="editTableValue">
-                            <input type="radio" class="restrictFilterInput_vf" value="restrict" name="text{$.id}viewFilterType" onclick="if (this.checked){
+                            <input type="radio" class="restrictParameterInput_vf" value="restrict" name="text{$.id}viewFilterType" onclick="if (this.checked){
                                 debugger;
                                 debugger;
-                                $('text{$.id}viewFilterRestrict').setStyle('display', 'block');
+                                $('text{$.id}viewParameterRestrict').setStyle('display', 'block');
                                 $('text{$.id}parameterInputTr').setStyle('display', 'table-row');
                                 $('text{$.id}parameterInputTr').setStyle('display', 'table-row');
                                 // $('text{$.id}parameterInputSelectTr').setStyle('display', 'table-row');
                                 // $('text{$.id}parameterInputSelectTr').setStyle('display', 'table-row');
                                 $('text{$.id}viewCustomFilterRestrict').setStyle('display', 'none');
                                 $('text{$.id}viewCustomFilterRestrict').setStyle('display', 'none');
@@ -211,7 +211,7 @@
                                 $('text{$.id}pathInputSelectTr').setStyle('display', 'none');
                                 $('text{$.id}pathInputSelectTr').setStyle('display', 'none');
                             }"/>作为默认过滤条件<br>
                             }"/>作为默认过滤条件<br>
                             <input type="radio" class="customFilterInput_vf" value="custom" name="text{$.id}viewFilterType" onclick="if (this.checked){
                             <input type="radio" class="customFilterInput_vf" value="custom" name="text{$.id}viewFilterType" onclick="if (this.checked){
-                                $('text{$.id}viewFilterRestrict').setStyle('display', 'none');
+                                $('text{$.id}viewParameterRestrict').setStyle('display', 'none');
                                 $('text{$.id}parameterInputTr').setStyle('display', 'none');
                                 $('text{$.id}parameterInputTr').setStyle('display', 'none');
                                 // $('text{$.id}parameterInputSelectTr').setStyle('display', 'none');
                                 // $('text{$.id}parameterInputSelectTr').setStyle('display', 'none');
                                 $('text{$.id}viewCustomFilterRestrict').setStyle('display', 'block');
                                 $('text{$.id}viewCustomFilterRestrict').setStyle('display', 'block');
@@ -221,32 +221,32 @@
                         </td>
                         </td>
                     </tr>
                     </tr>
                 </table>
                 </table>
-                 <div id="text{$.id}viewFilterRestrict"  style="display: none">
+                 <div id="text{$.id}viewParameterRestrict"  style="display: none">
                     <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                     <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                         <tr>
                         <tr>
-                            <td class="editTableTitle" id="text{$.id}viewFilterValueTitleArea">值:</td>
+                            <td class="editTableTitle" id="text{$.id}viewParameterValueTitleArea">值:</td>
 
 
                             <td class="editTableValue">
                             <td class="editTableValue">
-                                <input class="editTableRadio"  name="viewFilterValueType" type="radio" value="input" checked onclick="
+                                <input class="editTableRadio"  name="viewParameterValueType" type="radio" value="input" checked onclick="
                                     if (this.checked){
                                     if (this.checked){
-                                        $('text{$.id}viewFilterValueScriptDiv').setStyle('display', 'none');
-                                        $('text{$.id}viewFilterValueArea').setStyle('display', 'table-row');
-                                        $('text{$.id}viewFilterFormulaSelector').setStyle('display', 'block');
+                                        $('text{$.id}viewParameterValueScriptDiv').setStyle('display', 'none');
+                                        $('text{$.id}viewParameterValueArea').setStyle('display', 'table-row');
+                                        $('text{$.id}viewParameterFormulaSelector').setStyle('display', 'block');
                                     }
                                     }
                                 "/>输入
                                 "/>输入
-                                <input class="editTableRadio" name="viewFilterValueType" type="radio" value="script" onclick="
+                                <input class="editTableRadio" name="viewParameterValueType" type="radio" value="script" onclick="
                                     if (this.checked){
                                     if (this.checked){
-                                        $('text{$.id}viewFilterValueScriptDiv').setStyle('display', 'block');
-                                        $('text{$.id}viewFilterValueArea').setStyle('display', 'none');
-                                        $('text{$.id}viewFilterFormulaSelector').setStyle('display', 'none');
+                                        $('text{$.id}viewParameterValueScriptDiv').setStyle('display', 'block');
+                                        $('text{$.id}viewParameterValueArea').setStyle('display', 'none');
+                                        $('text{$.id}viewParameterFormulaSelector').setStyle('display', 'none');
                                     }
                                     }
                                 "/>脚本
                                 "/>脚本
                             </td>
                             </td>
                         </tr>
                         </tr>
-                        <tr id="text{$.id}viewFilterValueArea">
+                        <tr id="text{$.id}viewParameterValueArea">
                             <td class="editTableTitle"></td>
                             <td class="editTableTitle"></td>
                             <td class="editTableValue">
                             <td class="editTableValue">
-                                <input type="text" class="editTableInput valueTextInput_vf" style="display: block" onkeypress="$('text{$.id}viewFilterTextFormulaSelector').getElements('input').set('checked', false)"/>
+                                <input type="text" class="editTableInput valueTextInput_vf" style="display: block" onkeypress="$('text{$.id}viewParameterTextFormulaSelector').getElements('input').set('checked', false)"/>
                                 <input type="number" class="editTableInput valueNumberInput_vf" style="display: none"/>
                                 <input type="number" class="editTableInput valueNumberInput_vf" style="display: none"/>
                                 <input type="text" class="editTableInput valueDatetimeInput_vf" style="display: none" readonly/>
                                 <input type="text" class="editTableInput valueDatetimeInput_vf" style="display: none" readonly/>
                                 <input type="text" class="editTableInput valueDateInput_vf" style="display: none" readonly/>
                                 <input type="text" class="editTableInput valueDateInput_vf" style="display: none" readonly/>
@@ -259,62 +259,62 @@
                         </tr>
                         </tr>
 
 
                     </table>
                     </table>
-                     <div id="text{$.id}viewFilterFormulaSelector">
-                        <div style="display: none" id="text{$.id}viewFilterDateFormulaSelector">
+                     <div id="text{$.id}viewParameterFormulaSelector">
+                        <div style="display: none" id="text{$.id}viewParameterDateFormulaSelector">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                                 <tr>
                                 <tr>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableValue">
                                     <td class="editTableValue">
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@year" />当前年度
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@season" />当前季度
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@month" />当前月份<br/>
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@time" />当前时间
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@date" />当天
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@year" />当前年度
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@season" />当前季度
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@month" />当前月份<br/>
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@time" />当前时间
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDatetimeInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@date" />当天
 
 
                                     </td>
                                     </td>
                                 </tr>
                                 </tr>
                             </table>
                             </table>
                         </div>
                         </div>
-                        <div style="display: none" id="text{$.id}viewFilterDateOnlyFormulaSelector">
+                        <div style="display: none" id="text{$.id}viewParameterDateOnlyFormulaSelector">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                                 <tr>
                                 <tr>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableValue">
                                     <td class="editTableValue">
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@year" />当前年度
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@season" />当前季度
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@month" />当前月份<br/>
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@date" />当天
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@year" />当前年度
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@season" />当前季度
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@month" />当前月份<br/>
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueDateInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@date" />当天
 
 
                                     </td>
                                     </td>
                                 </tr>
                                 </tr>
                             </table>
                             </table>
                         </div>
                         </div>
-                        <div style="display: none" id="text{$.id}viewFilterTimeOnlyFormulaSelector">
+                        <div style="display: none" id="text{$.id}viewParameterTimeOnlyFormulaSelector">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                                 <tr>
                                 <tr>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableValue">
                                     <td class="editTableValue">
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueTimeInput_vf').set('value', this.value)" name="text{$.id}viewFilterDateFormula" type="radio" value="@time" />当前时间
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueTimeInput_vf').set('value', this.value)" name="text{$.id}viewParameterDateFormula" type="radio" value="@time" />当前时间
                                     </td>
                                     </td>
                                 </tr>
                                 </tr>
                             </table>
                             </table>
                         </div>
                         </div>
-                        <div style="display: block" id="text{$.id}viewFilterTextFormulaSelector">
+                        <div style="display: block" id="text{$.id}viewParameterTextFormulaSelector">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                             <table width="100%" border="0" cellpadding="5" cellspacing="0" class="editTable">
                                 <tr>
                                 <tr>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableTitle"></td>
                                     <td class="editTableValue">
                                     <td class="editTableValue">
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewFilterTextFormula" onclick="" type="radio" value="@person" />当前人
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewFilterTextFormula" type="radio" value="@identityList" />当前身份<br/>
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewFilterTextFormula" type="radio" value="@unitList" />当前人所在直接组织<br/>
-                                        <input onclick="$('text{$.id}viewFilterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewFilterTextFormula" type="radio" value="@unitAllList" />当前人所在所有组织
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewParameterTextFormula" onclick="" type="radio" value="@person" />当前人
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewParameterTextFormula" type="radio" value="@identityList" />当前身份<br/>
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewParameterTextFormula" type="radio" value="@unitList" />当前人所在直接组织<br/>
+                                        <input onclick="$('text{$.id}viewParameterValueArea').getElement('.valueTextInput_vf').set('value', this.value)" name="text{$.id}viewParameterTextFormula" type="radio" value="@unitAllList" />当前人所在所有组织
                                     </td>
                                     </td>
                                 </tr>
                                 </tr>
                             </table>
                             </table>
                         </div>
                         </div>
                      </div>
                      </div>
-                     <div style="display:none" id="text{$.id}viewFilterValueScriptDiv">
-                         <div name="text{$.id}viewFilterValueScript" title="脚本"></div>
+                     <div style="display:none" id="text{$.id}viewParameterValueScriptDiv">
+                         <div name="text{$.id}viewParameterValueScript" title="脚本"></div>
                      </div>
                      </div>
                 </div>
                 </div>
 
 

+ 80 - 74
o2web/source/x_component_query_StatementDesigner/widget/ViewFilter.js

@@ -50,13 +50,17 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         }
         }
     },
     },
     loadData: function () {
     loadData: function () {
+        if (this.filtrData.parameterData && this.filtrData.parameterData.length) {
+            this.filtrData.parameterData.each(function (data) {
+                data.type = "parameter";
+                this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemParameter(this, data));
+            }.bind(this));
+        }
+
         if (this.filtrData.filtrData && this.filtrData.filtrData.length) {
         if (this.filtrData.filtrData && this.filtrData.filtrData.length) {
             this.filtrData.filtrData.each(function (data) {
             this.filtrData.filtrData.each(function (data) {
-                if( this.options.withForm ){
-                    this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemWithForm(this, data));
-                }else{
-                    this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item(this, data));
-                }
+                data.type = "filter";
+                this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemFilter(this, data));
             }.bind(this));
             }.bind(this));
         }
         }
 
 
@@ -87,25 +91,25 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
             this.scriptArea.load(v);
             this.scriptArea.load(v);
         }.bind(this));
         }.bind(this));
     },
     },
-    createFilterValueScriptArea: function (node) {
+    createParameterValueScriptArea: function (node) {
         var title = node.get("title");
         var title = node.get("title");
 
 
         MWF.require("MWF.widget.ScriptArea", function () {
         MWF.require("MWF.widget.ScriptArea", function () {
-            this.filterValueScriptArea = new MWF.widget.ScriptArea(node, {
+            this.parameterValueScriptArea = new MWF.widget.ScriptArea(node, {
                 "title": title,
                 "title": title,
                 "isload": true,
                 "isload": true,
                 "isbind": false,
                 "isbind": false,
                 "maxObj": this.app.formContentNode || this.app.pageContentNode,
                 "maxObj": this.app.formContentNode || this.app.pageContentNode,
                 "onChange": function () {
                 "onChange": function () {
-                    this.filterValueScriptData = this.filterValueScriptArea.toJson();
+                    this.parameterValueScriptData = this.parameterValueScriptArea.toJson();
                 }.bind(this),
                 }.bind(this),
                 "onSave": function () {
                 "onSave": function () {
                     //this.app.saveForm();
                     //this.app.saveForm();
                 }.bind(this),
                 }.bind(this),
                 "style": "formula"
                 "style": "formula"
             });
             });
-            var v = (this.filterValueScriptData) ? this.filterValueScriptData.code : "";
-            this.filterValueScriptArea.load(v);
+            var v = (this.parameterValueScriptData) ? this.parameterValueScriptData.code : "";
+            this.parameterValueScriptArea.load(v);
         }.bind(this));
         }.bind(this));
     },
     },
     createCustomFilterValueScriptArea: function (node) {
     createCustomFilterValueScriptArea: function (node) {
@@ -151,7 +155,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         // this.parameterInputSelect = this.inputAreaNode.getElement(".parameterInputSelect_vf");
         // this.parameterInputSelect = this.inputAreaNode.getElement(".parameterInputSelect_vf");
         this.datatypeInput = this.inputAreaNode.getElement(".datatypeInput_vf");
         this.datatypeInput = this.inputAreaNode.getElement(".datatypeInput_vf");
 
 
-        this.restrictFilterInput = this.inputAreaNode.getElement(".restrictFilterInput_vf");
+        this.restrictParameterInput = this.inputAreaNode.getElement(".restrictParameterInput_vf");
         this.customFilterInput = this.inputAreaNode.getElement(".customFilterInput_vf");
         this.customFilterInput = this.inputAreaNode.getElement(".customFilterInput_vf");
 
 
         // this.logicInput = this.inputAreaNode.getElement(".logicInput_vf");
         // this.logicInput = this.inputAreaNode.getElement(".logicInput_vf");
@@ -171,11 +175,11 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         if (this.app.statement && this.app.statement.view) {
         if (this.app.statement && this.app.statement.view) {
             var dataId = this.app.statement.view.data.id;
             var dataId = this.app.statement.view.data.id;
 
 
-            this.filterValueType = this.inputAreaNode.getElements("[name='" + dataId + "viewFilterValueType']");
-            this.filterValueScriptDiv = this.inputAreaNode.getElement("#" + dataId + "viewFilterValueScriptDiv");
-            this.filterValueScript = this.inputAreaNode.getElement("[name='" + dataId + "viewFilterValueScript']");
-            if (this.filterValueScript) {
-                this.createFilterValueScriptArea(this.filterValueScript);
+            this.parameterValueType = this.inputAreaNode.getElements("[name='" + dataId + "viewParameterValueType']");
+            this.parameterValueScriptDiv = this.inputAreaNode.getElement("#" + dataId + "viewParameterValueScriptDiv");
+            this.parameterValueScript = this.inputAreaNode.getElement("[name='" + dataId + "viewParameterValueScript']");
+            if (this.parameterValueScript) {
+                this.createParameterValueScriptArea(this.parameterValueScript);
             }
             }
 
 
             this.customFilterValueTypes = this.inputAreaNode.getElements("[name='" + dataId + "viewCustomFilterValueType']");
             this.customFilterValueTypes = this.inputAreaNode.getElements("[name='" + dataId + "viewCustomFilterValueType']");
@@ -194,7 +198,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
                 "target": this.app.content,
                 "target": this.app.content,
                 "format": "db",
                 "format": "db",
                 "onComplate": function () {
                 "onComplate": function () {
-                    this.node.getElement("#" + id + "viewFilterDateFormulaSelector").getElements("input").set("checked", false);
+                    this.node.getElement("#" + id + "viewParameterDateFormulaSelector").getElements("input").set("checked", false);
                 }.bind(this)
                 }.bind(this)
             });
             });
             new MWF.widget.Calendar(this.valueDateInput, {
             new MWF.widget.Calendar(this.valueDateInput, {
@@ -302,7 +306,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
 
 
         //if (this.app.statement.view){
         //if (this.app.statement.view){
         //    var id = this.app.view.data.id;
         //    var id = this.app.view.data.id;
-        //     var div = this.node.getElement("#"+id+"viewFilterValueArea2");
+        //     var div = this.node.getElement("#"+id+"viewParameterValueArea2");
         //     // inputs = div.getElements("input");
         //     // inputs = div.getElements("input");
         //     if( div ){
         //     if( div ){
         //this.valueTextInput2 = div.getElement(".valueTextInput2_vf") || null;
         //this.valueTextInput2 = div.getElement(".valueTextInput2_vf") || null;
@@ -320,7 +324,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         //        "target": this.app.content,
         //        "target": this.app.content,
         //        "format": "db",
         //        "format": "db",
         //        "onComplate": function(){
         //        "onComplate": function(){
-        //            this.node.getElement("#"+id+"viewFilterDateFormulaSelector2").getElements("input").set("checked", false);
+        //            this.node.getElement("#"+id+"viewParameterDateFormulaSelector2").getElements("input").set("checked", false);
         //        }.bind(this)
         //        }.bind(this)
         //    });
         //    });
         //    new MWF.widget.Calendar(this.valueDateInput2, {
         //    new MWF.widget.Calendar(this.valueDateInput2, {
@@ -411,23 +415,23 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
             }
             }
             var config = {
             var config = {
                 "textValue": {
                 "textValue": {
-                    "selectorArea": "#" + id + "viewFilterTextFormulaSelector",
+                    "selectorArea": "#" + id + "viewParameterTextFormulaSelector",
                     "input": this.valueTextInput
                     "input": this.valueTextInput
                 },
                 },
                 "datetimeValue": {
                 "datetimeValue": {
-                    "selectorArea": "#" + id + "viewFilterDateFormulaSelector",
+                    "selectorArea": "#" + id + "viewParameterDateFormulaSelector",
                     "input": this.valueDatetimeInput
                     "input": this.valueDatetimeInput
                 },
                 },
                 "dateTimeValue": {
                 "dateTimeValue": {
-                    "selectorArea": "#" + id + "viewFilterDateFormulaSelector",
+                    "selectorArea": "#" + id + "viewParameterDateFormulaSelector",
                     "input": this.valueDatetimeInput
                     "input": this.valueDatetimeInput
                 },
                 },
                 "dateValue": {
                 "dateValue": {
-                    "selectorArea": "#" + id + "viewFilterDateOnlyFormulaSelector",
+                    "selectorArea": "#" + id + "viewParameterDateOnlyFormulaSelector",
                     "input": this.valueDateInput
                     "input": this.valueDateInput
                 },
                 },
                 "timeValue": {
                 "timeValue": {
-                    "selectorArea": "#" + id + "viewFilterTimeOnlyFormulaSelector",
+                    "selectorArea": "#" + id + "viewParameterTimeOnlyFormulaSelector",
                     "input": this.valueTimeInput
                     "input": this.valueTimeInput
                 },
                 },
                 "numberValue": {
                 "numberValue": {
@@ -439,10 +443,10 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
             };
             };
 
 
             var formulaSelectorIdList = [
             var formulaSelectorIdList = [
-                "#" + id + "viewFilterTextFormulaSelector",
-                "#" + id + "viewFilterDateFormulaSelector",
-                "#" + id + "viewFilterDateOnlyFormulaSelector",
-                "#" + id + "viewFilterTimeOnlyFormulaSelector"
+                "#" + id + "viewParameterTextFormulaSelector",
+                "#" + id + "viewParameterDateFormulaSelector",
+                "#" + id + "viewParameterDateOnlyFormulaSelector",
+                "#" + id + "viewParameterTimeOnlyFormulaSelector"
             ];
             ];
 
 
             var inputList = [
             var inputList = [
@@ -516,13 +520,13 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
     },
     },
     modifyOrAddFilterItem: function () {
     modifyOrAddFilterItem: function () {
         var flag;
         var flag;
-        if (this.currentFilterItem) {
+        if (this.currentItem) {
             flag = this.modifyFilterItem();
             flag = this.modifyFilterItem();
         } else {
         } else {
             if( this.options.withForm ){
             if( this.options.withForm ){
                 flag = this.addFilterItemWithForm();
                 flag = this.addFilterItemWithForm();
-            }else if (this.restrictFilterInput.checked) {
-                flag = this.addFilterItem();
+            }else if (this.restrictParameterInput.checked) {
+                flag = this.addParameterItem();
             } else {
             } else {
                 flag = this.addCustomFilterItem();
                 flag = this.addCustomFilterItem();
             }
             }
@@ -533,7 +537,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
                 "path": "",
                 "path": "",
                 "parameter" : "",
                 "parameter" : "",
                 "title": "",
                 "title": "",
-                "type": this.restrictFilterInput.checked ? "restrict" : "custom",
+                "type": this.restrictParameterInput.checked ? "parameter" : "custom",
                 "comparison": "equals",
                 "comparison": "equals",
                 "formatType": "textValue",
                 "formatType": "textValue",
                 "value": "",
                 "value": "",
@@ -546,32 +550,32 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         var data = this.getInputData();
         var data = this.getInputData();
         if( this.options.withForm ){
         if( this.options.withForm ){
             if (this.verificationDataWithForm(data)) {
             if (this.verificationDataWithForm(data)) {
-                this.currentFilterItem.reload(data);
-                this.currentFilterItem.unSelected();
+                this.currentItem.reload(data);
+                this.currentItem.unSelected();
                 this.fireEvent("change");
                 this.fireEvent("change");
                 return true;
                 return true;
             }
             }
-        }else if( this.restrictFilterInput.checked ){
+        }else if( this.restrictParameterInput.checked ){
             if (this.verificationData(data)) {
             if (this.verificationData(data)) {
-                this.currentFilterItem.reload(data);
-                this.currentFilterItem.unSelected();
+                this.currentItem.reload(data);
+                this.currentItem.unSelected();
                 this.fireEvent("change");
                 this.fireEvent("change");
                 return true;
                 return true;
             }
             }
         }else{
         }else{
             if (this.verificationDataCustom(data)) {
             if (this.verificationDataCustom(data)) {
-                this.currentFilterItem.reload(data);
-                this.currentFilterItem.unSelected();
+                this.currentItem.reload(data);
+                this.currentItem.unSelected();
                 this.fireEvent("change");
                 this.fireEvent("change");
                 return true;
                 return true;
             }
             }
         }
         }
         return false;
         return false;
     },
     },
-    addFilterItem: function () {
+    addParameterItem: function () {
         var data = this.getInputData();
         var data = this.getInputData();
         if (this.verificationData(data)) {
         if (this.verificationData(data)) {
-            this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item(this, data));
+            this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemParameter(this, data));
             this.fireEvent("change");
             this.fireEvent("change");
             return true;
             return true;
         }
         }
@@ -586,10 +590,10 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         }
         }
         return false;
         return false;
     },
     },
-    addFilterItemWithForm : function(){
+    addFilterItem : function(){
         var data = this.getInputData();
         var data = this.getInputData();
         if (this.verificationDataWithForm(data)) {
         if (this.verificationDataWithForm(data)) {
-            this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemWithForm(this, data));
+            this.items.push(new MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemFilter(this, data));
             this.fireEvent("change");
             this.fireEvent("change");
             return true;
             return true;
         }
         }
@@ -746,7 +750,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
         var parameter = this.parameterInput ? this.parameterInput.get("value") : "";
         var parameter = this.parameterInput ? this.parameterInput.get("value") : "";
 
 
         var title = this.titleInput.get("value");
         var title = this.titleInput.get("value");
-        if (this.restrictFilterInput.checked) var type = "restrict";
+        if (this.restrictParameterInput.checked) var type = "parameter";
         if (this.customFilterInput.checked) var type = "custom";
         if (this.customFilterInput.checked) var type = "custom";
 
 
         // var comparison = this.comparisonInput.options[this.comparisonInput.selectedIndex].value;
         // var comparison = this.comparisonInput.options[this.comparisonInput.selectedIndex].value;
@@ -808,8 +812,8 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
                 "otherValue": value2,
                 "otherValue": value2,
                 "code": this.scriptData
                 "code": this.scriptData
             };
             };
-        }else if (type === "restrict") {
-            this.filterValueType.each(function (radio) {
+        }else if (type === "parameter") {
+            this.parameterValueType.each(function (radio) {
                 if (radio.get("checked")) valueType = radio.get("value");
                 if (radio.get("checked")) valueType = radio.get("value");
             });
             });
             return {
             return {
@@ -823,7 +827,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
                 //"otherValue": value2,
                 //"otherValue": value2,
                 "code": this.scriptData,
                 "code": this.scriptData,
                 "valueType": valueType,
                 "valueType": valueType,
-                "valueScript": this.filterValueScriptData
+                "valueScript": this.parameterValueScriptData
             };
             };
         } else {
         } else {
             var valueType = "";
             var valueType = "";
@@ -971,23 +975,23 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
                 }
                 }
             }
             }
 
 
-            if (data.type === "restrict") {
-                this.filterValueType.each(function (radio) {
+            if (data.type === "parameter") {
+                this.parameterValueType.each(function (radio) {
                     if (data.valueType) {
                     if (data.valueType) {
                         if (data.valueType === radio.get("value")) radio.set("checked", true);
                         if (data.valueType === radio.get("value")) radio.set("checked", true);
                     } else {
                     } else {
                         if ("input" === radio.get("value")) radio.set("checked", true);
                         if ("input" === radio.get("value")) radio.set("checked", true);
                     }
                     }
                 });
                 });
-                if (this.filterValueScriptArea) {
+                if (this.parameterValueScriptArea) {
                     if (!data.valueType || data.valueType === "input") {
                     if (!data.valueType || data.valueType === "input") {
-                        this.filterValueScriptDiv.hide();
-                        this.filterValueScriptData = "";
-                        this.filterValueScriptArea.editor.setValue("");
+                        this.parameterValueScriptDiv.hide();
+                        this.parameterValueScriptData = "";
+                        this.parameterValueScriptArea.editor.setValue("");
                     } else {
                     } else {
-                        this.filterValueScriptDiv.show();
-                        this.filterValueScriptData = data.valueScript;
-                        this.filterValueScriptArea.editor.setValue(data.valueScript ? data.valueScript.code : "");
+                        this.parameterValueScriptDiv.show();
+                        this.parameterValueScriptData = data.valueScript;
+                        this.parameterValueScriptArea.editor.setValue(data.valueScript ? data.valueScript.code : "");
                     }
                     }
                 }
                 }
             }
             }
@@ -1000,27 +1004,30 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter = new Class({
     },
     },
 
 
     deleteItem: function (item) {
     deleteItem: function (item) {
-        if (this.currentFilterItem == item) item.unSelected();
+        if (this.currentItem == item) item.unSelected();
         this.items.erase(item);
         this.items.erase(item);
         item.node.destroy();
         item.node.destroy();
         MWF.release(item);
         MWF.release(item);
         this.fireEvent("change");
         this.fireEvent("change");
     },
     },
     getData: function () {
     getData: function () {
-        var data = [];
+        var parameterData = [];
         var customData = [];
         var customData = [];
+        var filterData = [];
         this.items.each(function (item) {
         this.items.each(function (item) {
             if (item.data.type === "custom") {
             if (item.data.type === "custom") {
                 customData.push(item.data);
                 customData.push(item.data);
+            }else if (item.data.type === "filter") {
+                filterData.push(item.data);
             } else {
             } else {
-                data.push(item.data);
+                parameterData.push(item.data);
             }
             }
         }.bind(this));
         }.bind(this));
-        return {"data": data, "customData": customData};
+        return {"parameterData": parameterData, "customData": customData, "filterData" : filterData };
     }
     }
 });
 });
 
 
-MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item = new Class({
+MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemParameter = new Class({
     Implements: [Events],
     Implements: [Events],
     initialize: function (filter, data) {
     initialize: function (filter, data) {
         this.filter = filter;
         this.filter = filter;
@@ -1062,17 +1069,16 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item = new Class({
             this.filter.verificationNode = null;
             this.filter.verificationNode = null;
             this.filter.parameterInput.setStyle("background-color", "#FFF");
             this.filter.parameterInput.setStyle("background-color", "#FFF");
         }
         }
-        this.filter.restrictFilterInput.set("checked", true);
-        this.filter.restrictFilterInput.click();
-        if (this.filter.currentFilterItem) this.filter.currentFilterItem.unSelected();
+        this.filter.restrictParameterInput.set("checked", true);
+        this.filter.restrictParameterInput.click();
+        if (this.filter.currentItem) this.filter.currentItem.unSelected();
         this.node.setStyles(this.css.itemNode_current);
         this.node.setStyles(this.css.itemNode_current);
-        this.filter.currentFilterItem = this;
+        this.filter.currentItem = this;
         this.filter.setData(this.data);
         this.filter.setData(this.data);
     },
     },
     unSelected: function () {
     unSelected: function () {
         this.node.setStyles(this.css.itemNode);
         this.node.setStyles(this.css.itemNode);
-        this.filter.currentFilterItem = null;
-        this.filter.currentItem = this;
+        this.filter.currentItem = null;
     },
     },
     deleteItem: function (e) {
     deleteItem: function (e) {
         var _self = this;
         var _self = this;
@@ -1089,7 +1095,7 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item = new Class({
 });
 });
 
 
 MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemCustom = new Class({
 MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemCustom = new Class({
-    Extends: MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item,
+    Extends: MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemParameter,
     initialize: function (filter, data) {
     initialize: function (filter, data) {
         this.filter = filter;
         this.filter = filter;
         this.data = data;
         this.data = data;
@@ -1106,9 +1112,9 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemCustom = new Clas
         }
         }
          this.filter.customFilterInput.set("checked", true);
          this.filter.customFilterInput.set("checked", true);
          this.filter.customFilterInput.click();
          this.filter.customFilterInput.click();
-        if (this.filter.currentFilterItem) this.filter.currentFilterItem.unSelected();
+        if (this.filter.currentItem) this.filter.currentItem.unSelected();
         this.node.setStyles(this.css.itemNode_current);
         this.node.setStyles(this.css.itemNode_current);
-        this.filter.currentFilterItem = this;
+        this.filter.currentItem = this;
         this.filter.setData(this.data);
         this.filter.setData(this.data);
     },
     },
     getText: function () {
     getText: function () {
@@ -1117,8 +1123,8 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemCustom = new Clas
     },
     },
 });
 });
 
 
-MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemWithForm = new Class({
-    Extends: MWF.xApplication.query.StatementDesigner.widget.ViewFilter.Item,
+MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemFilter = new Class({
+    Extends: MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemParameter,
     initialize: function (filter, data) {
     initialize: function (filter, data) {
         this.filter = filter;
         this.filter = filter;
         this.data = data;
         this.data = data;
@@ -1135,9 +1141,9 @@ MWF.xApplication.query.StatementDesigner.widget.ViewFilter.ItemWithForm = new Cl
         }
         }
         // this.filter.customFilterInput.set("checked", true);
         // this.filter.customFilterInput.set("checked", true);
         // this.filter.customFilterInput.click();
         // this.filter.customFilterInput.click();
-        if (this.filter.currentFilterItem) this.filter.currentFilterItem.unSelected();
+        if (this.filter.currentItem) this.filter.currentItem.unSelected();
         this.node.setStyles(this.css.itemNode_current);
         this.node.setStyles(this.css.itemNode_current);
-        this.filter.currentFilterItem = this;
+        this.filter.currentItem = this;
         this.filter.setData(this.data);
         this.filter.setData(this.data);
     },
     },
     getText: function () {
     getText: function () {