diff --git a/gulliver/js/grid/core/grid.js b/gulliver/js/grid/core/grid.js index 8e661d2fe..165f66a69 100755 --- a/gulliver/js/grid/core/grid.js +++ b/gulliver/js/grid/core/grid.js @@ -942,6 +942,9 @@ var G_Grid = function(oForm, sGridName){ this.clearRowWC = function (oObj, aRow) { var i = 0; + var j = 0; + var iAux = 0; + var pmLabel = ''; var elemNodeName = ''; var objects = ''; for (i = 1; i < oObj.oGrid.rows[1].cells.length; i++) { @@ -957,9 +960,31 @@ var G_Grid = function(oForm, sGridName){ fieldSuggest = (objects[0].id).substring(0, (objects[0].id).length-7) + "]"; if ( document.getElementById(fieldSuggest) != null) { document.getElementById(fieldSuggest).value = ''; - oObj.aElements[i-1].updateDepententFields(); } } + if (oObj.aFunctions.length>0) { + pmLabel = ''; + for (iAux = 0; iAux <= objects[0].attributes.length - 1; iAux++) { + if ( objects[0].attributes[iAux].name == "pm:label" ) { + pmLabel = objects[0].attributes[iAux].nodeValue; + break; + } + } + for (j = 0; j < oObj.aFunctions.length; j++) { + if ( pmLabel != '' && pmLabel == oObj.aFunctions[j].sFieldName) { + switch (oObj.aFunctions[j].sFunction) { + case "sum": + oObj.sum(false, document.getElementById(objects[0].id)); + break; + case "avg": + oObj.avg(false, document.getElementById(objects[0].id)); + break; + } + break; + } + } + } + oObj.aElements[i-1].updateDepententFields(); break; case "select": objects = oCell1.getElementsByTagName("select"); @@ -975,7 +1000,6 @@ var G_Grid = function(oForm, sGridName){ } } }; - /////////////////////////////////////////////////////////////////////////////////// this.assignFunctions = function (aFields, sEvent, iRow) diff --git a/gulliver/js/maborak/core/maborak.js b/gulliver/js/maborak/core/maborak.js index 187ae21f1..4e369bfc0 100644 --- a/gulliver/js/maborak/core/maborak.js +++ b/gulliver/js/maborak/core/maborak.js @@ -1410,8 +1410,11 @@ iRowAux++;} this.oGrid.deleteRow(lastItem);for(i=0;i<=this.aFields.length-1;i++){this.aElements.pop();} var elem;if(oObj.aFunctions.length>0){for(i=0;i<=oObj.aFunctions.length-1;i++){elem=document.getElementById("form["+oObj.sGridName+"][1]["+oObj.aFunctions[i].sFieldName+"]");if(elem){switch(oObj.aFunctions[i].sFunction){case"sum":oObj.sum(false,elem);break;case"avg":oObj.avg(false,elem);break;}}}} if(oObj.ondeleterow){oObj.ondeleterow(iRow);}};this.clearRowWC=function(oObj,aRow) -{var i=0;var elemNodeName='';var objects='';for(i=1;i0){pmLabel='';for(iAux=0;iAux<=objects[0].attributes.length-1;iAux++){if(objects[0].attributes[iAux].name=="pm:label"){pmLabel=objects[0].attributes[iAux].nodeValue;break;}} +for(j=0;j