jQWidgets Forums

jQuery UI Widgets Forums Grid getcolumnaggregateddata

This topic contains 8 replies, has 2 voices, and was last updated by  Dimitar 12 years, 4 months ago.

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
  • getcolumnaggregateddata #12128

    detberlin
    Participant

    hi,

    mein Problem ist das ich nicht das Aggregat Sum auswerten kann.

    ich versuche mit folgender schreibweise die daten aus dem aggregate footer des grids

    das einzelne columnaggregat Sum auszulesen und es einem Div zu übergeben.

    var summaryData = $("#jqxGrid").jqxGrid('getcolumnaggregateddata', 'wMwst1', ['sum']);
    $('#idOffen').html(summaryData);

    kann mir jemand sagen was ich hier verkehrt mache?

    getcolumnaggregateddata #12129

    detberlin
    Participant

    hi,

    My problem is that I can evaluate not the aggregate sum. I try from the aggregate the data in the footer of the grid with the following spelling the individual columnaggregat to read sum and pass it a div

    var summaryData = $("#jqxGrid").jqxGrid('getcolumnaggregateddata', 'wMwst1', ['sum']);
    $('#idOffen').html(summaryData);

    can anyone tell me what I’m doing wrong here?

    getcolumnaggregateddata #12143

    Dimitar
    Participant

    Hello detberlin,

    Could you, please, post a bigger code snippet so that we may be able to find the source of the issue?

    Best Regards,
    Dimitar

    jQWidgets team
    http://www.jqwidgets.com/

    getcolumnaggregateddata #12160

    detberlin
    Participant

    ok…

    I would like to know how I can read out the sum

    and how can I pass a div

    getcolumnaggregateddata #12166

    detberlin
    Participant

    i use jquery-1.8.2 and jqwidgets-ver2.5.5

    $(document).ready(function () {data='';// my comment// prepare the datavar source ={localdata: data,                datatype: "array",updaterow: function (rowid, rowdata) {// synchronize with the server - send update command}};var dataAdapter = new $.jqx.dataAdapter(source);// initialize jqxGrid            $("#jqxgrid").jqxGrid({width: 680,source: dataAdapter,showstatusbar: true,statusbarheight: 50,editable: true,showaggregates: true,                selectionmode: 'singlecell',columns: [{                      text: 'First Name', columntype: 'textbox', datafield: 'firstname', width: 90,aggregatesrenderer: function (aggregates, column, element) {                          var renderstring = "<div style='float: left;width: 100%;height: 100%' />";return renderstring;}},{                      text: 'Last Name', datafield: 'lastname', columntype: 'textbox', width: 90,aggregatesrenderer: function (aggregates, column, element) {                          var renderstring = "<div style='float: left;width: 100%;height: 100%' />";return renderstring;}},{                      text: 'Product', datafield: 'productname', width: 170,aggregatesrenderer: function (aggregates, column, element) {                          var renderstring = "<div style='float: left;width: 100%;height: 100%' />";return renderstring;}},                  { text: 'Quantity', datafield: 'quantity', width: 85, cellsalign: 'right', cellsformat: 'n2', aggregates: ['min', 'max'],aggregatesrenderer: function (aggregates, column, element) {                          var renderstring = "<div style='float: left;width: 100%;height: 100%'>";$.each(aggregates, function (key, value) {                              var name = key == 'min' ? 'Min' : 'Max';                              var color = key == 'max' ? 'green' : 'red';                              renderstring += '<div style="color: ' + color + ';margin: 6px;text-align: right;overflow: hidden">' + name + ': ' + value + '</div>';});                          renderstring += "</div>";return renderstring;}},                  { text: 'Price', datafield: 'price', cellsalign: 'right', cellsformat: 'c2', aggregates: ['sum', 'avg'],aggregatesrenderer: function (aggregates, column, element, summaryData) {                          var renderstring = "<div style='float: left;width: 100%;height: 100%'>";$.each(aggregates, function (key, value) {                              var name = key == 'sum' ? 'Sum' : 'Avg';                              var color = 'green';                              if (key == 'sum' &amp;&amp; summaryData['sum'] &lt; 650) {                                  color = 'red';}                              if (key == 'avg' &amp;&amp; summaryData['avg'] &lt; 4) {                                  color = 'red';}                              renderstring += '<div style="color: ' + color + ';margin: 6px;text-align: right;overflow: hidden">' + name + ': ' + value + '</div>';});                          renderstring += "</div>";return renderstring;}}]});});

    my declaration

    <link rel="stylesheet" href="index.css" type="text/css">
    <link rel="stylesheet" href="moduljqx/jqx.base.css" type="text/css">
    <link rel="stylesheet" href="moduljqx/jqx.energyblue.css" type="text/css">
    <link rel="stylesheet" href="moduljqx/mydarkblue.css" type="text/css">
    <script type="text/javascript" src="moduljqx/jquery-1.8.2.min.js"></script>
    <script type="text/javascript" src="moduljqx/jqxcore.js"></script>
    <script type="text/javascript" src="moduljqx/jqxdata.js"></script>
    <script type="text/javascript" src="moduljqx/jqxgrid.js"></script>
    <script type="text/javascript" src="moduljqx/jqxgrid.edit.js"></script>
    <script type="text/javascript" src="moduljqx/jqxscrollbar.js"></script>
    <script type="text/javascript" src="moduljqx/jqxgrid.selection.js"></script>
    <script type="text/javascript" src="moduljqx/jqxlistbox.js"></script>
    <script type="text/javascript" src="moduljqx/jqxdropdownlist.js"></script>
    <script type="text/javascript" src="moduljqx/jqxbuttons.js"></script>
    <script type="text/javascript" src="moduljqx/jqxpanel.js"></script>
    <script type="text/javascript" src="moduljqx/jqxcheckbox.js"></script>
    <script type="text/javascript" src="moduljqx/jqxradiobutton.js"></script>
    <script type="text/javascript" src="moduljqx/jqxwindow.js"></script>
    <script type="text/javascript" src="moduljqx/jqxvalidator.js"></script>
    <script type="text/javascript" src="moduljqx/jqxgrid.aggregates.js"></script>
    <script type="text/javascript" src="wconfigs.js"></script>
    <script type="text/javascript" src="xangebot.js"></script>
    getcolumnaggregateddata #12172

    detberlin
    Participant

    here my code for the Grid…

    function zeigeWarenkorb(){
    var warenkorbArray = new Array(); var warenkorbSource = new $.jqx.dataAdapter({localdata:warenkorbArray, datatype:"array"});
    var cellTxt = function (row, datafield, value) {return '<div class="wbCellen1">' + value + '</div>';}
    var cellDel = function (id){return '<div style="background:#fff; width:100%; height:100%;">' +
    '<img onClick="warenkorbDeleteItem(id)" id="' + id + '" src="bilder/optwaren.png" style="position:absolute; left:6px; top:4px;"></div>'}
    $('#warenGrid').jqxGrid({width:350, height:594, rowsheight:22, verticalscrollbarstep:22, source:warenkorbSource, enableanimations:false,
    columnsresize:false, showemptyrow:false, showheader:false, theme:'energyblue', showstatusbar:true, statusbarheight:30, showaggregates:true,
    columns:[
    {datafield:'X', width:25, cellsrenderer:cellDel},
    {datafield:'wStuck', width:25, cellsalign:'right'},
    {datafield:'wWaren', width:210, cellsrenderer:cellTxt},
    {text:'wPreis',datafield:'wPreis', cellsformat:'c2', cellsalign:'right'},
    {datafield:'wMwSt1', cellsformat:'f2', hidden:true, aggregates:['sum']},
    {datafield:'wMwSt2', cellsformat:'f2', hidden:true},
    {datafield:'wIndex', hidden:true},
    {datafield:'wGutid', hidden:true}]});
    var warenlocalize = {}; warenlocalize.currencysymbol = " €"; warenlocalize.currencysymbolposition = "after";
    warenlocalize.decimalseparator = ","; warenlocalize.thousandsseparator = "."; $('#warenGrid').jqxGrid('localizestrings', warenlocalize);
    }
    //----------------------------------------------------------------------------------------------------------------------------
    function warenkorbDeleteItem(id){
    var wSumme = $('#warenGrid').jqxGrid('getcellvalue', id, 'wPreis'); berechneWarenkorb(-wSumme); $('#warenGrid').jqxGrid('deleterow',id);
    }

    and now ….

    I would like to now pass the value of aggregate sum to another window in a

    i hope you understand me

    getcolumnaggregateddata #12229

    Dimitar
    Participant

    Hi detberlin,

    Here is what you should do:

                var summaryData = $('#warenGrid').jqxGrid('getcolumnaggregateddata', 'wMwSt1', ['sum']);
    $('#idOffen').html(summaryData.sum);

    Best Regards,
    Dimitar

    jQWidgets team
    http://www.jqwidgets.com/

    getcolumnaggregateddata #12244

    detberlin
    Participant

    hi Dimitar,

    it works……

    but I can also have a set default value?

    when the grid is empty I want to put the aggregate sum to 0.00

    getcolumnaggregateddata #12283

    Dimitar
    Participant

    Hi detberlin,

    You can do the following (sample based on the Aggregates Renderer demo):

                      { text: 'Price', datafield: 'price', cellsalign: 'right', cellsformat: 'c2', aggregates: ['sum', 'avg'],
    aggregatesrenderer: function (aggregates, column, element, summaryData) {
    var renderstring = "<div class='jqx-widget-content jqx-widget-content-" + theme + "' style='float: left; width: 100%; height: 100%;'>";
    $.each(aggregates, function (key, value) {
    var name = key == 'sum' ? 'Sum' : 'Avg';
    var color = 'green';
    if (key == 'sum' && summaryData['sum'] < 650) {
    color = 'red';
    }
    if (key == 'avg' && summaryData['avg'] < 4) {
    color = 'red';
    }
    renderstring += '<div style="color: ' + color + '; position: relative; margin: 6px; text-align: right; overflow: hidden;">' + name + ': ' + value + '</div>';
    });
    renderstring += "</div>";
    var rowCount = $("#jqxgrid").jqxGrid('getrows');
    var zero = 0;
    if (rowCount.length == 0) {
    return zero.toFixed(2);
    } else {
    return renderstring;
    };
    }
    }

    Best Regards,
    Dimitar

    jQWidgets team
    http://www.jqwidgets.com/

Viewing 9 posts - 1 through 9 (of 9 total)

You must be logged in to reply to this topic.